摘要: 1 #define MAXWORDLEN 10 2 3 int FirstWord = 1 ; 4 int NewWord = 0 ; 5 int Space = 0 ; 6 int Doon = 0 ; 7 int wordlen = 0 ; 8 char c = 0 ; 9 char NumberBuf[MAXWORDLEN+1] ;10 int thisvalue = 0 ;11 int maxvalue = 0 ;12 int thisside = 0 ;13 int i = 0 ;14 ... 阅读全文
posted @ 2012-12-29 17:16 nXqaL 阅读(244) 评论(0) 推荐(0) 编辑
摘要: 1 2 3 #include "ntddk.h" 4 #include <stdio.h> 5 6 7 8 #define DWORD unsigned long 9 #define WORD unsigned short 10 #define BOOL unsigned long 11 #define BYTE unsigned char 12 //SIDT 指令在内存中为每个CPU寻找IDT,返回IDTINFO的地址, 13 typedef struct 14 { 15 WORD IDTLimit ; 16 WORD LowIDTBase ; 17... 阅读全文
posted @ 2012-06-28 15:18 nXqaL 阅读(574) 评论(0) 推荐(0) 编辑
摘要: 创建时间:2005-12-20文章属性:原创文章提交:backspray (nimaozhi_at_163.com)作者:倪茂志邮件:backspray008@gmail.com完成于:2005.12.20文章分为八个部分: 一、为什么需要伪造内核 二、伪造内核文件 三、隐藏进程 四、隐藏内核模块 五、隐藏服务 六、隐藏注册表 七、隐藏文件 八、关于端口另:... 阅读全文
posted @ 2012-06-28 01:07 nXqaL 阅读(436) 评论(0) 推荐(0) 编辑
摘要: call @F@@:pop ebx sub ebx,offset @B代码用于重定位call @Fdb 'LoadLibraryA',0db 'MessageBoxA',0 @@:pop edx此时 edx 指向的是LoadLibraryA字符串的开头 阅读全文
posted @ 2012-06-18 18:34 nXqaL 阅读(239) 评论(0) 推荐(0) 编辑
摘要: 1 #include <ntddk.h> 2 3 //驱动卸载函数 4 VOID DriverUnload ( PDRIVER_OBJECT driver) 5 { 6 DbgPrint (" First : Our Driver is UnLoad ....\r\n") ; 7 } 8 9 //驱动入口 相当于main10 11 NTSTATUS DriverEntry (PDRIVER_OBJECT driver , PUNICODE_STRING reg_path)12 {13 14 //打印一句话 15 DbgPrint("First : He 阅读全文
posted @ 2012-06-18 18:28 nXqaL 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 1 ;============================= 2 ;统一节区对齐长度 3 ;函数:_AlignFile 4 ;参数:AlignSize 的misc区段所占的大小,AlignStd 标准的区段对齐 5 ;返回值:统一后的区段大小 6 ;============================= 7 _AlignFile proc AlignSize:dword,AlignStd:dword 8 mov eax,AlignSize 9 xor edx,edx10 div AlignStd ;e... 阅读全文
posted @ 2012-03-23 19:20 nXqaL 阅读(217) 评论(0) 推荐(0) 编辑
摘要: ;=================================;选择加壳的文件;函数:_OpenFile ;;==================================OF OPENFILENAME <0>hFile dd ?_OpenFile proc pushad mov OF.lStructSize,sizeof OPENFILENAME mov OF.lpstrFile,offset szFileName mov OF... 阅读全文
posted @ 2012-03-23 18:54 nXqaL 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 1 ;======================= 2 ;模拟GetProcAddress 3 ;函数功能:根据基址和函数名获取函数地址 4 ;参数:_lpBase为基址,_lpBuf为字符串地址 5 ;返回值:函数VA 6 ;======================= 7 _GetApiFromName proc _lpBase,_lpBuf 8 local lRet 9 pushad10 11 mov edi,_lpBuf12 xor eax,eax13 mov ecx,-114 repz scasb15 ... 阅读全文
posted @ 2012-03-20 16:09 nXqaL 阅读(394) 评论(0) 推荐(1) 编辑
摘要: ;xp下使用_GetKernelBase proc local @dwRet pushad assume fs:nothing mov eax,fs:[30h] ;获取PEB所在地址 mov eax,[eax+0ch] ;获取PEB_LDR_DATA 结构指针 mov esi,[eax+1ch] ;获取InInitializationOrderModuleList 链表头 ;第一个LDR_MODULE节点InInitializationOrderModuleList成员的指针 lodsd ;获取双向链表当前节点后继的指针 mov e... 阅读全文
posted @ 2012-03-16 22:17 nXqaL 阅读(654) 评论(0) 推荐(0) 编辑
摘要: .386.model flat,stdcalloption casemap:noneinclude Windows.incinclude User32.incinclude Kernel32.incincludelib User32.libincludelib Kernel32.lib.datahMainHandle dd ?hReturnAddress dd ?szPaintBuf db '%08x',0szBuf db 100 dup(0)szSectionName db 9 dup(0).code ;///////////////////////////////////. 阅读全文
posted @ 2012-03-16 16:46 nXqaL 阅读(177) 评论(0) 推荐(0) 编辑