首页 > TAG信息列表 > PEB

LyScript 通过PEB结构解析堆基址

LyScript中默认并没有提供获取进程堆基址的函数,不过却提供了获取PEB/TEB的函数,以PEB获取为例,可以调用dbg.get_peb_address(local_pid)用户传入当前进程的PID号,通常PID号可以使用dbg.get_process_id()函数得到,当得到了PEB进程环境块的基地址,那么获取堆基址就变得很简单了。 首先以

PEB断链隐藏模块

结构体介绍 _LDR_DATA_TABLE_ENTRY包含三个双向链表的结构体 1 typedef struct _PEB_LDR_DATA 2 { 3 ULONG Length; 4 BOOLEAN Initialized; 5 PVOID SsHandle; 6 LIST_ENTRY InLoadOrderModuleList; //模块加载顺序 7 LIST_ENTRY

IsDebuggerPresent的反调试与反反调试

一、调用系统的IsDebuggerPresent函数 (1)实现程序   最简单也是最基础的,Windows提供的API接口:IsDebuggerPresent(),这API实际上就是访问PEB的BeingDebugged标志来判断是否处于调试状态。   使用vs调试此段代码,弹出"检测到调试器"。 #include <stdio.h> #include <Windows.h> D

UBI子系统学习

UBI子系统 UBI子系统简介 UBI子系统是运行在mtd子系统之上的一个flash管理系统,对上层屏蔽了flash的一些特性(例如坏块管理、磨损平衡等),并且提供了UBI卷(类似于分区)的概念; UBI子系统只适用于传统的Flash(nor/nand),不适用于消费类Flash(mmc、emmc等),原因是它们都有自己的一套坏块管

通用dll技术

原理很简单就是你自己的dll加载被劫持的dll,通过loadlibrary,但是你替换了dll后面peb保存的是你当前的dll的句柄,调用的时候就是去你这个dll调用,这很定不行的有的东西只有原来的被劫持的有,不可能 把所有功能实现一遍,做法是把你loadlibrary被劫持的那个句柄替换成peb中名称被你防造的那

用户层修改peb实现隐藏一些东西

#include "stdafx.h" #include <string> #include <Windows.h> #include <Shlwapi.h> #pragma comment(lib,"ole32.lib") #pragma comment(lib,"shlwapi.lib") #pragma comment(lib,"shell32.lib") #define RTL