红队攻防之隐匿真实IP

0x01 前言

安全态势日益严峻,各大组织普遍采用了综合的安全产品,如态势感知系统、WAF和硬件防火墙等,这些措施加大了渗透测试和攻防演练的难度。即使是一些基本的漏洞验证、端口扫描,也可能导致测试IP被限制,从而阻碍了测试工作。更进一步,通过IP追踪,测试者可能会被追溯到其真实身份。在某些情况下,测试过程中可能会接到来自XXX省应急响应中心的电话,或者收到某些云服务供应商的警告通知甚至封号。本文将从实战的角度,介绍如何在渗透、攻防中通过各种方式绕过安全产品拦截以及避免安全人员溯源。

0x02 匿名绕过场景

  • 态势感知系统实时监测
  • 防火墙封禁绕过
  • CC拦截绕过
  • 攻击溯源隐藏身份
  • 漏洞扫描隐藏IP
  • 端口扫描隐藏IP
  • C2回连隐藏IP
  • ......

0x03 现状分析

从防守和运维的角度来看,使用安全设备来监测并响应告警是安全运营人员日常操作的一部分。一旦发生端口扫描、漏洞探测、Web攻击等告警时运营人员会第一时间封锁攻击源IP,以终止潜在威胁,这种快速响应有助于阻止潜在攻击者的进一步行动。鉴于运营人员会根据安全设备(如探针、态势感知和WAF等)上的告警信息来采取封禁、溯源或者上报网警等一系列措施,安全测试人员需要采取一些策略来减轻封禁、溯源对测试的影响。一种方法是更改测试IP,人工慢速测试,减缓IP被封锁速度。另一种方法是实现快速扫描,每次请求后更换IP,这样即使运营人员封锁了某个IP,对渗透测试的影响也会降到最低。此外,为避免被运营人员、蓝队成员溯源,测试人员所使用的服务器、流量卡等设备也应保证匿名性,避免被溯源导致的失分。

0x04 奇淫巧计

1. 物联网卡+移动WIFI设备

在手工测试场景中,使用物联网卡并将其安装在USB移动WiFi设备上,是一种用于红队测试的常见方法。当进行攻击测试时,如果安全设备检测到了攻击性payload并封禁了相关测试IP,红队成员可以通过简单地插拔USB设备来重启,从而切换到新的IP地址。

这种方法的优势在于,通过物联网卡和USB移动WiFi设备,红队成员可以维护匿名性。此外,当IP被封禁时,可以通过重新启动来迅速更换IP地址,以继续测试工作,而无需等待封禁解除。

2. 云函数

 云函数(SCF)是云服务供应商提供的无服务器执行环境,能对外发送数据包。它可通过 API 网关触发器进行触发,先接受来自客户端的数据,再利用其多IP出口的特性将请求随机转发出去,这样一来就达到了代理的效果。

实战中可利用云服务供应商如阿里云、腾讯云和AWS等提供的云函数服务,通过在线编辑服务器端的代码以及配置API网关触发器,从而轻松地在一台虚拟专用服务器(VPS)上启动HTTP[S]或SOCKS代理服务。这个代理服务的出口在云服务提供商的多个地区,因此可以实现请求一次就切换IP地址的效果。

这种方式的优势在于无需复杂的手动配置和部署流程即可实现IP一次一换的代理效果,且这样配置更换IP有助于维护匿名性或绕过封锁场景。

3. 自建代理池+隧道代理

借助数据库,如Redis等,我们可以存储从各大代理网站爬取到的免费http[s]/socks代理IP:Prot。随后,通过自定义的质检程序,我们可以对这些代理进行可用性及网速判断。最后,我们构建隧道代理,通过转发服务实现对扫描IP的一次一换,以确保高效的扫描操作。

这个流程包括以下步骤:

    1. 代理抓取: 我们从多个网站爬取免费代理IP,并将其存储在数据库中,以便后续使用。
    2. 质检程序: 我们开发了自定义的质检程序,用于验证代理的可用性。这包括检查代理的连通性、响应时间、成功率以及其他相关参数。
    3. 代理评分和删除: 初次存储和使用过的代理IP经过我们自定义的质检程序进行评分。如果代理的分数低于设定的阈值,它将被自动删除,以确保只有高质量的代理被保留在数据库中。
    4. 转发服务:配置隧道代理,请求入口统一,出口IP根据自定义规则随机从代理池中取出作为代理被使用。

这套方案可以帮助安全人员轻松地获取可用的代理IP,同时通过质检和评分机制,确保只有高性能和稳定的代理被提供给用户。而且所用代理爬取自各大代理服务商所公示的免费代理,这样不仅保障了匿名性也提高了扫描效率。

4. 机场节点+clash.meta+隧道代理

