題目文件: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}