02-XSS渗透测试步骤

三、XSS渗透测试步骤

xss攻击,一定牢记"输入输出",输入指的是攻击者对服务器网页输入恶意代码

输出指的是浏览器接受到代码后能解析出并输出到前端。

xss原理就是开发者没有对输入内容进行过滤,导致通过攻击者进行构造的前端代码,

输入后和原有的前端代码产生混淆,形成新的页面语句,并且新的页面语句能够被浏览器解析并输出。

xss渗透测试步骤:

1)找到输入点,输入任意字符串,查看输出位置

2)打开网页源代码,在源代码中查看输出的位置(有可能输入和输出不在同一个页面)

3)查看输出位置的内容与输入内容之间的关系,构建闭合和拼接脚本

4)利用<script>或onclic或alert(1)进行测试,确认是否存在xss注入点

5)开始利用注入点完成各类复杂的操作,实现攻击目的

优化PHP代码为以下代码,并在一个文本框中进行输出:

复制代码
if(isset($_Get['content'])){
    $content = $_Get['content'];
    echo "<input type='text' value='$content' id='username'/>;"
}

我们的目的是进行xss攻击,执行JS代码的条件是要有script标签或事件属性

复制代码
<script>alert(1)</script> 这是一定能在页面上执行弹窗警告框的
如果我们直接输入上述的代码将直接会变成这样==》
<input type='text' value='<script>alert(1)</script>'> 这并不符合HTML的语法
<input type='text' value=''><script>alert(1)</script>"> 变成这样的话,就是input和script两个标签都能执行
因此我们输入就变成
"><script>alert(1)</script><!--    就是凭借和闭合后然后就将后续的代码进行注释就可以了
那此时浏览器在解析的时候,就会解析出两个元素,一个是input,一个是script,从而执行我们在script中的代码,完成XSS攻击
也可以完成对value="的闭合,实现文本框的单击事件,Payload为:
hello" onclick="alert(1)
也可以构造一个全新的标签进行触发: 
Palyoad 1:"><img src="1" onerror="alert(1)">
Palyoad 2: "><img src="./image/dateme.gif" onclick="alert(1)"><!--
Palyoad 2: "><img src="./image/dateme.gif" onclick="alert(1)"><input type="hidden

xss常用的测试语句:

复制代码
<script> alert(1)</script>
<img src=1 oneror=alert(1)>
<svg onload=alert(1)>
<a href=javascript:alert(1)>
<input onfocus=write(1) autofocus>

四、xss的类型

1、反射型xss

我们构造好一个url的payload,发送给受害者,受害者点击恶意链接后再受害者的浏览器上执行恶意代码。

反射型xss是一次性的,而且比较容易被发现,通常恶意链接会被修改成短链接,或钓鱼图片的形式。

2、存储型XSS

存储型又叫永久性xss,常见于留言板,因为存储型xss的页面会将用户输入的内容存入到数据库内,

所以其他人每访问一次的时候,服务器都会从数据库将攻击者输入的内容调取到前端浏览器解析,

因此每一次访问就相当于一次xss攻击

3、DOM型XSS

DOM会将HTML文件的节点构建成树状结构,(一个标签就是一个节点)

不与服务器交互,本质上也是一种反射型xss。主要利用js使用domn对前端HTML进行操作时候产生的漏洞。DOM型xss难点就在于通过阅读JavaScript来确定输出的位置,才好构建输入的payload.

DOM型xss可通过开发者工具观察js变化。

相关推荐
航天智算12 分钟前
航天智算 HTZS-1700 全信创网络安全移动工作站深度评测
网络安全·国产算力·国产化改造·算力适配·测绘信创
longzhizhui9261 小时前
Ubuntu 全版本 CVE-2026-98432 内核安全升级操作手册
ubuntu·网络安全·云计算·bash
万联WANFLOW3 小时前
CVE-2026-98432 等漏洞自查:AI 查出的 Linux、Windows 漏洞,运维怎么确认受不受影响
linux·运维·windows·网络安全
一支蜉蝣5 小时前
Day26 XD安全学习笔记--PHP 应用&模版引用&Smarty渲染&MVC 模型&数据联动&RCE 安全
笔记·网络安全·html·php
kingx31 天前
Bugku WEB 题解总集:文件包含 / SQLi / 反序列化 / SSTI / 反爬 / 组件漏洞
web安全·网络安全·ctf·bugku
我爱学习_zwj1 天前
IP 地址与子网划分
网络协议·网络安全
重生之我在番茄自学网安拯救世界2 天前
AI 开发者日报 第1期(本周精选)| 插件市场投毒、智能体搞出“官僚饥荒村”,十年前的 CNN 打赢大模型
人工智能·网络安全·大模型·ai编程·智能体
m0_738120722 天前
JWT 安全从入门到实战:六种典型攻击场景解析
前端·网络·python·安全·网络安全
重生之我在番茄自学网安拯救世界2 天前
AI开发者日报 第2期 | Anthropic零 Rust 团队靠Claude重写核心 API,CPU 降 40–50%
人工智能·网络安全·大模型·ai编程·claude
五萝卜2 天前
AI 供应链 RAG 安全
人工智能·网络安全·ai编程