随笔分类 -  软件调试

Windows 下常见的反调试方法
摘要:稍稍总结一下在Crack或Rervese中比较常见的一些反调试方法,实现起来也比较简单,之后有写的Demo源码参考,没有太大的难度。 ①最简单也是最基础的,Windows提供的API接口:IsDebuggerPresent(),这API实际上就是访问PEB的BeingDebugged标志来判断是否处 阅读全文

posted @ 2016-02-16 21:54 _懒人 阅读(16548) 评论(4) 推荐(9)

一次病毒分析之旅
摘要:0x00 前言这个病毒应该是比较简单的,别人给我的样本,让我帮忙看看,看样子是很早的一个病毒,针对Windows XP系统的,行为分析很简单,但是想着不能就仅仅分析关键点,要不就把整个结构给逆向出来,弄了两天,搞的差不多了,简单的记录一下。0x01 基本介绍整个病毒是4个文件组成:27.exe,27... 阅读全文

posted @ 2016-01-04 20:58 _懒人 阅读(5062) 评论(17) 推荐(9)

Windows x86 下的 静态代码混淆
摘要:0x00 前言静态反汇编之王,毫无疑问就是Ida pro,大大降低了反汇编工作的门槛,尤其是出色的“F5插件”Hex-Rays可以将汇编代码还原成类似于C语言的伪代码,大大提高了可读性。但个人觉得“F5插件”只能作为一项辅助手段,在结合动态调试和静态分析之后,了解了整个函数的流程再利用F5看“C语言... 阅读全文

posted @ 2015-11-17 17:01 _懒人 阅读(2683) 评论(0) 推荐(3)

深入理解Windows X64调试
摘要:随着64位操作系统的普及,都开始大力进军x64,X64下的调试机制也发生了改变,与x86相比,添加了许多自己的新特性,之前学习了Windows x64的调试机制,这里本着“拿来主义”的原则与大家分享。本文属于译文,英文原文链接:http://www.codemachine.com/article_x... 阅读全文

posted @ 2015-08-28 00:54 _懒人 阅读(23444) 评论(3) 推荐(3)

Windows SEH学习 x86
摘要:windows提供的异常处理机制实际上只是一个简单的框架。我们通常所用的异常处理(比如C++的throw、try、catch)都是编译器在系统提供的异常处理机制上进行加工了的增强版本。这里先抛开增强版的不提,先说原始版本。 原始版本的机制很简单:谁都可以触发异常,谁都可以处理异常(只要它能看... 阅读全文

posted @ 2015-07-19 14:07 _懒人 阅读(5634) 评论(3) 推荐(0)

WinDbg调试流程的学习及对TP反调试的探索
摘要:基础知识推荐阅读《软件调试》的第十八章 内核调试引擎我在里直接总结一下内核调试引擎的几个关键标志位,也是TP进行反调试检测的关键位。KdPitchDebugger : Boolean 用来表示是否显示的抑制内核调试, 当启动项中包含 /NODEBUG选项时,这个变量会被置为 TRUEKdDebugg... 阅读全文

posted @ 2015-03-30 15:34 _懒人 阅读(6623) 评论(2) 推荐(0)

导航