Category: 零散的一些题目

分析一个二元函数加密的cm

环境配置 系统 : win10 64bit \ Linux kali 4.15.0-kali2-amd64 程序 : cztria-1.rar 要求 : 写出注册机 使用工具 :ida pro \ kail 自带的字典 \ peid 开始分析 拿信息 使用peid查看exe的信息: MASM32 / TASM32 显示是用了汇编语言写的,还挺复杂,而且这说明不能完全相信ida里F5出来的结果,必要时还是要人工分析关键的汇编代码。 静态分析 使用ida打开文件,等待分析完成后查看字符串列表(Shift + F12): Address Length Type String .rdata:0040223C 0000000D C KERNEL32.DLL .rdata:00402249 0000000A C GDI32.dll .rdata:00402253 0000000C C SHELL32.dll .rdata:0040225F 0000000B C USER32.dll .data:00403000 […]

安恒杯月赛 2019-01 Old-drive write up

环境配置 系统 : win10 64bit 程序 : Old-drive.zip or Old-drive.zip 要求 : 输入口令 使用工具 :ida pro 开始分析 静态分析 使用ida载入程序,发现主流程如下: int __cdecl main(int argc, const char **argv, const char **envp) { int i; // ecx signed int v4; // eax char v6; // [esp+0h] [ebp-40h] char Dst; // [esp+1h] [ebp-3Fh] char v8; // [esp+27h] [ebp-19h] int […]

一道油田ctf比赛的算法逆向题解

环境配置 系统 : Linux ubuntu 4.4.0-116-generic \ win10 64bit 程序 : encry_algo 要求 : 输入口令 使用工具 :ida \ pysm4 开始分析 静态分析 使用ida载入程序: signed int __cdecl sub_804934A(int a1) { int v1; // eax //省略部分代码 qmemcpy(&v8, “Please input your flag: “, 0x190u); v1 = sub_805C180(&v8); printf_806E0A0(1, (int)&v8, v1); scanf_806E030(0, (int)&my_str, 16); sub_8049076(&v7, (int)&v12); sub_804911A((int)&v7, 1, 16, (char […]

网鼎杯CTF Martricks

环境配置 系统 : Linux kali 4.6.0-kali1-amd64 程序 : 1.1 要求 : 输入口令 使用工具 :ida \ angr \ z3 解法一 主要流程 使用ida了解程序结构如下: __int64 __fastcall main(__int64 a1, char **a2, char **a3) { unsigned __int8 v4; // [rsp+Bh] [rbp-E5h] signed int v5; // [rsp+Ch] [rbp-E4h] signed int v6; // [rsp+10h] [rbp-E0h] int v7; // [rsp+14h] [rbp-DCh] signed int […]

高校运维赛 2018 Hide and Seek

环境配置 系统 : Windows 10 \ Linux kali 4.6.0-kali1-amd64 程序 : 2.2 要求 : 输入口令 使用工具 :ida \ pin 开始分析 使用ida载入程序查看主流程: signed __int64 __fastcall main(__int64 a1, char **a2, char **a3) { signed __int64 result; // rax char *v4; // [rsp+18h] [rbp-18h] if ( mprotect( (void *)((unsigned __int64)sub_400647 & 0xFFFFFFFFFFFFF000LL), (((unsigned __int64)main + 4096) & 0xFFFFFFFFFFFFF000LL) […]

简单分析南宁杯 SMC.exe

环境配置 系统 : Windows xp 程序 : SMC 要求 : 输入口令 使用工具 :IDA pro \ peid 开始分析 使用peid查看exe属性: Microsoft Visual C++ 6.0 再用peid的密码学插件查看信息,点击拓展信息 -> 插件 -> krypto analyzer: BASE64 table :: 0000805C :: 0040805C Referenced at 004010CC Referenced at 004010ED Referenced at 00401105 Referenced at 0040110F 发现程序很有可能使用了base64编码,这里先用ida载入程序查看main函数: int __cdecl main(int argc, const char **argv, const […]