红队作为实战攻防演练中的攻击方,根据队员的不同攻击能力特点组织攻击团队。采用适当的攻击手段和攻击策略对目标系统展开网络攻击,最终获取目标网络和系统控制权和数据,检验目标单位的网络安全防护能力。
1.准备工作
红队的攻击准备主要从工具、技能和队伍三个方面来进行准备
1.1工具准备
1.常见的信息收集工具:
whois -> 查询域名的IP及所有者等信息的传输协议
nslookup -> Windows系统中自带的命令解析工具 用于链接DNS服务器,查询域名信息
dig ->Linux中自带,与nslookup作用类似
oneforall -> 子域名收集工具
2.扫描探测工具
红队可以利用各种扫描工具对目标的web应用系统、网络设备、终端主机或服务器进行扫描,以此去找到薄弱点或漏洞,为进一步的渗透攻击做准备
namp -> 最常用的探测工具,可以进行存活主机探测、端口服务探测、设备指纹探测、漏洞探测。
nessus ->最常用的系统漏洞扫描与分析软件,用于发现和评估计算机系统和网络中的安全漏洞。
awvs -> web网站漏洞扫描工具,利用网络爬虫原理来测试web网站的安全性
disearch -> Python开发的目录扫描工具,可以对web网站的目录以及文件进行扫描
nikto -> web安全扫描工具
3.远程控制工具
finalshell、Xshell -> 用来在Windows界面下远程访问不同系统下的服务器。
navicat -> 数据库管理工具
4.webshell管理工具
红队可以通过利用webshell管理工具,对上传的webshell进行管理和利用
冰蝎 -> 动态二进制加密网站管理客户端,集成了命令执行,虚拟终端,反弹shell等功能
蚁剑-> 集成了shell代理、shell管理、文件管理、免杀等功能
哥斯拉 -> 相对较新的webshell管理工具,支持自定义http头 ,以及丰富的webshell功能
5.内网穿透工具
面对目标网络内部系统无法直接出网的特点,红队在攻击过程中,需要利用内网穿透工具实现外网到内网的跨边界跳转访问,借助端口转发、隧道技术对内网目标实现转发访问或将目标内网ip映射到外网
FRP-> 用于内网穿透的高性能反向代理工具,主要利用处于内网或防火墙后的机器,对外网环境提供http或https服务,支持加密传输和点到点穿透
ngrok -> 反向代理工具,红队可利用ngrok将边界服务器作为反向代理服务器,在客户端和目标边界服务器之间建立一个安全通道
6.网络抓包分析工具
红队可以利用网络抓包工具拦截并查看网络数据包内容,从中去提取有用的信息
wireshark -> 最常见的网络抓包分析软件
7.集成工具平台
kali ->最常用的集成工具平台,集成了超过三百多个渗透测试工具
burpsuite -> 用于攻击web应用程序的集成平台,集成了web访问代理、web数据拦截与修改等功能。
1.2专业技能储备
1.工具开发能力
“工欲善其事,必先利其器”常见的开源工具公开特征过于明显,因此往往容易被蓝队的态势感知系统和防火墙发现并拦截,因此通过自主开发或者对现有的工具改版,可以为攻击工作提供有力的工具保障
2.漏洞挖掘能力
对于红队来说,漏洞是大杀器,往往能起到一击毙命的效果,漏洞的准备对外网打开突破口和内网横向拓展都非常重要,但是公开的漏洞往往由于时效问题,作用有限,因此,自主挖掘0day是一个重要的秘密武器。
3.代码调试能力
针对攻击过程中获取到的一些源码,需要运用代码调试能力,对代码进行解读和审计,以发现bug和存在的漏洞
4.侦破拓展能力
是在渗透攻击过程中对渗透工具使用,关键节点研判、渗透技巧把握、战略策略运用等一系列技能的综合体现
2.目标网情收集
2.1什么是网情收集
网情收集是指围绕攻击目标系统的网络架构、it资产、敏感信息、组织管理与供应商等方面进行的情报收集。目的在于帮助蓝队在攻击过程中快速定位薄弱点和采取正确的攻击路径,并为后两个阶段的工作提供针对性的建议,从而提高攻击效率和渗透成功率。
2.2网情收集的主要工作
网情收集的内容主要包括攻击目标系统的组织架构、it资产、敏感信息、组织管理与供应商信息
- 组织架构包括单位部门划分、人员信息、工作职能、下属单位等;
- IT 资产包括域名、IP、C段、开放端口、运行服务、Web 中间件、Web应用、移动应用、网络架构等;
- 敏感信息包括代码信息、文档信息、邮箱信息、历史漏洞信息等;口
- 供应商信息包括合同、系统、软件、硬件、代码、服务、人员等的相关信息。
2.3网情收集的途径
1.专业网络信息网站
fofa、shodan、censys、钟馗之眼
可以收集目标的IP范围、域名、互联网侧的开放服务端口、设备指纹与网络信息等相关信息
2.目标官网
可以通过目标官网去知晓对方的组织管理架构、网络项目以及设备供应商
3.社工
通过社工手段去获取一些内部信息
4.扫描探测
借助扫描工具、对目标网络设备指纹、系统版本、端口、漏洞进行扫描
3.外网纵向突破
3.1什么是外网纵向突破
红队在对一个目标网络实施攻击的时候,首先就是寻找目标系统互联网侧薄弱点,然后利用这些薄弱点突破外网,进入目标网络内网。由外网突破进入内网的过程一般称为“纵向突破”。
3.2外网突破的主要工作
围绕目标网络突破口开展渗透测试,尝试去获取必要的安全认证信息或者漏洞利用获取控制权限。
3.3外网突破的途径
1.通过各种手段获取目标网络的一些敏感信息,比如登录口令、安全认证或者网络安全配置等
2.通过漏洞利用,实现对目标外部接口的突破,常见的有 web网站、外部邮件系统、边界网络设备、外部应用平台。
4.内网横向拓展
4.1什么是内网横向拓展
通常是指攻击者攻破某台设备后,以此为基础,对相同网络环境中的其他设备发起的攻击活动,也泛指攻击者进入内网后的各种攻击活动。
4.2内网横向拓展的主要工作
1.内网信息收集
收集内网存活的ip以及存活ip开放的端口和服务
主机和服务器性质,判断设备所在区域是办公区还是服务器区,以及作用
内网的网络拓扑,vlan的划分,各网络节点和网段间的连通性
内网通用的杀毒软件、防火墙、终端操作系统、OA办公软件等
2.重要目标定位
内网关键服务器:内网UTM、云管平台、文件服务器、邮件服务器、病毒服务器、堡垒机、域控服务器等
内网重要主机:核心业务部门主机、网络管理员主机、部门领导主机
3.内网渗透拓展
主要重点是安全认证信息和控制权限的获取,主要的实现手段有内网漏洞利用、口令复用或弱口令、仿冒认证登录、内网水坑。
4.内网控制维持
为保证攻击的顺利进行,需要保证自己渗透工具的存活、隐蔽、隧道通信、隧道技术出网和控制驻留
针对渗透工具进行免杀修改或者利用白名单机制进行规避
避免异常流量被侦查到,可以采用数据加密,合法进程注入等隐蔽通信进行隐藏。
针对内外网隔离,内网不能直接出网的情况,采用端口映射或者隧道技术进行网络代理穿透
针对开机时间限制无法持续的情况,通过注册表、服务、系统计划任务、常用软件捆绑替代实现自启动驻留。
5.内网提权
在攻击过程中,通过渗透拓展获得的控制权限不一定是最大的,需要通过提权操作来提升自己的权限,主要有以下的四类。
1)系统账户提权
主要是将操作系统的普通账户权限提升为管理员权限,主要通过一些提权漏洞实现
2)数据库提权
通过获取数据库管理权限,进一步操作本地文件的写入或执行命令来获取本地服务器权限
3)web server应用提权
通过获取的web应用管理权限,利用web应用可能存在的缺陷去执行一些系统命令,达到获取本地服务器系统的控制权
4)虚拟机逃逸
通过虚拟应用权限获取宿主物理机的控制权,主要通过虚拟机软件或者虚拟机中运行的软件的漏洞利用,达到攻击或控制虚拟机宿主操作系统的目的。
4.3内网横向拓展的途径
大多数内网存在vlan跨网段隔离不严、共享服务器管理或访问权限分配混乱、内部数据或应用系统开放服务或端口较多、内网防火墙或网管设备固件版本陈旧、终端设备系统补丁更新不及时等问题,导致内部网络防守比较薄弱。以至于可以利用内网横向拓展手段。
1)内网漏洞利用
内网漏洞利用是内网横向拓展最主要的途径。进入目标内网后,利用内部更多的网络应用和设备,去找到各种漏洞,内网漏洞往往具备以下特点:1.以历史漏洞为主,内网中的各种业务受安全限制,往往无法及时更新补丁。2.漏洞利用容易,内网中通联性好,端口服务多,安全策略限制少。3.内网漏洞多具有通用性。
历年攻防演练中,经常被利用的通用产品漏洞就包括邮件系统漏洞,OA系统漏洞,中间件软件漏洞,数据库漏洞。
2)口令复用或弱口令
弱口令和口令复用,是我个人在工作中最常见的问题。一是因为内网常常由少数几个固定的人维护,运维人员出于省事的目的,喜欢一个口令复用到底。二是内网经常需要部署大量同样类型的服务器或应用,多直接通过克隆实现,但在克隆后没有对初始密码等关键信息进行修改。
3)安全认证信息利用
内网安全认证信息利用主要包括收集服务器自身安全配置、远控终端配置、口令字典文件、个人主机认证缓存或系统口令hash等。
4)内网钓鱼
相比于外网钓鱼,内网钓鱼有天然的信任优势可以利用,所以内网钓鱼的成功率更高,一般可以借助内网邮件、OA与接触核心业务系统的机会。
5)内网水坑攻击
水坑攻击,就是在受害者的必经之路设置一个“水坑”。常见的做法是黑客在突破和控制被攻击目标经常访问的网站后,在此网站去植入恶意的攻击代码。在实战中,除了内部网站的恶意代码植入,还可以通过内网文件服务器共享、软件服务器软件版本更新、杀软服务器病毒库升级和内部业务OA自动化部署等,都可以作为内网水坑攻击的利用方式。
文章内容借鉴奇安信的《红蓝攻防》