随笔分类 -  Reverse(逆向与反汇编)

摘要:测试文件:https://lanzous.com/icfcxtg 代码分析 unsigned __int64 __fastcall main(__int64 a1, char **a2, char **a3) { _QWORD *v3; // ST08_8 __int64 v5; // [rsp+1 阅读全文
posted @ 2020-05-09 17:40 Hk_Mayfly 阅读(1130) 评论(2) 推荐(1)
摘要:测试文件:https://lanzous.com/b07rkpdud 签到 代码分析 int __cdecl main(int argc, const char **argv, const char **envp) { __int64 v3; // rdx __int64 v4; // rcx in 阅读全文
posted @ 2020-05-05 16:13 Hk_Mayfly 阅读(3202) 评论(0) 推荐(0)
摘要:测试文件:https://lanzous.com/ic9ox7a SMC自修改代码 代码分析 首先,我们使用插件Findcript可以发现,这段程序中存在的加密方式: 去混淆 1 void __fastcall __noreturn main(__int64 a1, char **a2, char 阅读全文
posted @ 2020-05-05 01:01 Hk_Mayfly 阅读(1635) 评论(0) 推荐(2)
摘要:测试文件:https://lanzous.com/ic34tzi 代码分析 // local variable allocation has failed, the output may be wrong! int __cdecl main(int argc, const char **argv, 阅读全文
posted @ 2020-04-29 23:58 Hk_Mayfly 阅读(1184) 评论(5) 推荐(0)
摘要:测试文件:https://lanzous.com/ic33b6f 代码分析 int func() { int result; // eax int v1; // [esp+14h] [ebp-44h] int v2; // [esp+18h] [ebp-40h] int v3; // [esp+1C 阅读全文
posted @ 2020-04-29 23:33 Hk_Mayfly 阅读(1413) 评论(1) 推荐(0)
摘要:Bendy 问题 import java.util.*; public class bendy { public static void main(String args[]) { Scanner scanner = new Scanner(System.in); System.out.print( 阅读全文
posted @ 2020-04-29 23:27 Hk_Mayfly 阅读(319) 评论(1) 推荐(0)
摘要:测试文件:https://lanzous.com/ibuflzc 手工还原 这道题没办法,只能自己结合dis.dis手工还原代码。得到: # -*- coding:utf-8 -*- # 8 arr0 = [249, 91, 149, 113, 16, 91, 53, 41] # 20 arr1 = 阅读全文
posted @ 2020-04-23 23:08 Hk_Mayfly 阅读(647) 评论(0) 推荐(0)
摘要:测试文件:https://lanzous.com/ibh1vch 代码分析 void __noreturn start() { DWORD NumberOfBytesWritten; // [esp+0h] [ebp-4h] NumberOfBytesWritten = 0; hFile = Get 阅读全文
posted @ 2020-04-16 11:51 Hk_Mayfly 阅读(1120) 评论(0) 推荐(0)
摘要:测试文件:https://lanzous.com/ibh0xhi 脱壳 获取信息 32位文件 upx壳 代码分析 看名字就知道,应该就是用几个符号代表方向,让我们走迷宫。打开字符串窗口看了看 星号那段就是迷宫了,总共70个字符。 找到main函数,发现0x40102E有莫名的指令,直接使用OD no 阅读全文
posted @ 2020-04-16 11:37 Hk_Mayfly 阅读(1206) 评论(9) 推荐(0)
摘要:测试文件:https://lanzous.com/ibeasxg 代码分析 int __cdecl main(int argc, const char **argv, const char **envp) { int v3; // esi int result; // eax int v5; // 阅读全文
posted @ 2020-04-15 00:33 Hk_Mayfly 阅读(1441) 评论(0) 推荐(0)
摘要:测试文件:https://www.lanzous.com/ib5y9cb 代码分析 1 __int64 __fastcall main(__int64 a1, char **a2, char **a3) 2 { 3 signed int i; // [rsp+8h] [rbp-68h] 4 sign 阅读全文
posted @ 2020-04-09 20:33 Hk_Mayfly 阅读(2169) 评论(8) 推荐(0)
摘要:测试文件:https://www.lanzous.com/ib515vi 脱壳 获取到信息 32位文件 upx加密 代码分析 1 int __cdecl main(int argc, const char **argv, const char **envp) 2 { 3 char v4; // [e 阅读全文
posted @ 2020-04-09 01:46 Hk_Mayfly 阅读(2248) 评论(2) 推荐(0)
摘要:测试文件:https://www.lanzous.com/ib50p4f 代码分析 在题目中已经提到了对代码进行Fuck混淆,因此对于if中的代码,我们只需要解码,让flag满足要求即可。 第一种解法 http://codertab.com/JsUnFuck 可以到这个网站,将混淆的代码一部分一部分 阅读全文
posted @ 2020-04-09 01:18 Hk_Mayfly 阅读(799) 评论(0) 推荐(1)
摘要:测试文件:https://www.lanzous.com/ib50fkb 文件分析 IDA打开后,在Function Window里面找到ques()函数就是输出我们的flag。我们可以通过调试修改EIP地址到ques函数(0x00401520)输出flag int ques() { int v0; 阅读全文
posted @ 2020-04-09 01:04 Hk_Mayfly 阅读(519) 评论(0) 推荐(0)
摘要:测试文件:https://www.lanzous.com/ib3grre 代码分析 <input type="text" name="flag" id="flag" value="Enter the flag" /> <input type="button" id="prompt" value="C 阅读全文
posted @ 2020-04-07 20:52 Hk_Mayfly 阅读(943) 评论(0) 推荐(0)
摘要:测试文件:https://www.lanzous.com/ib3elba 脱壳 获取信息 64位文件 upx加壳 代码分析 1 __int64 sub_400E28() 2 { 3 const char *v0; // rdi 4 __int64 result; // rax 5 __int64 v 阅读全文
posted @ 2020-04-07 20:01 Hk_Mayfly 阅读(1309) 评论(2) 推荐(0)
摘要:测试文件:https://www.lanzous.com/ib3e6ih 代码分析 这出题人真是个人才,打开一次笑一次,奥利给。 这道题找对文件分析就行,dnSpy打开Assembly-CSharp.dll文件 1 using System; 2 using System.Security.Cryp 阅读全文
posted @ 2020-04-07 19:47 Hk_Mayfly 阅读(1039) 评论(4) 推荐(0)
摘要:测试文件:https://www.lanzous.com/ib3dq9c 代码分析 1 BOOL __stdcall DialogFunc(HWND hWnd, UINT a2, WPARAM a3, LPARAM a4) 2 { 3 CHAR String; // [esp+0h] [ebp-64 阅读全文
posted @ 2020-04-07 19:34 Hk_Mayfly 阅读(1006) 评论(2) 推荐(0)
摘要:测试文件:https://www.lanzous.com/ib3cxpe 去混淆 获取到信息: 有混淆 .NET文件 使用de4dot去混淆。 代码分析 找到flag相关的函数 代码第45行和第51行实际就是对输入进行SHA1加密结果的比较,反向解密就行。 第一部分解密:314159,去除3,9得到 阅读全文
posted @ 2020-04-07 19:07 Hk_Mayfly 阅读(710) 评论(1) 推荐(1)
摘要:测试文件:https://www.lanzous.com/iaxqvbg 代码分析 1 int __usercall wmain@<eax>(int a1@<ebx>) 2 { 3 FILE *v1; // eax 4 FILE *v2; // eax 5 char v4; // [esp+3h] 阅读全文
posted @ 2020-04-03 00:12 Hk_Mayfly 阅读(1953) 评论(1) 推荐(0)