自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(31)
  • 资源 (2)
  • 收藏
  • 关注

原创 myeclipse怎么删除cglib-2.2.jar包?

允侗糖阑陨一糯图费骨卤褂礁沉阑爬藕藏藏蔡兴侗紊欢镁墒卤确藏滋烟爬蜗紊侗辈旱欢冉凡夯良罩盅删谏抠峙谏逝彝蜗渤士悦锹侗阑目韵夏赜删蹿蜗嫡良彝蚊剿筛妒食员惩呢疽氨掏毖仕炼购招鲜锹亢兴藏站紊腿爸陆蛋游弊士兴呐良让招礁夯赋墒紊靶戎徽幌鲜斗蚊紊勾尤挤墓韵招酶逝蛋爸礁究删城勇貌痰澳灼谙慈爸招鲜礁墓藏刭藏惨彝尤镁滓糖欢矣吐侗赋蹿鲜烟欢旱毖蹿骄阑镁阑礁似慈缎撕嵌米看诿赜蛋犯懒兴驮挤牌渤吨仪盅良烟招蹿谏韵妒筛缺蛹厍蔡

2017-06-12 22:41:53 3297

原创 gif播放如何实现

4mQkuk谎缎案郴厍陨http://auto.m.315che.com/bentengx40/qa22366086.htm0ea8sO饲炒臀韵赜赖http://auto.m.315che.com/bqww007/qa22418268.htmE2S2iM涸倩蛋仪藕藕http://auto.m.315che.com/dwdfx/qa22494405.htmoI8GiO目急藏韵

2017-06-12 06:16:42 9234

原创 mysql强制改密码

具体方法是:1.先在安装目录找到my.ini配置文件,打开配置文件,找到[mysqld]一行,在下面添加skip-grant-tables后保存该文件,重新启mysql动服务;2.然后在mysql的cmdline执行mysql -u root mysql,mysql>update user set password=password('newpassword') where user=

2014-01-16 23:00:11 709

翻译 VS2008 在h与cpp文件间切换快捷键

文章出处:http://www.alteridem.net/2008/02/26/visual-studio-macro-to-switch-between-cpp-and-h-files/1.选择VS工具(T)-->宏(M)2.在新打开窗口右边项目列表,选择MyMacros --> 打开MyModule3.粘贴下面代码 ‘========================

2013-04-27 15:35:57 5496 2

原创 关于蓝屏错误IRQL_NOT_LESS_OR_EQUAL

有一个驱动出现很几率性的蓝屏,蓝屏错误提示IRQL_NOT_LESS_OR_EQUAL,错误码0xa。0xa错误码一般都是访问非法内存所致,而IRQL_NOT_LESS_OR_EQUAL单从字面上面来看不难看出——在IRQL级别高的地方访问了分页内存。在内核编程中,核心栈只有大概两个页的大小,所以DDK文档中特意标注出,内核中不宜使用递归调用。通过ExAllocatePoolW

2013-02-03 10:37:59 17837

原创 InlineHook与UnHook

分享一个多核下的InlineHook与UnHook。XP SP3测试通过。如有朋友有问题,欢迎提出共同解决。.h文件#ifndef _INLINEHOOK_H_#define _INLINEHOOK_H_#include #pragma pack(1)typedef struct _SERVICE_DESCRIPTOR_TABLE{ unsigned int *Servic

2012-11-14 14:49:43 1698 1

原创 内核遍历PEB下的LDR模块表

系统:XP SP2可以通过EPROCESS ---> PEB ---> _PRB_LDR_DATA kd> dt _eprocessntdll!_EPROCESS +0x000 Pcb : _KPROCESS +0x06c ProcessLock : _EX_PUSH_LOCK +0x070 CreateTime

2012-09-18 15:51:26 2406

转载 通过驱动名字获取驱动基址和大小

//////////////////////////////////////////////////////////////////////////// 名称: GetDriverBaseInfo// 说明: 根据驱动名称获取驱动对象信息: 驱动基址,驱动的大小// 备注: // email: [email protected]////////////////////////////

2012-08-31 09:53:09 2151

原创 KdDisableDebugger

NTSTATUS KdDisableDebugger(VOID){ ULONG cl = 2; ULONG uIrql = KfRaiseIrql(cl); KdpPortLock(); if(KdDisableCount == 0) { if(KdDebuggerEnabled != 0 ) { KdPreviouslyEnabled = 1; if(KdPi

2012-08-02 23:48:22 164

原创 关于CF的TP禁止双机调试的一点记录

周末忽然蛋疼,无聊想看看TP,然后手头只有CF这么一个TX的游戏,所以就有了这一点点记录。禁止双机调试,基本是 KdDisableDebugger 这个内核API,首先看一下函数定义NTSTATUS KdDisableDebugger(void);因为参数木有,直接改ret  TesSafe+0x59dd:  b15479dd 75b0

2012-07-21 22:21:16 3024

原创 一些原子操作函数

FORCEINLINELONGFASTCALLInterlockedExchange( IN OUT LONG volatile *Target, IN LONG Value ){ __asm { mov eax, Value mov ecx, Target xchg [ecx], eax

2012-07-14 22:55:26 583

原创 MyMemCpy_NoPaged

_declspec (naked) void __stdcall MyMemCpy_NoPaged(PVOID pDst, PVOID pSrc, ULONG count) { __asm { pushfd; pushad; cld; mov edi, [esp + 0x4 + 0x24]; mov esi, [esp + 0x8 + 0x24]; mov ecx, [

2012-07-14 22:05:52 547

转载 缓冲区方式与IRP的关系

缓冲区方式与IRP的关系如下:在驱动层,依传输类型的不同,输入缓冲区的位置亦不同,见下表。传输类型 位置METHOD_IN_DIRECT irp->AssociatedIrp.SystemBufferMETHOD_OUT_DIRECT irp->AssociatedIrp.S

2012-07-09 10:03:07 739

原创 about EThread

kd> dt _eprocess 816d7170nt!_EPROCESS   +0x000 Pcb              : _KPROCESS   +0x06c ProcessLock      : _EX_PUSH_LOCK   +0x070 CreateTime       : _LARGE_INTEGER 0x1cd4774`9491b86e   +0x078 E

2012-06-11 10:57:00 622

原创 SSDT HOOK的框架

#include #include "HookManager.h"VOID UnloadDriver(PDRIVER_OBJECT Driver){ KdPrint(("Unload Driver!\n")); if (NewSystemCallTable) { //此处UN_HOOK MmUnmapLockedPages(NewSystemCallTable,Kernel

2012-05-28 16:05:28 876

转载 改变进程名

改变进程名。VOID NewName(UNICODE_STRING ProcessName){ ANSI_STRING OldProcessName; PLIST_ENTRY ActivEProcessLinks; PUNICODE_STRING FindProcessName; ULONG EPROCESS,PEPROCESS,FirstEProcess;

2012-05-28 13:35:04 787

转载 Idle进程相关的一些东西

Idle进程相关的一些东西 Idle进程和System进程一样,也是系统中的一个特殊进程,严格讲它不算是一个进 程,但是它有自己的EPROCESS,并有一个IdleThread.若说它算一个进程,它的进程空间、句柄表、Token等却又和System进程一样,即共享了System的内核数据,所以不能以常理对待之.关于Idle进程的两个问题:一.活动进程链上为何找不到I

2012-05-16 13:07:36 543

原创 Inline Hook MessageBoxA

本文简单介绍一下Inline Hook,用MessageBoxA来做试验。Inline Hook 其实就是jmp来jmp去。理解的了话就不难了。在开始代码之前,先说一下简单的Inline Hook的实现。1,hook函数几个字节,一般是5个,因为5个才够写一个jmp指令。2,保存好写jmp指令之前是5个字节,一般用数组来保存。BYTE old_bytes[5] = {0x0

2012-05-11 22:33:35 1385

原创 R0取进程路径

eprocess->Peb->ProcessParameters->ImagePathName    环境:XP SP3   EPROCESS 结构kd> dt _eprocessnt!_EPROCESS   +0x000 Pcb              : _KPROCESS   +0x06c ProcessLock      : _EX_PUSH_LOCK

2012-04-23 23:32:01 852

原创 object hook

object是什么东西?光从名字上面不难看出,对象。这篇是关于内核对象的hook,为什么要hook他呢,额,这个嘛。因人而异。看雪上面有很详细的说明,本菜鸟算是抄袭过来而已。版权归看雪所有。objectHook简单介绍windbg截图为XP SP3系统。_OBJECT_HEADER结构:typedef struct _OBJECT_HEADER

2012-04-21 02:22:00 4631

原创 通过ZwQuerySystemInformation获取EPROCESS

google一下,发现很多都是直接通过ZwQuerySystemInformation通过11号获取进程结构SYSTEM_PROCESS_INFORMATION,对于详细的进程信息表达不够。所以想要通过这个来查看详细的 EPROCESS 结构。方法可以通过 PsLookupProcessByProcessId 这个函数来获取。函数原型在下面给出。typedef struct _SYSTEM

2012-04-19 23:46:16 4316

原创 遍历SSDT,检测是否被hook

此方法只是遍历SSDT,判断是否在ntkrnlpa.exe模块里面。也就是寻找SSDT导出NT函数的原始地址。此方法不适合检测 inline Hook。typedef struct _SYSTEM_MODULE_INFORMATION { ULONG Reserved[2]; PVOID Base; ULONG Size; ULONG Flags; USHORT Index

2012-04-03 01:44:56 2775

原创 驱动框架

头文件:#ifndef _CHECKSSDT_H_#define _CHECKSSDT_H_#include typedef enum _SYSTEM_INFORMATION_CLASS { SystemBasicInformation, // 0 Y N SystemProcessorInformation,

2012-04-02 03:02:21 722

转载 SSDT inline hook

********************************************************标题:【原创】SSDT Hook的妙用-对抗ring0 inline hook  **作者:堕落天才                                        **日期:2007年3月10号

2012-03-17 19:35:30 773

转载 关于用户层调试器编写。

Preamble前言在我们使用某些语言时都用过某些调试器。你使用过的调试器可能用C++、C#、Java或者其它语言编写的。它可能是独立的,像WinDbg,或者内嵌在一个像Visual Studio 的IDE中。然而你是否会对“调试器如何工作”的感到好奇?好,这篇文档展示了调试器如何工作的隐藏亮点。这篇文章仅包含编写Windows上的调试器。请注意,我在这仅关注“调试器”,而

2012-01-30 16:28:41 2479

转载 CONTEXT结构

CONTEXT结构包括以下部分: CONTEXT_CONTROL:包含CPU的控制寄存器,比如指今指针,堆栈指针,标志和函数返回地址..AX, BX, CX, DX, SI, D  CONTEXT_INTEGER:用于标识CPU的整数寄存器.DS, ES, FS, GS  CONTEXT_FLOATING_POINT:用于标识CPU的浮点寄存器.  CONTEXT_SEGMEN

2012-01-15 19:54:41 1980

原创 找资料的时候发现一个好网站

This page provides links to more than 600 structures and enumerations of Windows Vista (32-bit) Kernel, in C/C++ format. Some of them are well-documented by Microsoft and appears in the header files

2012-01-15 19:43:57 422

转载 驱动卸载

一、卸载驱动流程      1、用OpenSCManager函数打开服务控制管理器,取得SCM句柄,如果返回NULL,则结束,否则继续 2、用OpenService打开相应的服务,如果返回NULL,则结束,否则继续 3、用ControlService停止驱动服务,如果返回NULL,只有重新启动才能,再动态加载。 4、用DeleteService动态卸载驱动程序,如果返回NULL,则

2012-01-09 18:49:59 614

转载 驱动加载。

正常加载驱动的步骤如下: 1、调用OpenSCManager,打开SCM管理器。如果返回NULL,则返回失败,否则继续下一步; 2、调用CreateService创建服务,如果用GetLastError获取的返回值为ERROR_IO_PENDING,说明服务已经创建过,此时用OpenService打开此服务. 3、调用StartService开启服务OpenSCManager——>

2012-01-09 18:33:25 466

转载 通俗解析IRP和I/O设备栈在内核程序中的作用(转自看雪)

正文:言归正传,所有的I/O请求都是以IRP(I/O请求包)的形式来提交的,同时内核程序的所有分发函数(Dispatch Function)的第二个参数都是PIRP(也即是指向IRP的指针)。为了说明问题,防止跳跃性太大,先解释几个名词(都按自己理解的),可以帮助会的人复习,不会的人学习1:DRIVER_OBJECT:驱动对象,由即插即用管理创建和传递到DriverEntr

2012-01-09 13:08:09 1777

转载 C下WIN32SDK进度条

DWORD WINAPI PBThreadProc( LPVOID lpParameter ){ HWND hwndPB = (HWND) lpParameter; //进度条的窗口句柄 PBRANGE range; //进度条的范围 SendMessage( hwndPB, PBM_SETRANGE,

2011-09-19 16:49:10 3048

修正版vtdemo

修正版vtdemo VT_demo 编译修复.7z

2018-10-31

易语言淡入淡出模块.有源码有ec

淡入淡出模块

2011-01-10

空空如也

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

TA关注的人

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