zoukankan      html  css  js  c++  java
  • 攻防世界-debug

    PEID查  .NET  直接ilspy反编译,很直观的代码。理清逻辑。

    主函数:

     经过一个函数(函数名乱码)对字符串变量a_进行变换,并将结果存入b中,最后将输入与b比较。

    函数二:

     依次取字符串的每个字符,并通过某函数(函数三)进行转换,每个字符循环变换14次。最后对变换后的字符串进行md5加密(函数四)

    函数三:

    刚开始没看清A_1有中括号,以为是从1到14直接异或。其实是与数组下标1到15的数值进行异或。

    函数四:

     都是系统函数,进行md5加密。

    给出python解密代码:

    import hashlib

    s = "CreateByTenshine"
    s1 = [3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47]
    result = ""
    for i in s:
    x = i
    for j in range(14):
    x = chr(int(ord(x)) ^ s1[j])
    result += x
    a = hashlib.md5()
    a.update(result.encode(encoding='utf-8'))
    print("flag{"+a.hexdigest()+"}")

     本题只要知道使用什么工具就会非常简单。最后发现一个更简单的,秒解。

    dnspy打开,下断点,直接运行,flag就出来了。太强了。。。

    flag只能提交大写,emmmmmm

  • 相关阅读:
    os.fork()
    解决方案:WindowsError: [Error 2]
    Python遍历文件夹和读写文件的方法
    导航帖
    IDEA后缀补全及快捷键
    Codeforces-Round#614 Div2
    图论算法-欧拉回路 专题训练
    快速求出n!质因数的个数
    Codeforces-Round#589 Div2
    洛谷P3386二分图匹配
  • 原文地址:https://www.cnblogs.com/whitehawk/p/11643727.html
Copyright © 2011-2022 走看看