• 2018全国大学信息安全竞赛wp(2misc+2crypto+1web)


    WEB:

    0x00 easyweb

    admin用户是没有密码的,但是当密码为空时,网页会自动填写。用hackbar构造空密码post,服务器返回cookies,浏览器保存,刷新获得flag

     

     CRYPTO:

    0x01 flag_in_your_hand

    输入token调用js加密,比较。正确返回flag。加密方式是md5,返回的flag是一串base64

    Jscheck方法,暴露了数组,python还原。输入

     

    0x02 oldstreamgame

    流密码,32mask,816进制flag2^32爆破不可取。读脚本。

    1.主函数第一个循环即写入100字节,第二个循环通过将tmp循环左移+output(^output)变为8位,写入文件。

    2.Lfsr函数输入(R,mask),输出(output,lastbit)R初始为flag,长32位,每经过一次函数,R=output=(R*2)%2**32+lastbit即循环左移末尾补上lastbitmask32位不变。lastbit长度1位,有点类似于差分曼彻斯特编码,i=R&mask,i的末位为1时会发生跳变,为0时保持原数。在这个发过程中发现,当i1为奇数时为lastbit1,为偶数时为0

    总结出这些规律后,不难发现key只有前32字节是直接与flag有关。后面的字节是后来补上的lastbit加密而成。所以利用这一特点,循环右移,计算奇偶,算出flag

    贴出解密脚本和验证

     

    Misc:

    0x03 picture

    Binwalk -eM 扫出一段数据,打开里面是base64python解码保存为一个文件

     

    Winhex查看16进制,发现有点像zip压缩包,但头部为4B50,所以修改头部和后缀打开。

     

     

    根据注释获得密码  integer division or modulo by zero

     

    打开code,发现为uuencode,解码

     

    0x04 验证码

    输入32token与验证码获得flag

     

  • 相关阅读:
    Xenu Link Sleuth简单使用
    C#简单游戏外挂制作(以Warcraft Ⅲ为例)
    Silverlight InkPresenter 实现路径回放的探索
    Microsoft Virtual Earth Silverlight Map Control (CTP)快速上手
    【Azure实例】有趣的Silverlight应用:录播简笔画
    Azure Services Platform 入门系列文章索引页
    javascript原型的类继承
    javascript给类添加的方法
    checkbox 全选
    【nodejs】 在 Ubuntu 12.04 安裝 Node.js【转】
  • 原文地址:https://www.cnblogs.com/kagari/p/8972122.html
Copyright © 2020-2023  润新知