自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(14)
  • 资源 (1)
  • 收藏
  • 关注

原创 [分析]detours 通过修改输入表注入DLL -- UpdateImports 函数的分析

前段时间有一个需求,就是在进程启动的第一时间实现dll的注入,当时一想以为很简单嘛,比如拦截CreateProcessInternalW等不就行了吗?后来发现如果你在CreateProcessInternalW前处理进程还没有启动,而之后处理的话,进程的主线程已经开始工作了,再后来通过修改创建标志把创建的进程的主线程挂起,等进程创建后我来注入,此时才发现创建远线程搞不定, 此时进程只有NTDLL,

2008-04-18 23:06:00 3751 4

原创 [讨论]关于缓冲区溢出的检测

目前,缓冲区溢出应该是攻击的最直接的方式,因此如何检测缓冲区溢出以及保护刻不容缓 ,然而当前并没有很稳定可靠的方法来对缓冲区溢出进行检测,MACFEE应该是提出缓冲区溢出保护的最早的安全厂商,然而如今也不再对该技术进行大肆宣传了,这几天在网上翻了一下,感觉Comodo公司对缓冲区溢出的检测做的比较好,然后我也看不懂他采用的什么技术,如果哪位牛人来介绍一下他采用的技术就好了.后来又看了gyzy的文章

2008-04-17 02:13:00 3049 1

原创 通过PspTerminateThreadByPointer结束进程

 很早前写的代码了,免得腐烂了,贴出来这个思想是在读了PJF牛人 "终止进程内幕" 后才晓得基本思想就是用户态将欲结束的进程PID传递到内核驱动,驱动通过PsLookupProcessByProcessId得到进程的EPROCESS结构,再通过EPROCESS结构找到线程的链表头,遍历这个链表,逐一调用PspTerminateThreadByPointer,将其一个一个的KILL掉这里有三个问

2008-04-16 22:15:00 4187

原创 绕过安全软件挂钩SSDT的检测

很多安全软件都靠挂钩SSDT中的函数来检测恶意代码,就拿卡巴举例吧,他挂了NtCreateKey来检测注册表的创建,NtCreateThread和NtResumeThread/NtWriteVirtualMemory来检测远程注入, 等等,这些钩子让我们后期的动作很可能暴露,怎么样才能为所欲为呢?我这里提一种方案:1. 首先在用户态读取NTOSKRNL.EXE,找出原始的SSDT的位置,提交到内核

2008-04-16 21:31:00 1380

原创 guitoolkit 的使用问题

1.Uxtheme.h  Tmschema.h 去找到放进来2.VisualStylesXP.cpp VisualStylesXP.h 没有包含进来,会导致出现CVisualStylesXP类的函数没有导出之类的错误3. _AfxAdjustRectangleGuiToolKit4._AfxAdjustRectangleGuiToolKitint _afxDropDownWidthGuiToolK

2008-04-16 20:56:00 4412 2

原创 最近的事情

code inject  posion lvy   每次传输的是代码驱动和应用程序的通信虚拟机技术  

2008-02-06 17:53:00 192

原创 vc6定制驱动程序AppWizard -- vc6 custom AppWiZard for Simple Driver Development

    DriverStudio提供了驱动程序的向导,但是我觉得里面的代码不是我想要的简单明了的方式,况且它和vc6的接合度也不高,如果能够在vc6 "新建工程" 里面就有直接生成驱动程序的向导,那世界该有多美妙啊,后来找到几篇文章>,原来还真有这样的东西,一番折腾后终于发现,无论在工程里面怎么更改,始终不变的是vc6使用其自带的cl.exe来编译程序,用link.exe来链接,最后又找到一个Dr

2007-10-27 18:03:00 1916

原创 更加稳定的HOOK SSDT(通过MDL方式)

传说修改cr0寄存器后再写SSDT在多核CPU不稳定,因此提供一个更加稳定的写SSDT表的方式,代码如下//// 挂钩函数//BOOL HookSSDT()...{    PMDL pMdlSystemCall = NULL;    DWORD * MappedSystemCallTable = 0;       pMdlSystemCall = IoAllocateMdl(       

2007-10-27 17:02:00 4885

原创 卸载其他进程中的模块/dll

       前段时间做了一个东西,在所有进程中都挂接了自己的DLL,结果每次要重新编译DLL让其运行都需要重启计算机,这下可有点郁闷, 得想想办法手动卸载了这些DLL,因此变有了这个程序原理:        通过在指定的进程中创建远程线程,然后在线程中调用FreeLibrary把相应的模块卸载就OK了,就这么简单,废话就不多说了,代码中我已经给出详尽的注释了// FreeModule

2007-08-08 03:37:00 1685 1

原创 如何使用 C++ 方式来编写驱动

这个问题可能会很无聊,而且觉得连这个题目都不好拟,但我还是以我的方式记下来了,觉得有用的朋友就尽管拿去用,不过我觉得可能性很小问题的由来:        c源文件是以"c"为后缀的 ,而纯c语言都是在函数的开始就将所有用的变量全部定义好,然后在函数中使用,如果不按照这个规定,那么等待你的就是在编译的时候将你处以极刑,这个让我觉得非常郁闷,我就是想在使用的时候再定义一个变量,这样可以让我的程序更

2007-08-06 03:09:00 3057 1

原创 用户态轻松调用ntdll中的native api

ntdll中的native api功能非常强大,然而微软却没有提供用户态调用native api的接口,而这些native api所需要的数据结构微软也基本没有公布,幸好有了一批牛人的贡献,给出了很多native api的定义,让我们的生活免去了许多痛苦,本文在介绍了最基本的native api的调用方式之外,还介绍了一种更加优美,移植性更强的调用方式 调用方式一(一般方式):第一步:

2007-08-06 01:47:00 6256

原创 vc6中集成驱动编译环境的配置方法

本方法是来源于自《windows防火墙与网络封包截获技术》 ,我只是厚颜无耻的加了点东西贴在这里,一是为不知道如何搭建环境的朋友行个方便,二是在这里做一个备忘录(以前的老blog里面讲的不清不楚,因此这次翻新整理一下)编译驱动当然可以使用命令行来编译,但是如果能够在vc6里面就集成驱动的编译将会使一件非常痛快的事情,毕竟vc的IDE环境对源代码的管理、编写支持的非常好,况且还有可爱的vc助手,

2007-08-05 02:41:00 1831

原创 服务进程创建同explorer相同用户的子进程

 创建同explorer相同用户的进程,有什么作用呢?有这样一种情况,如果你的进程是以系统服务启动的并要进行屏幕获取工作,你可以试试看,能不能把屏幕获取下来.呵呵..有一种办法就是创建一个和explorer相同用户的子进程其中的一种方法:// szProcPath 为进程的路径BOOL CMainFun::StartExplorerProc(char *szProcPath)...{ 

2007-07-19 11:56:00 1748

原创 获取进程完整路径探索

要想获取进程的完整路径,使用PSAPI提供的函数 GetModuleFileNameEx() 就可以轻松的办到下面是一个例子:/**//*用户态使用 psapi 函数进程进程查询*/#include "stdio.h"#include "windows.h"#include "psapi.h"#pragma comment(lib,"psapi.lib")//需要额外添加  psapi.h 以

2007-07-19 11:04:00 4918

驱动模板_源文件

驱动模板_源文件<br>驱动模板_源文件

2007-10-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除