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

  • 相关阅读:
    利用string 字符串拷贝
    新手学vim配置
    进程描述符task_struct
    并查集
    堆Heap
    Bitset位图
    排序
    sql时间查询
    javascript 中的 call
    css 笔记——设置禁用中文输入法
  • 原文地址:https://www.cnblogs.com/whitehawk/p/11643727.html
Copyright © 2011-2022 走看看