
逆向工程
文章平均质量分 73
lsaturn
游戏人
展开
-
iceman写的关于Debug API的文章,特别是关于CONTEXT结构的描述,有空再翻译(转贴)
转自http://www.woodmann.com/fravia/iceman1.htm WIN32 - Inside Debug API ------------------------ (Things you need to know: the mysterious翻译 2004-09-08 22:45:00 · 3015 阅读 · 0 评论 -
擦除模块痕迹
对于擦除模块痕迹,我实验了两种方法,下面一一阐述:1.修改PEB结构,用代码说话typedef struct _PEB_LDR_DATA ...{ ULONG Length; BOOLEAN Initialized; BYTE reserved[3]; PVOID SsHandle; LIS原创 2006-07-15 11:30:00 · 1653 阅读 · 0 评论 -
关于Int 2E
下面是反汇编ntdll.dll的NtCreateEvent部分 NtCreateEvent调用了int 2EExported fn(): NtCreateEvent - Ord:005AhExported fn(): ZwCreateEvent - Ord:02E2h:77F83219 B81E000000 mov eax, 0000001E:77F8321E 8D5424转载 2006-07-14 16:36:00 · 3255 阅读 · 0 评论 -
Windows NT下和Windows 9x下DLL的存在形式
最近看到了一个模拟LoadLibrary的代码,其中有这么一段 if(g_bIsWinNT) ...{ // === Windows NT DLL Loading (supports shared sections) === if(svMappingName!=NULL) ...{ hmapping=OpenFileMapping(FILE_MAP_WRITE,TRUE,sv原创 2006-07-11 14:45:00 · 1349 阅读 · 0 评论 -
如何写自己的壳
--------------------------------------------------------------------------------Writing Your Own Packer - by BigBoote --------------------------------------------------------------------------------In翻译 2006-07-06 15:11:00 · 5460 阅读 · 1 评论 -
如何anti_anti_hardware_breakpoint
之前我写过一篇利用SEH异常清硬件断点,看来真的是有矛就有盾啊,发现了一篇英文文章,专门讲如何anti_anti_hardware_breakpoint(很拗口吧?翻译成中文就是如何对付那些防止我们下硬件断点的程序).Chapter 1Hardware breakpoint Hardware breakpoints or BPM(Breakpoint on Memory)翻译 2006-07-05 15:29:00 · 2872 阅读 · 0 评论 -
How Do Windows NT System Calls REALLY Work?--Windows NT的系统调用究竟是如何工作的?
出处: http://www.codeguru.com/Cpp/W-P/system/devicedriverdevelopment/article.php/c8035/ Most texts that describe Windows NT system calls keep many of the important details in the dark. This lea翻译 2006-07-03 01:10:00 · 3339 阅读 · 0 评论 -
避免FindWindow/EnumWindows/EnumChildWindows的检测的试验手记
怎么感觉自己在做病毒呐?最近对于悄悄地干坏事比较感兴趣,那么我离病毒还差什么呐?自定位的代码有了,但是书写一个自定位代码无疑是个非常麻烦的事情,所以我想或许我还需要自己完成LoadLibrary做的工作,这样可以达到代码隐藏的目的,也不会破坏把软件工程奉为圭臬的我的审美观。然后是尽量隐藏自己,这个隐藏的手段太多了,慢慢来吧,加油~至于传播和破坏倒不是我特别关心的,希望不要抓我。原创 2006-06-30 22:56:00 · 5099 阅读 · 1 评论 -
打造对抗 OpenProcess 检测的 OD
有些壳, 如 ExeCrypter 2.2.x 用 OpenProcess("CSRSS.EXE") 的方法来检测 OD.其原理如下:普通进程是没有 SeDebugPrivilege 的, 这时 OpenProcess(系统进程) 不能成功.但用 OD 调试时, OpenProcess(系统进程) 成功, 壳利用这一点来检测 OD.我们先来看两个例子.第一个例子test.exe=========转载 2006-06-30 10:23:00 · 2362 阅读 · 1 评论 -
可以自己实现重定位的代码
在病毒里面经常会使用到这种技术,因为病毒的启动往往不是通过windows来加载,那么各个地址的重定位也就需要手工来完成,如果代码本身就具备重定位功能的话,那么手工加载病毒就会容易的多,可以轻易把病毒塞入一块任意的由VirtualAlloc分配的内存. 经典的代码是这样的 call delta ;/原创 2006-06-28 10:16:00 · 2042 阅读 · 0 评论 -
利用SEH异常清硬件断点
SEH("Structured Exception Handling"),即结构化异常处理.是操作系统提供给程序设计者的强有力的处理程序错 误或异常的武器.在VISUAL C++中你或许已经熟悉了_try{} _finally{} 和_try{} _except {} 结构,这些并不是 编译程序本身所固有的,本质上只不过是对windows内在提供的结构化异常处理的包装. 发生异常原创 2006-06-23 15:36:00 · 3044 阅读 · 0 评论 -
代码的远程调用
代码的远程调用涉及到以下技术难点1.代码的拷贝:DWORD CodeSize = 0;DWORD CodeStart = 0;_asm...{ mov eax, _end sub eax, _begin mov CodeSize, eax mov eax, _begin mov CodeStart, eax jmp _end_begin: //此处是具原创 2006-09-01 17:24:00 · 3338 阅读 · 0 评论 -
Windows程序中的字符编码
我们在使用和安装Windows程序时,有时会看到以“2052”、“1033”这些数字为名的文件夹(如Office),这些数字似乎和字符集有关,但它们究竟是什么意思呢?研究这个问题的同时,又会遇到其它问题。我们会谈到Windows的内部架构、Win32 API的A/W函数、Locale、ANSI代码页、与字符编码有关的编译参数、MBCS和Unicode程序、资源和乱码等,一起经历这段琐碎细节为主,间转载 2006-08-25 15:39:00 · 4622 阅读 · 0 评论