zoukankan      html  css  js  c++  java
  • pikachu靶场-CSRF

    xss和csrf区别:

    CSRF是借用户的权限完成攻击,攻击者并没有拿到用户的权限,而XSS是直接盗取到了用户的权限,然后实施破坏。

    PS:

    由于之前将php5升级到php7,导致靶场环境出现以下问题

     原因是在php7中,MYSQL_ASSOC不再是一个常量,需要将 MYSQL_ASSOC改为MYSQLI_ASSOC,意思是mysqli的方式提取数组,而不再是mysql 。(原因:mysql_fetch_arrayhan函数转为mysqli_fetch_array,参数没有修改)。

     

    更多升级造成的问题可以访问 <https://www.cnblogs.com/imustun/p/9828591.html>

     

     

    .CSRF(get)

    查看题目登录后进行信息修改。

    将性别改为1,抓包看看。

    在url中包含了get请求信息,

    作出修改后,访问试试。

    信息被修改了。  

    乙.CRSF(post)

    利用方法和xss类似

     

    需要注意的是由于无法通过url直接传递参数,可以伪造一个提交页面,然后使用户访问该页面,以用户权限去提交我们构造的信息。

    这里可以使用bp来生成这个页面

     

     随后可以让用户点击这个页面来提交我们的信息。或者建网站,让用户访问网站页面,进而提交请求。

    这里访问页面会有一个提交按钮,可以美化页面,诱导用户提交。或者添加js脚本,自动提交

    丙.CRSF(token)

    修改信息提交参数

    抓包看看

    以get方式提交的信息,中间包含了token值。

    老方法,抓包看看token值有没有规律。

    向服务器请求网页后,查看服务器响应包

     

    服务器返回了一个随机的token值,然后客户端提交的信息中带有一个token值,和请求页面时服务器回包中的值一样。

    想要伪造请求必须带上相关信息。

  • 相关阅读:
    java7或java8新特性
    反射中,Class.forName和ClassLoader区别
    &和&&的区别
    JAVA时区问题总结
    索引失效原因及解决索引失效方法
    索引失效的7种情况
    MySQL Explain详解
    java switch
    java 生成注释文档
    spring 获取配置文件的值
  • 原文地址:https://www.cnblogs.com/pykiller/p/12671376.html
Copyright © 2011-2022 走看看