逆向工程
未读
逆向攻防世界CTF系列61-APK-逆向2
逆向攻防世界CTF系列61-APK-逆向2 32位,C#写的 dnSpy打开,定位 一眼看到Success和Ctf 仔细看看Main,再运行一下,发现需要连接,后面才能运行,因此我们先连接一下 private static void Main(string[] args)
逆向工程
未读
逆向攻防世界CTF系列60-The_Maya_Society
逆向攻防世界CTF系列60-The_Maya_Society 64位无壳,zip下的其它文件浏览一遍,没发现什么线索,先看IDA __int64 __fastcall main(int a1, char **a2, char **a3){
size_t v3; // rbx
size_t v
逆向工程
未读
逆向攻防世界CTF系列59-reverse-for-the-holy-grail-350
逆向攻防世界CTF系列59-reverse-for-the-holy-grail-350 64位,无壳 int __fastcall main(int argc, const char **argv, const char **envp)
{
int valid; // ebx
int v4
逆向工程
未读
逆向攻防世界CTF系列58-serial-150
逆向攻防世界CTF系列58-serial-150 64位无壳 想着是不是被加密了 查了资料发现这种代码和数据混合的就是花指令。对于第一个红框中jz short near ptr loc_4009F3+2无法执行加法指令,所以直接从loc_4009F3处反汇编,一个指令错了,后面空间全部错误。 动态调
逆向工程
未读
逆向攻防世界CTF系列57-babymips
逆向攻防世界CTF系列57-babymips 32位无壳,IDA8.3打开不能反编译,使用7.5打开 int __fastcall main(int a1, char **a2, char **a3){
setbuf((FILE *)stdout, 0);
setbuf((FILE *)st
逆向工程
未读
逆向攻防世界CTF系列56-easy_Maze
逆向攻防世界CTF系列56-easy_Maze 64位无壳,看题目就知道是迷宫问题了 int __fastcall main(int argc, const char **argv, const char **envp){
__int64 v3; // rax
int v5[7][7]; /
逆向工程
未读
逆向攻防世界CTF系列55-Replace
逆向攻防世界CTF系列55-Replace 32位,upx壳 int __cdecl main(int argc, const char **argv, const char **envp){
char Buffer[40];
memset(Buffer, 0, sizeof(Buffer)
逆向工程
未读
逆向攻防世界CTF系列54-crypt
逆向攻防世界CTF系列54-crypt 64位无壳 int __fastcall main(int argc, const char **argv, const char **envp){
strcpy(Str, "12345678abcdefghijklmnopqrspxyz");
mem
逆向工程
未读
逆向攻防世界CTF系列52-Newbie_calculations
逆向攻防世界CTF系列52-Newbie_calculations 32位,无壳 我们得到的信息是,32位初始值赋为1,然后很多函数重复,这是一个生成flag的题型 _DWORD *__cdecl sub_A31100(_DWORD *a1, int a2){
v4 = *a1;//1
v5
逆向工程
未读
逆向攻防世界CTF系列51-easyre-xctf
逆向攻防世界CTF系列51-easyre-xctf upx,64位,脱壳 XPU{galfd_0n3_4nd_tw0} 有点怪,提交错了 后来想起来是小端序 flag{UPXd_0n3_4nd_tw0}} 还是错了,发现还有一块 flag{UPX_4nd_0n3_4nd_tw0}