声明:本人坚决反对利用文章内容进行恶意攻击行为,一切错误行为必将受到惩罚,绿色网络需要靠我们共同维护,推荐大家在了解技术原理的前提下,更好的维护个人信息安全、企业安全、国家安全。
01
红蓝对抗概述
1.红蓝对抗的名称起源
(后台回复beta-1可获取对应ppt)“红蓝对抗”最早起源于古罗马军队,在沙盘中用红色和蓝色来代表敌人和自己,他们认为蓝 色代表勇敢和忠诚,红色代表血腥和暴力,所以选择用蓝色代表自己。
2.什么是网络安全中的红蓝对抗?
“红蓝对抗”就是提前设定好游戏规则,制定奖惩制度,在一定时间范围内(或者具体时间),以不明确 攻击源、不明确攻击目标、不限制攻击手段的方式,红军对蓝军发起的模拟攻击。其目的在于发现自身的安全风险,检验安全防范水平和效果以及响应效率,为后续的网络与信息安全建设提供强有力的支持。
3.什么是渗透测试?
渗透测试是对给定的目标系统进行安全测试,找出漏洞或风险的过程。通过渗透测试,企业及机构可以了解自身全部的网络资产状态,可以从攻击角度发现系统存在的隐性安全 漏洞和网络风险,有助于进一步企业构建网络安全防护体系。
4.渗透测试 vs 红蓝对抗
传统渗透测试目的在于尽可能找全某个系统的漏洞,对于漏洞的利用基本是点到为止(确认其可利用性 和危害);Red Team服务的目的则不是为了找全漏洞,而是为了找到可利用的风险点,并绕过防护体系渗透到企业内部,全面检验企业各个维度的安全防护能力和安全感知能力;
传统渗透测试的攻击手段相对比较单一,比如针对WEB业务系统的渗透测试基本就是利用WEB攻击的相关方法;而Red Team服务会利用多维度的攻击方法(如WEB渗透、邮件钓鱼、鱼叉攻击、无线攻击 甚至物理攻击);
传统渗透测试一般会选用模拟测试环境进行;而Red Team更倾向于在真实环境和场景中进行真实的对抗,会有攻击方和防守方甚至有裁判组,整个过程相对更加复杂;
5.渗透测试基本流程(PETS)
6.高级持续性威胁攻击生命周期(APT)
02
红队攻击关键步骤
1. 红队攻击的关键步骤:信息搜集
被动信息收集:不去直接接触目标,而是通过收索引擎或者爬虫系统去收索关于目标的信息。
whois信息:站长之家、爱站、微步、天眼查、ICP备案查询等;
子域名:Google、爆破枚举(layer子域名挖掘机/subDomainsBrute/k8/Sublist3r)等;
IP收集:站长工具、CNNIC、Nslookup、绕过CDN(子域名法/漏洞/DNS log/CDN自身问题/网络空间引擎搜索法等)等;
Ports/Servers:需要真实IP,Masscan/X-scan/Nmap/SuperScan/theHarvester
主动信息收集:攻击者或者渗透测试人员通过工具去主动去探测或者收集目标的信息,直接和目标接触。
网站架构探测:CMS类型、前端技术、中间件、开发语言、Web容器、数据库、OS、WAF类型等
识别技术:Banner、关键词、响应头、wappalyzer、报错信息、工具(whatweb/Plecost/BlindElephant/在线平台/Nmap/Masscan)
敏感文件/目录:配置文件、备份文件、Git、Hg、SVN、Web-Inf等,使用工具来识别:爬虫、搜索引擎、WWWscan、御剑、dirsearch等
旁站/C段:bing.com、站长之家、Google、在线平台(Zoomey/Fofa/Shodan)等
2. 红队攻击的关键步骤:初始入侵
根据收集到的信息制定一份符合业务需求、合理有效的攻击方案。制定方案的过程就是选择合适的攻击思路对目标进行攻击,并在渗透测试的过程可以灵活更换思路和方法,不断提升渗透有效性并减少开销。可以使用的渗透测试方法主要有:
精准打击、灵活运用、制定攻击路径等。
利用思路和设计到的技术点如下:
- 社工:通过欺骗和诱导的方式收集关于管理员的信息来达到攻击目的,在kali系统集成了The Social-Engineer Toolkit 、Maltego等社击工具。
- 物理渗透:专用解密器解机房门禁,开锁, 锁分为传统锁和电子锁。对物理机房、基础设施等进行物理性测试等。
- 网络渗透:网络嗅探、网络抓包、ARP攻击、DNS欺骗、认证失效、越权、单点登录问题、心脏滴血等等
- 系统层面渗透:系统本身漏洞、中间件漏洞、协议漏洞等
- 应用层面渗透:通用性漏洞和逻辑漏洞
在信息收集的基础上,对各种系统和应用进行漏洞探测和验证,这一步骤可以理解前期渗透测试,漏洞探测可以理解为漏洞挖掘的过程,其常用方式方法如下:
- 手工
- 漏扫、AWVS、AppScan、BurpSuit、Nessus、openvas等
- 根据应用类型及版本号寻找Exploit-DB、Github、Google、Wooyun库等地找漏洞验证工具ü暴力猜解
- 业务逻辑漏洞验证
- 社工:伪造工牌、伪装工作人员(快递员)、伪装入职等;发送钓鱼邮件等
应用层面渗透之通用性漏洞
•SQL注入:联合注入、盲注(布尔/时间)、宽字节注入、二次注入、二次编码注入、堆叠注入、报错注入。
•命令注入:应用服务有时需要调用一些执行系统命令的函数,如PHP中的system、exec、shell_exec、passthru、popen、proc_popen等,添加管道符。
•代码注入:当应用在调用一些能将字符串转化成代码的函数时,没有考虑用户是否能够控制这个字符串,将造成代码注入漏洞。(PHP:eval,assert, preg_replace;ASP:eval, execute,executeglobal;JSP:反射机制执行代码)。
•XML外部实体注入:XXE,有回显的XXE、盲型XXE。
•绕过检测:前端验证、类型验证、文件头验证、文件名验证、条件竞争。
•解析漏洞:Apache解析漏洞、IIS解析漏洞、Nginx解析漏洞等。
•文件包含:伪协议、截断包含、包含图片马、包含日志、包含系统配置文件等(LRI/RFI)。
•XSS:DOM、Reflected、Stored、盲打、绕过(payload 变形、CSP)。
•CSRF:结合XSS利用。
•SSRF:结合XXE利用、结合文件包含利用、内网渗透等。
•信息泄露类漏洞:任意文件读取、下载,目录穿越、目录遍历、备份文件、配置文件等。
•使用含有已知漏洞的组件:架构(Thinkphp/Struts2/Spring等)、CMS以及插件、中间件(Jboss、weblogic)、其他。
•安全配置错误:中间件(tomcat后台对外/apache脚本解析配置错误/redis未授权/openssl/php-fpm端口对外等)。
•恶意文件上传:上传恶意文件。
•身份认证:弱口令、不安全的cookie和session、加密测试。
•验证码突破:爆破、时间次数突破、绕过、回显。
•密码找回:任意密码修改、密码重置等。
•业务完整性:业务一致性、业务数据一直性(支付)任意价格购买、领取优惠券等。
•其他:业务授权、业务接口、时效绕过、水平越权、垂直越权等。
weblogic远程命令执行漏洞(CVE-2017-10271)
验证码失效
红队攻击的关键步骤:内网渗透(后渗透攻击)
•提权:Windows提权(内核提权:pr/MS08067/巴西烤肉/IIS67移除溢出等、第三方服务提权:FTP/数据库/DLL等、配置不当提权)、Linux提权(内核提权:CVE漏洞/SUID提权/计划任务等、第三方服务提权:mysql/redis等、配置不当提权)。
•后门:Windows(shift后门/远控/DLL劫持/启动项/特殊注册表/特殊方式后门等)、Linux(ssh/启动项/Cymothoa进程注入/rookit/Vegile/backdoor等)、bypass UAC等。
•内网跨边界转发:Netcat、Lcx、Htran、Fpipe、EW、MSF、SSH、Ptunnle等。
•内网跨边界代理穿透: reGeorg Proxifier、reGerog proxychains、EW、MSF等。
•反弹shell:
•文件传输:工具传输(wput/wget/nc/bitsadmin/scp/surtail等等)、脚本传输(powershell/vbs/python/php等)等。
•远程系统执行程序:at、SchTasks、Psexec、wmic、wmiexec、Smbexec、Powershell、remoting、DCOM横向渗透:内网信息收集(Powerview/主机扫描/拓扑图等)、中间人攻击(cain、ettercap、arpspoof、responder、MITIMf、bettercap)、工作组(端口爆破/端口溢出等)、域渗透(域环境信息收集、定位域控、攻击域控:ms14-068/黄金票据/白银票据/中间人攻击/凭证窃取、登录域控:ipc/端口转发/pstools/msf/wmi等、获取数据)。
•日志清理:手工、工具(MSF、Powershell等)。
•后渗透测试:进程迁移、令牌窃取、后门(OS后门、web后门)等。
•Powershell技术:PowerSploit、Empire、Nishang等。
3. 红队攻击的关键步骤:权限提升
Windows提权
•内核提权:CVE漏洞://巴西烤肉/IIS67移除溢出等;
•第三方服务提权:FTP/数据库/DLL等、配置不当提权;
Linux提权
•内核提权:CVE漏洞/SUID提权/计划任务等;
•第三方服务提权:mysql/redis等、配置不当提权;
•键盘记录;
4. 红队攻击的关键步骤:权限维持
Windows系统持久化后门
•影子账户
•shift后门
•注册表自启动
•定时任务
•屏幕保护程序
•DLL劫持
•COM劫持
•BITS Jobs后门
•自启动服务
•WMI后门
Linux系统持久化后门
•ssh wrapper后门
•SUID 后门
•Crontab定时任务
•mafix rootkit
•VIM后门
•ssh利用公钥免密登录
•添加隐藏账户
•动态链接库后门
Meterpreter:运行run metsvc -A完将会在目标主机上以Meterpreter的服务的形式注册在服务列表中,并开机自动自动。
meterpreter > run metsvc -A
5. 红队攻击的关键步骤:代理与端口转发
内网跨边界转发:Netcat(NC)、Lcx、Htran、Fpipe、EW、MSF、Ptunnle等。
内网跨边界代理穿透: reGeorg Proxifier、reGeorg ScoaksCap、reGerog proxychains、EW、MSF proxychains等。
利用metasploit添加socks5代理:
利用proxychains nmap内网端口扫描:
03
攻防图解
攻防演练红队攻击的关键流程