机场作为翻墙常用的节点,不仅能帮助用户绕过网络封锁(GFW)来访问国外资源,还在安全工作中提供了代理服务,帮助用户绕过目标网络的限制。然而,常用节点订阅工具v2rayN的默认设置是一个本地入口(通常使用端口10808)仅对应一个VMess或其他加密协议节点出口,这可能带来一定的限制。

尽管v2rayN内核本身支持多入口和多出口,但需要手动编写繁琐的配置文件,这对于用户而言可能不够便捷。此时,我们可引入了clash.meta,这是原版clash的一个分支,它提供了一种简单的解决方案,能够轻松实现v2rayN多入口多出口的配置需求。使用clash.meta,我们可以将机场中的各种协议节点转换为本地的socks节点。这使得每个本地端口都可以对应一个外部机场节点,从而实现多入口对应多出口的配置。而且,不同于上一种方案中爬取免费代理自建代理池,这里花费极少代价使用机场节点构建的socks代理池更加的稳定可靠。

最后,我们可以配置隧道代理服务,使内部工具或环境只需配置一个简单的ip:port,就能够随时在多个机场节点之间切换出口IP。这样不仅确保了用户的匿名性,还能够帮助用户绕过目标网络的限制策略。

5. TOR服务

Tor 是一个虚拟隧道网络,用于提高互联网用户的隐私和安全。其原理在于通过 Tor 网络内的三个随机服务器(也称节点)发送用户流量。线路中的最后一个中继(即“出口节点”)将流量发送到公共互联网。

Windows上使用的Tor浏览器即采用上述网络结构,可以使通信数据通过多个中继节点传递,且Tor会对通信来源进行加密,在这个过程中保障了用户的隐私和匿名性,最终绕过目标限制策略。

Linux上 proxychains 搭配 tor服务,也可配置socks5代理,同样可以绕过目标限制策略。

6. 在线网站端口扫描

在红队打点过程中,通常需要执行端口扫描操作,然后是指纹识别等。然而,如果甲方运维人员正在进行监测,可能会导致IP地址被发现进而通过一些方式被溯源到个人账号ID、身份信息或手机号等。在这种情况下,通过在线网站进行端口扫描可以避免被追溯,实现匿名的端口扫描操作。

7. 代理服务供应商

使用借助代理服务供应商提供的HTTP[S]和SOCKS动态代理服务,不仅有助于在手工渗透测试过程中保持匿名性和绕过防火墙设备,还能够在配置适当的扫描器并发量时,实现高效的批量检测。

0x05 总结

本文从实战的角度出发,给出了 7 种方案用于安全人员在端口扫描和漏洞验证阶段绕过防火墙封禁以及避免安全运营人员溯源。由于篇幅限制,每种方案没有展开细说,此处仅提供思路。另外此处思路仅供以安全人员研究交流,请不要进行非法操作。

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

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

相关文章

DFT新手教程:VASP中ISIF取值设置

新手初学VASP计算时首先接触到的就是结构优化的计算任务。 在结构优化中,INCAR中的关键参数包括 IBRION ,NSW,ISIF,EDIFF和EDIFFG 各个参数均可在vaspwiki查到可设置的参数以及该参数所具有的设置的含义。 https://www.vasp.at/…

佛罗里达大学利用神经网络,解密 GPCR-G 蛋白偶联选择性

内容一览:G 蛋白偶联受体 (GPCRs) 是一种将细胞膜外的刺激,传递到细胞膜内的跨膜蛋白,广泛参与到人体生理活动当中。近日,佛罗里达大学的研究者测定了 GPCRs 和 G 蛋白的结合选择性,并开发了预测二者选择性的算法&…

JVM简单了解内存溢出

JVM oracle官网文档:https://docs.oracle.com/en/java/javase/index.html 什么是JVM JVM(Java Virtual Machine)原名Java虚拟机,是一个可以执行Java字节码的虚拟计算机。它的作用是在不同平台上实现Java程序的跨平台运行,即使在不同的硬件…

MX6ULL学习笔记 (七) 中断实验

前言: 本章我们就来学习一 下如何在 Linux 下使用中断。在linux内核里面使用中断,不同于我们以往在别的裸机开发一样,需要进行各种寄存器的配置,中断使能之类的,而在Linux 内核中,提供了完善的中断框架…

AWS攻略——使用中转网关(Transit Gateway)连接同区域(Region)VPC

文章目录 环境准备创建VPC 配置中转网关给每个VPC创建Transit Gateway专属挂载子网创建中转网关创建中转网关挂载修改VPC的路由 验证创建业务Private子网创建可被外网访问的环境测试子网连通性Public子网到Private子网Private子网到Private子网 知识点参考资料 在《AWS攻略——…

java日历功能

java 日历功能 功能概述java代码打印结果 功能概述 输入年份和月份,打印该月份所有日期,头部信息为星期一至星期日 java代码 package com.java.core.demoTest; import java.util.Calendar; import java.util.Scanner;// 打印日历 public class Calend…

计算机网络之IP篇

目录 一、IP 的基本认识 二、DNS 三、ARP 四、DHCP 五、NAT 六、ICMP 七、IGMP 七、ping 的工作原理 ping-----查询报文的使用 traceroute —— 差错报文类型的使用 八、断网了还能 ping 通 127.0.0.1 吗? 8.1、什么是 127.0.0.1 ? 8.2、为…

小程序1rpx边框不完美

问题展示 原因 rpx类似rem,渲染后实际转换成px之后可能存在小数,在不同的设备上多多少少会存在渲染的问题。而1rpx的问题就更加明显,因为不足1个物理像素的话,在IOS会进行四舍五入,而安卓好像统一向上取整&#xff0c…

人工智能|网络爬虫——用Python爬取电影数据并可视化分析

一、获取数据 1.技术工具 IDE编辑器:vscode 发送请求:requests 解析工具:xpath def Get_Detail(Details_Url):Detail_Url Base_Url Details_UrlOne_Detail requests.get(urlDetail_Url, headersHeaders)One_Detail_Html One_Detail.cont…

[MySQL--基础]多表查询

前言 ⭐Hello!这里是欧_aita的博客。 ⭐今日语录:生活中最大的挑战就是发现自己是谁。然后,坚定不移地成为那个人。 ⭐个人主页:欧_aita ψ(._. )>⭐个人专栏: 数据结构与算法 MySQL数据库 多表查询 前言多表关系概述&#x1f…

为什么 SQL 不适合图数据库

背景 “为什么你们的图形产品不支持 SQL 或类似 SQL 的查询语言?” 过去,我们的一些客户经常问这个问题,但随着时间的推移,这个问题变得越来越少。 尽管一度被忽视,但图数据库拥有无缝设计并适应其底层数据结构的查询…

四层LVS与七层Nginx负载均衡的区别

一、四层负载均衡与七层负载均衡: (1)四层负载均衡: 四层负载均衡工作在 OSI 七层模型的第四层(传输层),指的是负载均衡设备通过报文中的目标IP地址、端口和负载均衡算法,选择到达的…

赛事回顾 | 首届“智航杯“全国无人机智能算法竞赛落幕

11月28日,首届“智航杯”全国无人机智能算法竞赛实物赛在海南省三亚市成功落下帷幕。此次竞赛自2023年4月启动以来,共有来自全国145所高等院校和50多所企事业单位的1253支团队、3655人报名参赛,最终有6支队伍脱颖而出,入围了实物赛…

Elasticsearch:评估 RAG - 指标之旅

作者:Quentin Herreros,Thomas Veasey,Thanos Papaoikonomou 2020年,Meta发表了一篇题为 “知识密集型NLP任务的检索增强生成” 的论文。 本文介绍了一种通过利用外部数据库将语言模型 (LLM) 知识扩展到初始训练数据之外的方法。 …

11.9每日一题(无穷比无穷型的极限:提出并消去无穷因子、抓大头、拆多项式)

注:1、 为x的绝对值,因为x趋向负无穷,所以为 -x 2、用有理运算法则拆分式子时,注意判断极限是否存在

Python 网络爬虫(二):HTTP 基础知识

《Python入门核心技术》专栏总目录・点这里 文章目录 1. HTTP 协议简述2. HTTP 请求过程3. HTTP 的结构3.1 请求行3.2 请求头3.3 请求体3.4 状态行3.5 响应头3.6 响应体 4. Cookie 状态管理5. HTTP 请求示例6. 总结 大家好,我是水滴~~ 在准备学习网络爬虫之前&…

springboot慢性胃炎管理系统-计算机毕设 附源码 35541

SpringBoot慢性胃炎管理系统 摘 要 随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,医疗行业当然也不例外。慢性胃炎管理系统是以实际运用为开发背景,运用软件工程…

PLC通过485Modbus转Profinet网关与温控表通讯在发酵罐的应用

前提:在自动化控制系统中,PLC通常需要和各种设备进行数据通讯,其中就包括温控表。而这些设备之间的通讯常常需要通过485Modbus转Profinet网关(XD-MDPN100)来实现。 方案:在一些应用场合中,Profi…

Spring Boot 3 整合 Spring Cache 与 Redis 缓存实战

🚀 作者主页: 有来技术 🔥 开源项目: youlai-mall 🍃 vue3-element-admin 🍃 youlai-boot 🌺 仓库主页: Gitee 💫 Github 💫 GitCode 💖 欢迎点赞…

2023/11/30JAVAweb学习(postman,各种参数,统一响应数据,三层架构,分层解耦,bean组件扫描,Bean注入及解决方式)

数组json形式 想切换实现类,只需要只在你需要的类上添加 Component 如果在同一层,可以更改扫描范围,但是不推荐这种方法 注入时存在多个同类型bean解决方式