题目文件:https://lanzous.com/icwp75g
思路
查找字符串,将flag{}处的汇编代码转换为函数(选中区域,按P键)
主要就两个过程
第一个过程,使用0kk`d1a`55k222k2a776jbfgd`06cjjb和SS异或,得到c8837b23ff8aaa8a2dde915473ce0991,md5解密得到String1=123321
接着使用String1与v13同样,异或,得到flag
脚本
# -*- coding:utf-8 -*- a = "0kk`d1a`55k222k2a776jbfgd`06cjjb" b = "SS" s = '' for i in range(len(a)): s += chr(ord(a[i]) ^ ord(b[i % 2])) print (s) c = [0x57, 0x5E, 0x52, 0x54, 0x49, 0x5F, 0x01, 0x6D, 0x69, 0x46, 0x02, 0x6E, 0x5F, 0x02, 0x6C, 0x57, 0x5B, 0x54, 0x4C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x53, 0x53, 0x00, 0x00, 0x30, 0x6B, 0x6B, 0x60, 0x64, 0x31, 0x61, 0x60, 0x35, 0x35, 0x6B, 0x32, 0x32, 0x32, 0x6B, 0x32, 0x61, 0x37, 0x37, 0x36, 0x6A, 0x62] d = '123321' flag = '' for i in range((len(c))): flag += chr(c[i]^ord(d[i % len(d)])) print (flag)
get flag!
flag{n0_Zu0_n0_die}