• 2019"深思杯"山东省大学生网络安全技能大赛部分wp


     签到

    载入OD查看字符串

    上下左右

    这道题出来的时候真的是一点思路都没有,一直以为是什么编码来着,看了大佬们的 wp 原来是画图

    拿大佬的脚本:

    from PIL import Image
    im = Image.new('RGB',(1000,1000),'black')
     #把flag中的字母读出来
    file = open('flag.txt')
    line = file.readline()
    a = [300,300] #起始位置
    #把flag[0]当做左右移动 flag[1]当做上下移动
    for i in line:
        if i == 'D':
            a[1] = a[1]+1
        if i == 'U':
            a[1] = a[1]-1
        if i == 'R':
            a[0] = a[0]+1
        if i == 'L':
            a[0] = a[0]-1
        im.putpixel(a ,(255,255,255)) ## putpixel是通过坐标点来进行画图
    ##刚开始是按照惯例 让i == 'u' +1 画出来是个倒立的图形 所以只能让 ‘D'+1
    im.show()
    ​
    来自这里:
    https://blog.csdn.net/qq_43559371/article/details/102907525

    话说这么抽象,我估计当时就算我写出来了也要试很多遍

    压缩包的秘密

        拿到一个压缩包但是打不开,用winhex看了一下文件头反了,就改了文件头,又试了试还是打不开。

        发现有些东西,比如:flag.txt 也是乱序的,也把他们反过来了,结果试了试还是不行,突然想到,不会是全都反过来吧!?因为不会写脚本手动一点一点改完了,试了试打开了

        同时反转后末尾是BASE64:there-is-half-pwd-shensi

        全选压缩包注释,看了一下好像是摩斯密码

    放在 sublime 里面(后面应该是加上那一个空格的)

    转一下:THERE-IS-HALF-PWD-SDNISC

        当时两部分密码怎么拼都提示密码错误,试了各种拼法都不行。结果昨天一看是我两两互换的时候有一个地方写反了,压缩包可以正常打开但是密码验证不通过

        在找 wp 的时候还发现一种压缩包密码破解方式:掩码攻击,这样在知道一部分的时候可以减少工作量

    https://blog.csdn.net/weixin_43211186/article/details/102943733

    ps. 复现的时候还发现一个更快捷的反转方法:

    特别方便(菜鸡写不了脚本只能用这种办法了

    啾咪

        用 Stegsolve 分析,在下面这张图的设置的时候发现 flag(之前查看通道的时候顶部有些像摩斯密码的东西,但是没去试,也不知道能不能做出来)

    Base64 解码得到 flag

    我和我的祖国

    用 Audacity 打开,放大以后看到结尾一段是这样的

    把上面的点作为 1,下面的点作为 0,保存出来如下:

    0110011001101100011000010110011101111011011001100110010100111000011001100110010000110100001101100011100000110010001100000011010100110001001100110110001000110101001101000110001101100100011001000011010100111001011000100011000000110100001110000011010100110111001100010011100101100110001110010011010001111101
    
    

    ps. 看山科大师傅们解法是:

        winhex 最下面的数据如下,比赛的时候看到过,但是没有想过去替换成 0 1 的形式

    你真的很不错

        当时这个解压出来是个视频,我还以为又要用 pr 一帧一帧的看,然而太长了,看了一分多钟放弃了,事实证明也确实不是

        特别服气自己,当时好像都放出提示用 winrar 解压了,竟然没有想到 ntfs 数据流隐写,看到 wp 那一刻,我都自闭了!!

        用 winrar 解压给的压缩包,然后直接扫描所在的文件夹

    就可以看到 flag.png 了,然后直接导出查看就可以

    简单密码学

        当时看到以后想到是培根密码,但是把小写换成 A,大写换成 B 以后,用了两个工具解出来的都不是,后来比赛结束跟队友交流发现米斯特的工具可以正常解出来

    被加密的消息

        本来如果是普通的 AES 加密还能用收藏的脚本解出来,但是有个 dp?没见过啊!!

        然而,看了师傅们的 wp 好像是个很常规的题目,啊!?无所谓了,密码学的题本就没接触过几道

    web 铜牌:简单的 web

    查看源代码(好像是来)发现提示:另一种方式(没有截图)

        使用 Post 传参 id=1得到弹窗提示 351358435354354.php,访问 351358435354354.php 提示:请使用唯一指定浏览器(sdnisc)

    改请求头

    访问得到源代码:

    <?php 
    include('flag.php');//key & flag
    if (strstr($_SERVER["HTTP_USER_AGENT"],'sdnisc')){
        if (isset($_POST['message'])) {
        $message = json_decode($_POST['message']);
        if ($message->key == $key && md5($message->md5) == $message->key) {
            echo $flag;
        }
         else{
         echo "~~~~";
         }
         }
        highlight_file(__FILE__);
    }
    else{
        echo "请使用唯一指定浏览器(sdnisc)";
    }
    ?>

       

       首先是 json_decode() ,所以要发 encode 的,看到 == ,尝试了一下弱类型传参 message={"key":0,"md5":0}

    附见过的几篇 wp:

    https://mp.weixin.qq.com/s/c30nvWLOkO9vioCcp5vagg 
    https://mp.weixin.qq.com/s/CvBu9_jQIrTHdUF7me3YGg
    https://blog.csdn.net/qq_43559371/article/details/102907525
    https://blog.csdn.net/weixin_43211186/article/details/102943733
    https://blog.csdn.net/missmengjin/article/details/102876933
  • 相关阅读:
    Java中的==和equals区别
    2014年06月30日
    20140625&nbsp;20:39
    20140627&nbsp;20:47
    2014年06月30日
    20140628&nbsp;16:07
    hdu 1418 抱歉 (数学)
    hdu 1302 The Snail (模拟)
    hdu 1391Number Steps
    hdu 1395 2^x mod n = 1
  • 原文地址:https://www.cnblogs.com/yichen115/p/11815085.html
Copyright © 2020-2023  润新知