From 53ae0bd58a33901eaba47d2656e4495a7f90f428 Mon Sep 17 00:00:00 2001
From: Cool-Y <1072916769@qq.com>
Date: Mon, 1 Apr 2019 15:38:49 +0800
Subject: [PATCH] Site updated: 2019-04-01 15:38:40
---
2019/03/28/逆向工程实验/index.html | 7 +++++--
search.xml | 2 +-
sitemap.xml | 2 +-
3 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/2019/03/28/逆向工程实验/index.html b/2019/03/28/逆向工程实验/index.html
index 94b2c098..82f526bd 100644
--- a/2019/03/28/逆向工程实验/index.html
+++ b/2019/03/28/逆向工程实验/index.html
@@ -96,7 +96,7 @@
-
+
@@ -523,7 +523,10 @@
检测NTGlobalFlag
-- 系统痕迹检测
通常,我们使用调试工具来分析程序,但这些工具会在系统中驻留一些痕迹。程序通过搜索这种系统的痕迹,来确定你是否试图分析它。例如,查找调试器引用的注册表项。同时,程序也可以查找系统的文件和目录,查找当前内存的痕迹,或者查看当前进程列表,更普遍的做法是通过FindWindows来查找调试器。识别调试器的行为
在逆向工程中,可以使用断点或单步调试来帮助分析,但执行这些操作时,会修改进程中的代码。因此可以使用几种反调试技术探测INT扫描、完整性校验以及时钟检测等几种类型的调试器行为。
+- 系统痕迹检测
通常,我们使用调试工具来分析程序,但这些工具会在系统中驻留一些痕迹。程序通过搜索这种系统的痕迹,来确定你是否试图分析它。例如,查找调试器引用的注册表项。同时,程序也可以查找系统的文件和目录,查找当前内存的痕迹,或者查看当前进程列表,更普遍的做法是通过FindWindows来查找调试器。
+
+识别调试器的行为
在逆向工程中,可以使用断点或单步调试来帮助分析,但执行这些操作时,会修改进程中的代码。因此可以使用几种反调试技术探测INT扫描、完整性校验以及时钟检测等几种类型的调试器行为。
+
- INT扫描
调试器设置断点的基本机制是用软件中断INT 3,机器码为0xCC,临时替换程序中的一条指令。因此可以通过扫描INT 3修改来检测。
- 执行代码校验和检查
与INT扫描目的相同,但仅执行机器码的CRC或MD5校验和检查。
- 时钟检测
被调试时,进程的运行速度大大降低,常用指令有:rdstc
QueryPerformanceCounter
GetTickCount
,有如下两种方式探测时钟:
diff --git a/search.xml b/search.xml
index c35c476b..399c2ea0 100644
--- a/search.xml
+++ b/search.xml
@@ -3,7 +3,7 @@
%2F2019%2F03%2F28%2F%E9%80%86%E5%90%91%E5%B7%A5%E7%A8%8B%E5%AE%9E%E9%AA%8C%2F
-
+
二进制
diff --git a/sitemap.xml b/sitemap.xml
index 206e3ffd..6ac66528 100644
--- a/sitemap.xml
+++ b/sitemap.xml
@@ -4,7 +4,7 @@
https://cool-y.github.io/2019/03/28/%E9%80%86%E5%90%91%E5%B7%A5%E7%A8%8B%E5%AE%9E%E9%AA%8C/
- 2019-04-01T07:26:01.149Z
+ 2019-04-01T07:30:54.095Z