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值,和请求页面时服务器回包中的值一样。

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

  • 相关阅读:
    crt中文乱码
    idea使用git版本控制忽略部分文件
    Springboot配置redis连接池参数
    redis通过lua脚本实现分布式锁
    jodaTime的使用
    jmap的使用
    代理服务器没有响应解决方案
    C/C/C++中暂停调试的三种方法C++中暂停调试的三种方法
    C/C/C++中暂停调试的三种方法C++中暂停调试的三种方法
    四种常见的post请求中的参数形式
  • 原文地址:https://www.cnblogs.com/pykiller/p/12671376.html
Copyright © 2011-2022 走看看