首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
peb 隐藏 dll(断链)
2024-11-05
利用C++实现模块隐藏(R3层断链)
一.模块隐藏的实现原理 普通API查找模块实现思路:其通过查询在R3中的PEB(Process Environment Block 进程环境块)与TEB(Thread Environment Block 进程环境块)来找到一个双向链表,通过遍历双向链表中某一成员(字符串)来查找全部模块. 模块隐藏实现思路:在R3层的模块隐藏,我们需要做的就是将其该链表断链,将某一模块从这个双向链表中摘除,这样再调用传统的API时就会搜索不到. 二.结构体成员详细介绍 <1> TEB结构体 -- 内存地址为 f
【旧文章搬运】修改PEB,断链隐藏模块成功
原文发表于百度空间,2008-7-26========================================================================== 继续实践之前的想法,就是断掉如下这个结构中的双向链表: typedef struct _LDR_MODULE { LIST_ENTRY InLoadOrderModuleList; LIST_ENTRY InMemoryOrderModuleList; LIST_ENTRY InInitializationOr
隐藏DLL
先来推广一下QQ群:61618925.欢迎各位爱好编程的加入. 在外挂或者病毒中,经常需要隐藏掉自己注入的DLL,以免被发现.下面就是一个隐藏DLL的通用模块,用的时候只需要加入到相关模块中即可. 详细代码如下: #include <iostream> using namespace std; void HideModule(char *szModule) { DWORD *PEB = NULL; DWORD *Ldr = NULL; DWORD *Flink = NULL; DWORD *p
Win32之隐藏DLL隐藏模块技术
Win32之隐藏DLL隐藏模块技术 这一讲涉及到windows底层技术.跟汇编内容. 我们才可以实现模块隐藏(也称为DLL隐藏) 一丶API反汇编勾引兴趣 我们都用过Windows的进程跟线程API 也就是 GetCurrentThreadId() 跟 GetCurrentProcessId(): 一个是获取进程ID,一个是线程ID 那么我们利用反汇编技术.看看其实现代码是什么. 可以看到使用了FS寄存器.并且获取18内容. 然后+20内容获取出我们的进程Pid 那么FS寄存器是什么. 二丶F
如何隐藏DLL中,导出函数的名称?(转)
如何隐藏DLL中,导出函数的名称?(转) 一.引言 很多时候,我们写了一个Dll,不希望别人通过DLL查看工具,看到我们的导出函数名称.可以通过以下步骤实现: 1. 在def函数中做如下定义: LIBRARY EXPORTS HideFuncName @1 NONAME 通过添加NONAME关键字,隐藏函数名,这样的话,用Dependency Walker来查看该Dll,只能看到如下结果: 2. 如何调用该Dll中的函数,通过ID的方式调用,代码如下: 1 typedef void (WIN
如何隐藏DLL中,导出函数的名称?
一.引言 很多时候,我们写了一个Dll,不希望别人通过DLL查看工具,看到我们的导出函数名称.可以通过以下步骤实现: 1. 在def函数中做如下定义: LIBRARY EXPORTS HideFuncName @ NONAME 通过添加NONAME关键字,隐藏函数名,这样的话,用Dependency Walker来查看该Dll,只能看到如下结果: 2. 如何调用该Dll中的函数,通过ID的方式调用,代码如下: typedef void (WINAPI *FPHideFuncName)(); DW
钩子注入呼出与隐藏DLL窗口
/ MFC_DLL.cpp : 定义 DLL 的初始化例程. // #include "stdafx.h" #include "MFC_DLL.h" #include "WgDlg.h" #include <Windows.h> #ifdef _DEBUG #define new DEBUG_NEW #endif CWgDlg * GameForm = NULL; HWND GameHwnd = NULL; void StartHoo
C# 判断网站是否能访问或者断链
参考网站:http://www.cnblogs.com/junny/archive/2012/10/30/2745978.html public bool CheckUrlVisit(string url) { try { HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url); HttpWebResponse resp = (HttpWebResponse)req.GetResponse(); if (resp.StatusCod
x32下的DLL隐藏
原理主要就是PEB 中模块断链. 这里整理下代码.原理可以看下另一篇我写的帖子. https://www.cnblogs.com/iBinary/p/9601860.html // dllmain.cpp : 定义 DLL 应用程序的入口点. #include "stdafx.h" #include <Windows.h> #include <winnt.h> typedef struct _UNICODE_STRING { USHORT Length; USH
羽夏笔记——Hook攻防基础
写在前面 本笔记是由本人独自整理出来的,图片来源于网络.本人非计算机专业,可能对本教程涉及的事物没有了解的足够深入,如有错误,欢迎批评指正. 如有好的建议,欢迎反馈.码字不易,如果本篇文章有帮助你的,如有闲钱,可以打赏支持我的创作.如想转载,请把我的转载信息附在文章后面,并声明我的个人信息和本人博客地址即可,但必须事先通知我. 本篇文章主要是让读者对Hook有一个最基础的了解,并不是详细介绍Hook的使用,如果有这个想法的请不要继续阅读,以免浪费时间. ️ 静态链接库的使用 1.将生成的.h
【旧文章搬运】再谈隐藏进程中的DLL模块
原文发表于百度空间,2009-09-17========================================================================== 相当老的话题,大约一年前就写过这个东西了,不过那时候知识比较有限,也不了解内核,因此实现得很粗浅,现在再写一下,权当是对这个老问题的总结吧.先谈谈正规DLL的隐藏方法,这里说的正规DLL,是指用LoadLibrary以正常方式加载的DLL.一.从PEB的Ldr链中消失这个很简单,看雪上NetRoc有一篇关于这
隐藏进程中的模块绕过IceSword的检测
标 题: [原创] 隐藏进程中的模块绕过IceSword的检测 作 者: xPLK 时 间: 2008-06-19,17:59:11 链 接: http://bbs.pediy.com/showthread.php?t=66886 [文章标题]: 隐藏进程中的模块绕过IceSword的检测 [文章作者]: 小伟的小伟[0GiNr](看雪ID:xPLK) [作者主页]: http://www.0GiNr.com http://hi.baidu.com/zoo%5F [作者声明]: 只是感
EPROCESS KPROCESS PEB
EPROCESS KPROCESS PEB <寒江独钓>内核学习笔记(2) 在学习笔记(1)中,我们学习了IRP的数据结构的相关知识,接下来我们继续来学习内核中很重要的另一批数据结构: EPROCESS/KPROCESS/PEB.把它们放到一起是因为这三个数据结构及其外延和windows中进程的表示关系密切,我们在做进程隐藏和进程枚举的时候一定会涉及到这3类数据结构,所以这里有必要及时做一下总结,做个学习笔记,理清思路. 1. 相关阅读材料 <windows 内核原理与实现>
RootKit随手记(一)RootKit的驱动隐藏、读取配置、卸载安装
边学习边更新这专题,随手记录一下用到的思路,给自己看的(所以读者看可能有些懵,不好意思...) RootKit随手记(一)RootKit的驱动隐藏.读取配置.卸载安装 一.驱动隐藏 1. 隐藏原理 一款好的ROOTKIT一定会隐藏自己,检测驱动时经过一串链表,该链表的结点在 DRIVER_OBJECT->DriverSection 中,数据结构如下图. kd> dt _DRIVER_OBJECT ntdll!_DRIVER_OBJECT +0x000 Type :
R3抹掉加载的DLL
R3抹掉加载的DLL 原理类似于获取Kernel32.dll加载地址,知道这个东西也是在看获取Kernel32.dll地址的时候在网上搜索学习资料,无意中看到的这个东西.这个挺有用,结合着HiJack的话效果会不错.思路是这样: FS--->TEB--->PEB---> PEB_LDR_DATA.InInitialzationOrderModuleList (细节偏移,以及结构定义我之间整理过,在这 http://blog.csdn.net/u013761036/article/deta
DLL中传递STL参数(如Vector或者list等)会遇到的问题[转载]
最近的一个项目中遇到了调用别人的sdk接口(dll库)而传给我的是一个vector指针,用完之后还要我来删除的情况.这个过程中首先就是在我的exe中将其vector指针转为相应指针再获取vector中相应的数据问题,始终都获得不了正确的数据,要么就是一些非法的数据:另一个问题就是delete这个指针时候会产生相应异常(针对这个问题的思考:如果EXE和DLL都链接到DLL的C/C++运行期库,那么代码将能够很好地运行.但是,如果两个模块中的一个或者两个链接到静态C/C++运行期库,那delete的
KTHREAD 线程调度 SDT TEB SEH shellcode中DLL模块机制动态获取 《寒江独钓》内核学习笔记(5)
目录 . 相关阅读材料 . <加密与解密3> . [经典文章翻译]A_Crash_Course_on_the_Depths_of_Win32_Structured_Exception_Handling.pdf . < DAY安全: 软件漏洞分析技术> 2. 数据结构分析 二. KTHREAD KTHREAD(内核层线程对象).再次重复说明一点: windows内核中的执行体(ETHREAD, EPROCESS) 负责各种与管理和策略相关的功能,而内核层(或微内核)(KTHREAD,
KTHREAD 线程调度 SDT TEB SEH shellcode中DLL模块机制动态
KTHREAD 线程调度 SDT TEB SEH shellcode中DLL模块机制动态获取 <寒江独钓>内核学习笔记(5) 继续我们的线程相关的数据结构的学习.接下来我们学习 KTHREAD,TEB这两个结构. 1. 相关阅读材料 1. <加密与解密3> 2. [经典文章翻译]A_Crash_Course_on_the_Depths_of_Win32_Structured_Exception_Handling.pdf 3. <0 DAY安全: 软件漏洞分析技术>
dll导出函数的两种方式的比较
最初的网页链接已经挂了, 在此贴一个中间的转载链接 https://blog.csdn.net/zhazhiqiang/article/details/51577523 一 概要 vs中导出 dll的方法有两种: 一种是使用__declspec(dllexport), 另一种就是使用.def文件方式, 这两种方式的最主要区别是在导出函数的名字上, 其次还有一些操作的灵活性上以及功能的强弱 二 一个具体的例子 1 __declspec(dllexport) 方式首先对C和C++编译(extern
windows:驱动模块隐藏
windwos下想要搞点事,权限当然是越大越好:驱动模块天生在0环,和操作提供平级,大家互相是兄弟,所以很多外挂.木马.病毒都会使用驱动达到自己的目的.那么问题来了:PCHUNTER这种工具能查到系统里面所有驱动模块,外挂\木马\病毒该怎么隐藏了? 常见隐藏驱动的方式: 驱动模块断链 调用MiProcessLoadEntry删除驱动对象(据说不会触发PG) 清理MmUnloadDriver List 和 PiDDBCacheTable两处 driveEntry返回失败 驱动模块加载后立即卸载 今
热门专题
python中的*args
vim 按键映射失败
string转timestamp mon
python三元表达式和二元表达式区别
beego多个数据库切换
axios与 request-promise-native
idea consolo无法全选复制
帆软canvaspainterpool报错
element-ui 后台管理框架
java 代码实现mysql大表数据同步至mongodb
springboot操作日志记录
.net6 控制台 log
hpe6125交换用户名密码
illuminate mongodb 分页
@keyframes move 高度
jira 破解 windows
logstash自定义插件 小姐姐
java io工具类
linux git认证信息
openlayers点击时闪现圆点