admin管理员组

文章数量:1592245

本博客地址:https://security.blog.csdn/article/details/132152177

近几年,HW越来越盛行,除了每年一度的国家级HW,各种省级或市级的HW也是隔三差五就有,除此外,大型企业内部也会常态化进行红蓝对抗以提升企业安全建设水平。而作为甲方公司安全人员,不仅要在重大护网行动中扮演防守方,还要在一些攻防对抗中扮演攻击方。实际上,不管是红方还是蓝方,所做的事情都有一定的规律可循,本文由此而写,仅从大框架总结,以作交流。

一、红蓝对抗-红方流程

1.1、概述

在红蓝对抗中,红队作为攻击方,其工作大致可分为3个阶段:目标情报搜集、外网纵向突破、内网横向拓展。

目标情报搜集主要是对目标的各种信息进行侦查了解,为攻击的具体实施做情报准备,是红队工作的基础,目的在于帮助攻击过程中快速定位薄弱点和采取正确的攻击路径,并为后两个阶段的工作提供针对性的建议,从而提高攻击效率和成功率。

外网纵向突破主要是寻找目标系统互联网侧的薄弱点,然后利用这些薄弱点突破外网,进入目标网络内网。

内网横向拓展主要是攻击者攻破某台内网终端或主机设备后,以此为基础,在内网主机、系统应用、服务器和网络设备等网络资产之间的跳转、控制、渗透过程。

1.2、目标情报搜集

1、情报搜集概述

情报搜集是指围绕攻击目标系统的网络架构、IT资产、敏感信息、组织管理与供应商等方面进行的情报搜集。情报搜集是为攻击的具体实施做准备,目的在于帮助在攻击过程中快速定位薄弱点和采取正确的攻击路径,并为后两个阶段的工作提供针对性的建议

情报搜集的内容主要包括目标系统的组织架构、IT资产、敏感信息、供应商信息等方面:

● 组织架构:包括单位部门划分、人员信息、工作职能、下属单位等;
● IT资产:包括域名、IP、C段、开放端口、运行服务、Web中间件、Web应用、移动应用、网络架构等;
● 敏感信息包括代码信息、文档信息、邮箱信息、历史漏洞信息等;
● 供应商信息包括合同、系统、软件、硬件、代码、服务、人员等的相关信息。

2、搜集的途径

1、专业网站

通过专业网络信息网站搜集目标的IP范围、域名、互联网侧开放服务端口、设备指纹与网络管理等相关信息。常见的有:

● Shodan(https://www.shodan.io)
● Censys(https://censys.io)
● ZoomEye(https://www.zoomeye)(钟馗之眼)
● FOFA(https://fofa.so)(网络空间资产检索系统/佛法)
● APNIC(https://www.apnic)
● CNNIC(http://wwwnic)
● Github:https://github
● Gitee:https://gitee
● 凌风云:https://www.lingfengyun

2、目标官网

在官网上可主要围绕目标组织管理架构、网络建设情况进行信息搜集,可通过关注目标网络建设招标情况、网络项目介绍、设备供应商合作等搜集有价值的信息

3、社会工程学

主要从目标系统内部人员入手,通过拉拢、收买等手段间接获取目标系统相关的情况信息来开展情报搜集

4、扫描探测

主要是借助扫描工具,对目标网络设备指纹、系统版本、平台架构、开放服务端口进行扫描,以发掘可能存在的漏洞信息,包括:地址扫描探测、端口扫描探测、设备指纹探测、漏洞扫描等

1.3、外网纵向突破

外部纵向突破中主要采用两种途径:一种是利用各种手段获取目标网络的一些敏感信息,如登录口令、安全认证或网络安全配置等;另一种就是通过漏洞利用,实现对目标网络外部接口的突破,如Web网站、外部邮件系统、边界网络设备和外部应用平台。

1、Web网站

主要针对门户官网、网上办公、信息平台等Web入口进行突破,通过Web入口存在的安全缺陷控制Web后台服务器,并进一步向内网渗透,突破方式以漏洞利用为主

2、外部邮件系统

主要针对目标网络外部邮件系统进行突破,目标是控制外部邮件系统后台服务器,并以此为跳板向目标网络内网渗透。突破方式有利用邮件系统安全认证缺陷、利用邮件系统组件漏洞、口令暴力破解、系统撞库、网络数据监听、社工等手段等

3、边界网络设备

主要针对暴露在外网的防火墙、边界网关和路由进行突破,目标是控制这些边界设备,并进一步利用它们的通联优势向内网渗透。主要方式是利用这些互联网接口防火墙、边界网关和路由支持开放的HTTP、HTTPS、Telnet、FTP、SSH与网络代理服务,通过远程溢出、远程执行漏洞、安全规则配置不当、口令猜破与社工手段,对一些开放的重要服务和端口进行渗透

4、外部应用平台

主要针对外部应用平台,比如业务系统、OA、报表系统、微信公众号平台、大数据平台等,利用其基础构件、网络代理组件、应用后台数据库或平台应用程序本身的设计缺陷进行突破

1.4、内网横向拓展

1、内网横向推展的主要工作

横向拓展,通常是指攻击者进入内网后的各种攻击活动。内网横向拓展阶段的主要工作是围绕靶标等内网核心目标,在内网快速横向渗透拓展,实现控制权限最大化。主要工作包括:

1、内网信息搜集

内网信息搜集主要搜集以下信息:

● 内网存活的IP以及存活IP开放的端口和服务;
● 主机和服务器性质,判断设备所在区域是DMZ区、办公区还是服务器区,作用是文件服务器、Web服务器、DNS服务器……之中的哪一个;
● 内网的网络拓扑、VLAN划分、各网络节点和网段间的连通性;
● 内网通用的杀毒软件、防火墙、终端操作系统、OA办公软件或其他应用系统。

2、重要目标定位

对重要目标进行快速定位有两个好处:一是这些内网重要目标大多有网络部署、安全认证、核心业务等的重要信息,获取这些重要信息将对内网横向拓展具有极大帮助;二是这些重要目标多具有非常好的内网通联性,借助其内网通联优势,可快速在目标内网实现横向拓展。包括:

● 内网关键服务器:内网UTM、云管平台、文件服务器、邮件服务器、病毒服务器、堡垒机、域控服务器、综管平台或核心网关。
● 内网重要主机:核心业务部门主机、网络管理员主机、部门领导主机。

3、内网渗透拓展

内网渗透拓展的重点是安全认证信息和控制权限的获取,主要实现手段有内网漏洞利用、口令复用或弱口令、仿冒认证登录、内网水坑钓鱼等。从而实现对各类重要目标进行渗透控制

4、内网控制维持

内网控制维持采取的措施主要包括渗透工具存活、隐蔽通信、隧道技术出网、控制驻留四方面。

● 针对内网杀毒软件可能导致的渗透工具被查杀的情况,对渗透工具针对性地进行免杀修改或利用白名单机制进行规避。
● 针对目标网络安全防护对异常流量、危险动作的监控可能导致攻击被拦截的情况,采用通信数据加密、合法进程注入等隐蔽通信进行隐藏。
● 针对内外网隔离,内网不能直接出网的情况,采用端口映射或隧道技术进行网络代理穿透。
● 针对目标主机或设备工作时间开机限制导致无法持续的情况,主要通过注册表、服务、系统计划任务、常用软件捆绑替代实现自启动驻留。

5、内网提权

提权操作主要有以下四类:

● 系统账户提权。主要是将操作系统普通账户权限提升为管理员权限,通过一些系统提权漏洞实现。
● 数据库提权。主要是通过获取的数据库管理权限,进一步操作本地配置文件写入或执行命令来获取本地服务器权限。
● Web Server应用提权。主要是通过获取的Web应用管理权限,利用Web应用可能存在的缺陷来执行一些系统命令。
● 虚拟机逃逸。主要是通过虚拟应用权限获取宿主物理机控制权限,通过虚拟机软件或者虚拟机中运行的软件的漏洞利用达到目的。

2、内网横向拓展的途径

因为内网具有通联性优势,所以内网横向拓展工作主要围绕通联安全认证的获取与运用开展,包括:

1、内网漏洞利用

内网目标通常比外网有更多的漏洞,漏洞类型也更多,利用也更容易。

2、口令复用或弱口令

内网一个是口令复用较为普遍,另一个是初始化口令、弱口令使用也比较普遍。从而导致内网弱认证。

3、安全认证信息利用

安全认证信息的利用是攻击过程中实现内网横向拓展的重要途径。内网安全认证信息包括服务器自身安全配置、远控终端配置、口令字典文件、个人主机认证缓存或系统口令Hash等。

● 重要口令字典文档或配置文件,包括网络拓扑文件、口令文件、各类基础服务安全配置文件;
● Windows凭据管理器或注册表中保存的各类连接账号密码、系统组策略目录中XML里保存的密码Hash;
● 邮件客户端工具中保存的各种邮箱账号密码,包括Foxmail、Outlook等;
● 远控客户端保存的安全认证信息,比如VNC、SSH、VPN、SVN、FTP等客户端;
● Hash获取的口令信息,比如域网络用户Hash、个人主机用户Hash、网络用户token等;
● 各类数据库账号密码,包括数据库连接文件或数据库客户端工具中保存的各种数据库连接账号密码;
● 浏览器中保存的各种Web登录密码和cookie信息,包括Chrome、Firefox等。

4、内网钓鱼

不同于外网钓鱼存在条件限制,内网钓鱼具有天然的信任优势可以利用,所以内网钓鱼的成功率要高得多

5、内网水坑攻击

常见的做法是黑客在突破和控制被攻击目标经常访问的网站后,在此网站植入恶意攻击代码,被攻击目标一旦访问该网站就会中招。除此外,文件共享、软件版本更新、病毒库升级等,都可以作为内网水坑攻击的利用方式

二、涉及工具

2.1、信息搜集工具

whois查询工具:用来查询域名的IP及所有者等信息
nslookup命令工具:windows下用于连接DNS服务器、查询域名信息
DIG命令工具:Linux下用于连接DNS服务器、查询域名信息
OneForAll子域名搜集工具:用于搜集子域名信息

2.2、扫描探测工具

Nmap工具:用于主机探测、端口服务探测、设备指纹探测、漏洞探测等
Nessus工具:用于网络系统安全漏洞扫描,主要侧重于主机漏洞扫描
AWVS工具:用于web安全漏洞扫描
Dirsearch工具:用于对目录和文件在内的网站Web页面结构进行扫描
Nikto工具:用于web安全漏洞扫描

2.3、口令爆破工具

超级弱口令检查工具:用于扫描多种服务的弱密码,运行在windows平台
Medusa工具:用于扫描多种服务的弱密码,运行在Linux平台
Hydra工具:用于暴力破解弱密码,可扫描多种服务的弱密码,可运行在多个系统平台中
Hashcat工具:用于密码破解,可运行在多个系统平台中

2.4、漏洞利用工具

WebLogic全版本漏洞利用工具:用于对各版本WebLogic漏洞进行自动化检测和利用
Struts2综合漏洞利用工具:用于对Struts2漏洞进行任意代码执行和任意文件上传
sqlmap注入工具:用于自动检测和利用SQL注入漏洞并接管数据库服务器
……(各种不同的漏洞利用工具,不做例举)

2.5、远程控制工具

Xshell工具:用于在Windows界面下访问远端不同系统下的服务器
SecureCRT工具:用于连接运行Windows、Unix和VMS的远程系统
PuTTY工具:用于对windows、Linux等系统的远程登录控制
Navicat工具:用来连接及管理不同类型的数据库

2.6、Webshell管理工具

冰蝎工具:集成了命令执行、虚拟终端、文件管理、SOCKS代理、反弹shell、数据库管理、自定义代码、Java内存马注入、支持多种Web容器、反向DMZ等功能
中国蚁剑:集成了shell代理、shell管理、文件管理、虚拟终端和数据库管理功能
哥斯拉工具:有较强的各类shell静态查杀规避和流量加密WAF绕过优势

2.7、内网穿透工具

FRP工具:反向代理工具,用于对处于内网或防火墙后的机器对外网环境提供HTTP或HTTPS服务
ngrok工具:反向代理工具,客户端可通过反向代理服务器间接访问后端不同服务器上的资源
reGeorg工具:利用web进行代理的工具,可利用Webshell建立一个SOCKS代理进行内网穿透
SSH工具:通过端口转发利用SSH作为中间代理,绕过两个网络之间的限制,顺利进行任意端口的访问
Netsh工具:用于通过修改本地或远程网络配置实现端口转发功能,运行于Windows平台

2.8、网络抓包分析工具

Wireshark工具:用于抓取网络封包及检测网络通信数据
Fiddler工具:用于HTTP调试抓包
tcpdump工具:用于网络抓包分析,运行于Linux平台

2.9、开源集成工具平台

Kali平台:预装多个渗透软件的Linux操作系统
Commando VM平台:基于Windows的高度可定制的渗透测试虚拟机环境
Cobalt Strike工具:采用Metasploit为基础的渗透测试集成平台
Burp Suite工具:用于攻击Web应用程序的集成平台

三、常用的攻击手段

外网纵向突破重点寻找薄弱点,围绕薄弱点,利用各种攻击手段实现突破;内网横向拓展以突破点为支点,利用各种攻击手段在内网以点带面实现横向拓展。实战攻防中,各种攻击手段的运用往往是相互交叉配合的,某一渗透拓展步骤通常需要同时运用多种手段才能成功。

攻击手段通常有以下:

3.1、漏洞利用

1、SQL注入

主要利用SQL注入漏洞实现以下目的:
● 获取后台数据库中存放的目标的隐私信息,并进一步利用这些信息渗透拓展
● 对目标网站挂马,进一步有针对性地开展钓鱼攻击
● 获取后台应用系统的控制权限,进一步控制后台服务器

2、跨站漏洞

主要利用跨站漏洞实现以下目的:
● 对目标网站植入恶意代码,有针对性地开展进一步攻击渗透
● 窃取网站管理员或访问用户的安全认证信息,进一步向个人主机拓展
● 劫持用户会话,进一步获取网站用户隐私,包括账户、浏览历史、IP地址等

3、文件上传或下载漏洞

主要利用文件上传或下载漏洞实现以下目的:
● 向目标网站或应用上传脚本文件,通过脚本搜集关键信息或获取目标控制权限
● 向目标网站或应用上传木马文件,开展水坑攻击

4、命令执行漏洞

主要利用命令执行漏洞实现以下目的:
● 通过命令执行,非法获取目标的敏感信息,比如用户口令、安全配置等
● 执行任意系统命令,比如添加账户操作、非法获取控制权
● 通过执行恶意代码植入木马,实现水坑攻击,以进一步拓展

5、其他漏洞,不逐个举例

3.2、口令爆破

对于有后台或登录入口的系统,攻击者也常常会将这些登录入口作为攻击的重点,只要能通过各种手段获取这些入口的账户口令,攻击者就能获得目标网络或系统的访问控制权,访问用户能访问的任何资源,并在此基础上开展进一步的攻击渗透。根据口令复杂度的不同,口令爆破可以分为弱口令和口令复用两类。

3.3、钓鱼攻击

钓鱼攻击分为外网钓鱼和内网钓鱼。

● 外网钓鱼:主要是冒充客户或友商身份,通过客服等途径进行钓鱼
● 内网钓鱼:主要是利用内部的信任关系,冒充内部领导或同事,通过运维人员或重要业务人员进行钓鱼

3.4、供应链攻击

网络或平台提供商是指网络提供商、Web应用或服务器托管平台、云网络平台提供商等,对此类第三方提供商开展供应链攻击,可以接触到目标基础网络或平台底层服务,容易实现对目标的全面渗透和控制。

安全服务提供商是指网络安全建设和安全运维等提供商,对此类第三方安全提供商开展供应链攻击,获取运维人员管理目标网络的权限,即可借助其管理权限接入目标网络。

产品或应用提供商是指第三方系统、应用或设备的提供商,对此类供应商可以利用各种手段获取原厂设备或应用源码,并对设备进行解剖分析或对源码进行代码审计以寻找其可能存在的安全漏洞,进而利用发现的漏洞实现对目标网络的突破。

3.5、VPN仿冒接入

实现VPN仿冒接入的前提是获取VPN接入权限,只要获取了目标VPN网络的接入权限,攻击者就能仿冒合法认证接入目标内网,并可以进一步隐蔽渗透。实战中主要通过以下两种途径获取VPN接入权限

1、获取VPN认证信息有以下方式:

● 针对目标人员钓鱼,控制目标个人计算机后,伺机窃取VPN接入信息
● 通过供应链攻击针对目标的安全服务提供商,迂回获取VPN入口和接入认证信息
● 通过漏洞利用直接从VPN网关设备上获取VPN网关账户信息
● 除了外网常用的途径外,内网还经常可以通过口令复用或弱口令获取VPN账户口令信息

2、控制VPN网关有以下方式:

● 利用漏洞实现远程代码执行,添加管理员账户,控制网关设备
● 通过任意文件读取漏洞未经身份验证地窃取网关设备管理凭据
● 或通过注入漏洞获取后台管理数据库中的账户口令信息

3.6、隐蔽隧道外连

隐蔽隧道外连主要通过加密通信和端口转发技术组合实现,实现方式有以下两种:

1、借助第三方工具

● 端口转发类工具:如Windows自带的Netsh命令工具、Linux系统自带的ssh命令工具、Netcat、HTran、Lcx等;
● SOCKS代理类工具:如frp、ngrok、Proxifier等

2、借助目标边界设备

利用一些边界网关的端口映射功能实现内网主机的出网操作;利用一些边界防火墙自带的PPTP、L2TP或SSL VPN功能模块实现VPN隐蔽接入目标内网

3.7、社会工程学攻击

社会工程学攻击主要有以下方式:

● 利用熟人关系:主要是利用熟人之间的信赖关系,通过熟识的同学、朋友有针对性地打听有关目标网络的信息。
● 通过利益交换:主要针对目标已经离职的网络安全人员,通过金钱买通或利益交换的方式获取信息。
● 伪装相似背景:主要利用目标内部人员可能参加的一些专业会议、安全技术论坛等,通过伪装身份刻意接触目标人员,趁机套取信息。
● 伪装新人潜入:利用目标可能存在的招聘机会,通过伪装身份直接去目标单位应聘,从而打入目标内部,趁机窃取目标的核心信息。
● 假装面试交流:以应聘者的身份参加面试,在与招聘人员的交流过程中套取与目标的网络建设、应用部署等相关的信息。

3.8、近源攻击

近源攻击是一种集常规网络攻防、物理接近、社会工程学攻击及无线电通信攻防等能力于一体的网络攻击手段。近源攻击中攻击者位于目标附近或建筑内部,攻击也是从目标内部发起的。常用的攻击方式有:

1、Wi-Fi边界突破

利用目标办公区附近的Wi-Fi网络,通过无线设备和工具抓取Wi-Fi通信数据包,重点对有Wi-Fi安全认证访问的数据进行解码分析,破解其认证信息,从而获取Wi-Fi网络接入权限

2、乔装侵入

假冒目标内部人员进入目标办公区,在目标内部寻找暴露的有线网口、智能终端设备、无人监管主机等可能具有内网连接条件的设备,通过这些网口或设备接入目标内网实施攻击渗透。

本文标签: