Newstar Re wk1 wpNewstar Re wk1 wp
练一下markdown语法(有些地方明显是为了使用markdown语法而硬造的)
begin
引导新手使用IDA Pro。
用IDA Pro打开,根据英语引导可知flag分为三部分,依次寻找:
第一部分:点进&flag_part1,可找到第一部分。使用小端序存储所以要倒着看(一般直接用
Shift+E提取即可)。
第二部分:使用Shift+F12进入字符串窗口,可找到第二部分。
第三部分:使用flag第二部分字符串的函数是flag_part2(),交叉引用来到引用它的函数,函数名即为第三部分。
将上述三部分拼在一起即可。
base64
base64解码。拖入IDA Pro,定位到关键函数去看字符串,看到换过的表和密文,于是使用赛博厨子进行解密即可。
Simple_encryption
简单算法逆向。拖入IDA Pro看主函数,发现加密算法,即下标为3的倍数的字符-31,模3为1的字符+41,模3为2的字符^0x55u。提取密文,写程序逆向即可。
//我是脚本 #include<bits/stdc++.h> using namespace std; char buffer[] =
{
0x47, 0x95, 0x34, 0x48, 0xA4, 0x1C, 0x35, 0x88, 0x64, 0x16,
0x88, 0x07, 0x14, 0x6A, 0x39, 0x12, 0xA2, 0x0A, 0x37, 0x5C,
0x07, 0x5A, 0x56, 0x60, 0x12, 0x76, 0x25, 0x12, 0x8E, 0x28,
0x00, 0x00
};
int main()
{
for(int i=0;i<strlen(buffer);i++) switch(i%3)
{
case 0:printf("%c",buffer[i]+31); break;
case 1:printf("%c",buffer[i]-41); break;
case 2:printf("%c",buffer[i]^0x55u);
}
return 0;
}
ezAndroidStudy
安卓逆向学习。用模拟器打开后发现一个旋转的小猫 (使用高亮下划线加粗的原因首先是因为猫很 可爱,其次使用这些格式,才知道你吃的是Markdown!)。
根据引导寻找,下表为各部分flag对应的位置。
flag位置 | flag内容 |
flag{Y0u |
flag位置 | flag内容 |
_@r4 | |
_900d | |
_andr01d | |
(使用IDA Pro打开So文件) | _r4V4rs4r} |
拼在一起即可。
ez_debug
简单调试,建议使用x64dbg,在字符串页面找关键字符串。找到Decrypt flag下断点,跑程序,在 R9寄存器找到flag即可。
END