大蛇神QQ1841370452

私信 关注
大蛇神
码龄9年
  • 411,123
    被访问量
  • 37
    原创文章
  • 18,270
    作者排名
  • 138
    粉丝数量
  • 于 2011-12-16 加入CSDN
获得成就
  • 获得47次点赞
  • 内容获得15次评论
  • 获得166次收藏
荣誉勋章
TA的专栏
  • 内核驱动
  • 环境配置全部集合
    22篇
  • 汇编与反汇编全部集合
    10篇
  • 易编程全部集合
    1篇
  • 基础编程全部集合
    60篇
  • 破解全部集合
    9篇
  • 内核驱动全部集合
    164篇
  • 自己写的函数全部集合
    13篇
  • 网络游戏全部集合
    6篇
  • 垃圾全部集合
    1篇
  • vt
  • 网站全部集合
    1篇
  • 动态链接库全部集合
    2篇
  • 最近
  • 文章
  • 资源
  • 问答
  • 课程
  • 帖子
  • 收藏
  • 关注/订阅

Windows无法安装到GPT分区形式磁盘,如何处理

很多时候,在安装win7系统的时候会出现这样的提示Windows无法安装到GPT分区形式磁盘,那么面对这样的情况应该如何处理呢?今天小编为大家简单的介绍一下。方法/步骤 首先我们进入系统安装界面的时候,我们按住SHIFT+F10,调出cmd。 然后在命令行中,我们输入diskpart,点击回车,如图示。 然后我们再次输入list disk,查看分区情况,如...
原创
221阅读
0评论
0点赞
发布博客于 2 年前

虚拟机提示:无法打开内核设备“\\.\Global\vmx86”: 系统找不到指定的文件

Win 10 vmware12 无法打开内核设备“\.\Global\vmx86”: 系统找不到指定的文件。你想要在安装 VMware Workstation 前重启吗?打开vmware12后出现内核错误,查了一下,在自己的win10下面应该是如下的解决方法:找到c:\windows\system32\cmd.exe 文件,右击选择以管理员身份运行 输入以下的命令并回车 net sta...
原创
161阅读
0评论
0点赞
发布博客于 2 年前

Vmware虚拟机设置静态IP地址

一、安装好虚拟后在菜单栏选择编辑→ 虚拟网络编辑器,打开虚拟网络编辑器对话框,选择Vmnet8 Net网络连接方式,随意设置子网IP,点击NAT设置页面,查看子网掩码和网关,后面修改静态IP会用到。 二、检查宿主机VM8 网卡设置,打开网络和共享中心→ 更改适配器设置→,在VMware Network Adapter VMnet8上单击右键,选择属性按钮打开属性对话框...
原创
125阅读
0评论
0点赞
发布博客于 2 年前

3.1进程的创建过程 打开进程并且结束

# include <Windows.h># include <stdio.h># include <TlHelp32.h>int main(){ //定义需要的结构体 STARTUPINFO si = { 0 }; si.cb = sizeof(STARTUPINFO); PROCESS_INFORMATION pi =...
原创
72阅读
0评论
0点赞
发布博客于 2 年前

内存分配详解 malloc, new, HeapAlloc, VirtualAlloc,GlobalAlloc

很多地方都会使用内存,内存使用过程中操作不当就容易崩溃,无法运行程序,上网Google学习一下,了解整理下他们之间的区别以及使用 ,获益匪浅0x01 各自的定义和理解  (1)先看GlobalAlloc()    GlobalAlloc()主要用于Win32应用程序实现从全局堆中分配出内存供2017-03-05程序使用,是16位WINDOWS程序使用的API,对应于系统的全局栈,返回...
转载
96阅读
0评论
0点赞
发布博客于 2 年前

国内首部大型C++网络游戏开发教程624+课时,MINI快跑、水果忍者、DirectX技术、传奇游戏3 2014年3月

国内首部大型C++网络游戏开发教程624+课时,MINI快跑、水果忍者、DirectX技术、传奇游戏3 500联系方式 见主页
转载
530阅读
0评论
0点赞
发布博客于 2 年前

vt驱动入门教程22课 2019年1月 硬件虚拟化

1.内核VT虚拟化技术简介.zip2.Win10+VS2017+WDK10的安装.zip3.Win10内核双机调试环境搭建.zip4.内核程序开发基础入门.zip5.开启VMware虚拟化与VT基本原理.zip6.侵染多核CPU的DPC回调安装.zip7.检测CPU对VT虚拟化的支持情况.zip8.初始化VMX与VMCS的非分页内存.zip9.内存对齐与VMCS第1...
转载
692阅读
0评论
0点赞
发布博客于 2 年前

老V2017内核驱动教程

老V2017内核教程 高级技术 大量顶级技术 vt通杀游戏保护 挖系统漏洞 等等2017年2月 高级技术 顶级技术 挖系统漏洞 泄密教程 500联系方式 见主页...
转载
637阅读
0评论
0点赞
发布博客于 2 年前

老V2016内核教程  30课

大量顶级技术 内核知识大整理 30课vt通杀游戏保护 等等 2016年3月 大量顶级技术 vt硬件虚拟化 内核知识大整理 500联系方式 见主页...
转载
561阅读
0评论
0点赞
发布博客于 2 年前

驱动开发高级班46课 2018年11月

老 内核教程 高级班 内核知识大整理 46课 300联系方式 见主页深入理解windows 操作系统1第一课 驱动开发进阶篇介绍.mp423:392第二课 常用工具介绍.mp416:373第三课 实现驱动实现最早启动21:514第四课 程序安装实现驱动最早启动19:005第五课 将驱动打包到exe安装包里实现17:036第六课 驱动程序重新初始化(共2种)15...
转载
174阅读
0评论
0点赞
发布博客于 2 年前

dll.def

EXPORTSExportFunc
转载
39阅读
0评论
0点赞
发布博客于 2 年前

dll.h

extern __declspec(dllexport) void ExportFunc(LPCTSTR pszContent);
转载
89阅读
0评论
0点赞
发布博客于 2 年前

m_hWnd 和 this指针

m_hWnd ①m_hWnd这个成员变量,最早是定义在类CWnd中,而且是类CWnd的第一个数据成员, 先看一下MSDN的解析: The handle of the Windows window attached to this CWnd. The m_hWnd data member is a publi...
转载
45阅读
0评论
0点赞
发布博客于 2 年前

系统回调介绍

这个BugCheckCallback每当系统发出错误检查时,都会执行例程。这个KBUGCHECK_次要转储数据结构描述了一段驱动程序提供的数据,这些数据由KbCallbackSecdaryDumpData例程写入崩溃转储文件。使用  设置 PspNotifyEnableMask 为 0 CreateProcess CreateThread LoadImage 回调函数都不会起作用...
转载
69阅读
0评论
0点赞
发布博客于 2 年前

MYSQL+PHP的网站搭建

实验目的:掌握MYSQL+PHP的网站的搭建过程实验准备:一台Server,一台Client实验前的准备:搭建一台web服务器(过程省略)实验步骤:步骤一1.安装PHP数据包解压php-5.1.4-Win32这个解压包,把它解压到自己的文件夹内,然后修改php的解压后的文件夹的包名,把它这个包名修改为php----->然后设置这个解压后的php文件夹的属性信息,给本地的use...
转载
61阅读
0评论
0点赞
发布博客于 2 年前

获取cpuid 硬件信息

// 获取cpu序列号.cpp : 定义控制台应用程序的入口点。#include "stdafx.h"#include <iostream>#include <string>#include <windows.h>using namespace std;#define AFX_14BEC153_17B9_47BE_845F_71A27BF26B59_...
转载
93阅读
0评论
0点赞
发布博客于 2 年前

天道vt硬件虚拟化入门教程

天道vt硬件虚拟化入门教程 硬件虚拟化 不懂vt没任何驱动基础的 就可以观看
doc
发布资源于 2 年前

vt虚拟化入门

VMX的目的是简化虚拟化开发以及提升虚拟化应用的执行效率,跟传统的操作系统以及 驱动、进程没有关系,跟所谓Hook更没关系。你非要把这种“陷入/模拟”的执行流程 叫做一种hook也无不可。 虚拟化的本质是要获取全部硬件的控制权,拦截在硬件和传统操作系统之间。在传统操作系统 看来跟执行在真正的硬件上没有差别(等价性原则)。 虽然VMX指令一般执行在ring...
转载
158阅读
0评论
0点赞
发布博客于 2 年前

[虚拟机保护] [原创]关于滴水的VT调试器

关于滴水的VT调试器 by 海风月影论坛上今天吵的比较火热,主要是关于滴水的VT调试器,很多人不了解这个东西,我对Intel的VT技术略有了解,所以我来简单的介绍一下。第一,什么是VT技术VT是Intel的硬件虚拟化技术,说到VT,就不得不提虚拟机(例如VMWare)。在硬件还没有支持VT前,系统级的虚拟机其实是很难做的,要考虑的东西非常多(主要是效率问题,因为用软件模拟东西资源开销比较大)。VT...
转载
256阅读
0评论
0点赞
发布博客于 2 年前

boos 地图走法 大集合

石墓阵 左下下祖玛阁 左上上上右
转载
93阅读
0评论
1点赞
发布博客于 2 年前

boos 刷新时间 大集合

尸王 4 3点50 4小时一次沃玛教主5 触龙神5 点4点504小时一次虹膜教主 3 2点50 4小时一次未知全部集合魔龙教主 1:45,14:00,16:00,18:00,22:15,24:00魔龙血域 一共3个爱吃鸡魔人石原 大祭司 6小时刷一次 爆 赤月12 6点整 一天4个一层血手 白日门海岸 最左下...
转载
77阅读
0评论
0点赞
发布博客于 2 年前

BOSS刷新机制调整细则详解

一、背景设定   面对战斗力日益爆表的玛法勇士,各大BOSS不禁陷入了恐慌,纷纷在自己的老巢中派遣替身来迷惑冒险者。   替身与BOSS长相完全相同,甚至实力也不相上下。前往讨伐的勇士们除了必要的战力外,还需要一点点的运气,才能击败那些龟缩在迷宫深处的真正BOSS。 二、调整规则   1、当游戏版本达到特定阶段,该版本的BO...
转载
103阅读
0评论
0点赞
发布博客于 2 年前

vt新手学习之ept学习

dirbase的物理地址 处理 第一次取物理地址!低十二位 用零填充db4c7000第二次取物理地址!bd4c8867转换成二进制10111101010011001000100001100111 低十二位不零10111101010011001000 000000000000==0xbd4c8000pde 为1所以1*8==80xbd4c800...
转载
107阅读
0评论
0点赞
发布博客于 2 年前

如何利用C语言来获取当地时间和UTC时间? (设当地时间是北京时间)

#include <stdio.h> #include <time.h> int main(){ time_t t = time(NULL); tm *tp = localtime(&t); // 北京时间 printf("%d/%d/%d
", tp->tm_mon+1, tp->tm_...
原创
628阅读
0评论
0点赞
发布博客于 2 年前

vt新手学习第一课

虚拟出多个cpu 运行多个操作系统每一个操作系统都运行在一个虚拟的CPU或者是虚拟主机上而超线程技术只是单CPU模拟双CPU来平衡程序运行性能,这两个模拟出来的CPU是不能分离的,只能协同工作。vmm虚拟机监视器 提供这个能力操作系统运行在虚拟框架中 操作系统cpu执行的指令被我们截获 cpu实现函数调用功能 中断进行控制 屏幕键盘硬件断点 用int实现的 操作系统相当于一个虚...
转载
135阅读
0评论
0点赞
发布博客于 2 年前

NewBluePill源码学习

NewBluePill的源码也看的差不多了,一直说等有时间了再写学习的一些心得,拖来拖去弄到现在了,时间不是等来的,慢慢开始吧。0x00 初识硬件虚拟化硬件虚拟化对大数人来讲还是比较陌生。什么是硬件虚拟化?因为早期的虚拟机都是进程级虚拟机,也就是作为已有操作系统的一个进程,完全通过软件的手段来模拟硬件,软件再翻译内存地址的方法实现物理机器的模拟,这样虚拟效率较低,资源利用率低。之后...
转载
217阅读
0评论
0点赞
发布博客于 2 年前

patch pg 支持win7 -- win10

patch pg 支持win7 -- win10
zip
发布资源于 2 年前

遍历windows驱动遍历对象目录的对象

驱动都存在\\Driver或者\\FileSystem目录对象里我们只需要遍历这两个目录就可以遍历windows所有驱动知识点\\Driver\\FileSystem(dt_OBJECT_DIRECOTRY)都属于ObpDirectoryObjectType(window内核全局变量)对象其他对象全局变量可以参考作者:潘爱民书名:wind...
转载
859阅读
0评论
0点赞
发布博客于 2 年前

通过驱动名获取驱动对象

这里需要用到一个未公开的(undocumented)APIObReferenceObjectByName函数可以通过对象名字得到包括设备对象在内的各种内核对象的指针,比如内核事件,互斥体对象等.他会增加内核对象的引用计数,使用完内核对象后要用ObDereferenceObject内核函数将引用计数减1.定义参考:NTKERNELAPI NTSTATUS ObReferenceObj...
转载
700阅读
0评论
0点赞
发布博客于 2 年前

LycorisGuard Windows xp下IDT Hook和GDT的学习

LycorisGuardWindows xp下IDT Hook和GDT的学习一、前言   对于IDT第一次的认知是int 2e ,在系统调用的时候原来R3进入R0的方式就是通过int 2e自陷进入内核,然后进入KiSystemService函数,在根据系统服务调用号调用系统服务函数。而2e就是IDT(系统中断描述符表)中的索引位2e的项,而KiSystemService就是该...
转载
82阅读
0评论
0点赞
发布博客于 2 年前

IDT hook KiTrap03

关于idt的基本知识就不进行赘述了,先看一个例子0x1000: mov eax,00x1006: Int 3 ;-------&gt;进入内核,找到中断处理例程KiTrap030x1007: Mov eax,1这段代码执行,触发3号中断,然后开始执行KiTrap03例程,要知道,执行完中断以后还是要回到原来的程序处继续执行的,也就是...
转载
177阅读
0评论
0点赞
发布博客于 2 年前

IDT系统中断描述表以及绕过Xurtr检测的HOOK姿势

什么是中断?指当出现需要时,CPU暂时停止当前程序的执行转而执行处理新情况的程序和执行过程。即在程序运行过程中,系统出现了一个必须由CPU立即处理的情况,此时,CPU暂时中止程序的执行转而处理这个新的情况的过程就叫做中断。比如:除零(0号中断)、断点(3号中断)、系统调用(2e号中断)、以及异常处理等都会引发中断,所以自然需要相应的中断例程去进行处理。这样操作系统就会用数据结构来...
转载
414阅读
0评论
0点赞
发布博客于 2 年前

解决Themida加壳程序在VMware虚拟机无法运行问题_HS_TMD 开游戏

标 题: 解决Themida加壳程序在VMware虚拟机无法运行问题作 者: Y4ng时 间: 2012-08-23 12:32:13 星期四链 接: http://www.cnblogs.com/Y4ng/archive/2012/08/23/tmd_vmware_hs_TheMida.html  在调试韩国某游戏HS保护的时候,由于主程序被加了TMD(TheMida)壳,根本就没...
转载
1926阅读
0评论
0点赞
发布博客于 2 年前

c++ system()和WinExec()的区别执行文件

区别1.system是c库的函数WinExec是windows函数区别2.system有一个参数,是命令行Winexec有两个参数,一个是命令行,一个是窗口显示区别3.虽然两个都是命令行,但有很大的区别Winexec的命令行参数一般是一个外部程序的路径加给这个程序的参数,如Winexec("D:\
otepad.exe 1.txt",WM_SHOWWIN...
转载
572阅读
0评论
0点赞
发布博客于 2 年前

下载者001

// 下载者001.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include &lt;windows.h&gt;#pragma comment(lib,"Urlmon.lib")int _tmain(int argc, _TCHAR* argv[]){ HRESULT urldown; urldown = URLDownloadToFi...
转载
231阅读
0评论
0点赞
发布博客于 2 年前

写日志函数c盘WriteLog

void WriteLog(char * szLog){ SYSTEMTIME st; GetLocalTime(&amp;st); FILE *fp; fp = fopen("c:\\log.txt", "at"); fprintf(fp, "MyLogInfo: %d:%d:%d:%d ", st.wHour, st.wMinute, st.wSecond, st.wMillis...
转载
729阅读
0评论
0点赞
发布博客于 2 年前

C4996:#("The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name:")

在使用visual studio 2015 写程序时 ,出现了(“The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name:”) 的报错打开你创建的项目  菜单栏下“项目” 然后点击“ 属性/(*属性)”*“是你自己创建项目的名称接下来我们会看到然后再左侧找到 ”...
转载
280阅读
0评论
0点赞
发布博客于 2 年前

创建服务开机自启动

// 创建服务自启动.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <Windows.h>#include <stdio.h> #pragma comment ( lib, "Advapi32.lib" )void WINAPI ServiceMain(int argc, char** argv);...
转载
148阅读
0评论
1点赞
发布博客于 2 年前

注册表操作开机启动R0自启动

void C注册表操作_自启动runDlg::OnBnClickedButton2(){ HKEY hRoot = HKEY_LOCAL_MACHINE; wchar_t *szSubKey = L"Software\\Microsoft\\Windows\\CurrentVersion\\Run"; HKEY hKey;//打开指定子键 DWORD dwDisposition = R...
转载
89阅读
0评论
0点赞
发布博客于 2 年前

注册表R0自启动 开机启动L"Software\\Microsoft\\Windows\\CurrentVersion\\Run"

void C注册表操作_自启动runDlg::OnBnClickedButton2(){ HKEY hRoot = HKEY_LOCAL_MACHINE; wchar_t *szSubKey = L"Software\\Microsoft\\Windows\\CurrentVersion\\Run"; HKEY hKey;//打开指定子键 DWORD dwDisposition = R...
转载
391阅读
0评论
0点赞
发布博客于 2 年前

TCP服务器+客户端_全部集合

#include<winsock2.h>#include<stdio.h>#include<windows.h>#pragma comment(lib,"WS2_32.lib")int main(){ WSADATA wsadata; WORD w=MAKEWORD(2,0); char sztext[60]="大赛 欢迎你 呵呵顶服务器\r\...
转载
117阅读
0评论
0点赞
发布博客于 2 年前

汇编插入打印函数

    __asm    {pushad    pushfd    call ceshi11    popfd    popad    }ULONG ceshi11(){    KdPrint(("进入退出线程111111122222222222"));    return 0;}
转载
97阅读
0评论
0点赞
发布博客于 2 年前

ring0下的 fs:[124] KPCR结构体

 反汇编内核函数的时候经常会看到mov eax, fs:[124].一直没弄清楚fs寄存器在ring0存放的是什么。今天查了下资料。    fs寄存器在Ring0中指向一个称为KPCR的数据结构,即FS段的起点与KPCR结构对齐。而在Ring0中fs寄存器一般为0x30。    这样看KPCR的数据结构:nt!_KPCR +0x000 NtTib : _N...
转载
298阅读
0评论
1点赞
发布博客于 2 年前

windows下的用户态调试的底层与上层实现

调试器通过CreateProcess传入带有DEBUG_PROCESS和DEBUG_ONLY_THIS_PROCESS的dwCreationFlags创建被调试进程。这种情况下,进程创建的早期(执行NtCreateProcess或NtCreateProcessEx之前),调用DbgUiConnectToDbg()使调用线程和调试子系统建立连接。DbgUiConnectToDbg()内部调用ZwCr...
转载
233阅读
0评论
0点赞
发布博客于 2 年前

windows下的用户态调试的底层与上层实现

调试器通过CreateProcess传入带有DEBUG_PROCESS和DEBUG_ONLY_THIS_PROCESS的dwCreationFlags创建被调试进程。这种情况下,进程创建的早期(执行NtCreateProcess或NtCreateProcessEx之前),调用DbgUiConnectToDbg()使调用线程和调试子系统建立连接。DbgUiConnectToDbg()内部调用ZwCr...
转载
233阅读
0评论
0点赞
发布博客于 2 年前

IAT表的详解(转)

IAT表详解IAT的全称是Import Address Table。IAT表是执行程序或者dll为了实现动态加载和重定位函数地址,用到的一个导入函数地址表。这里面记录了每个导入函数的名字和所在的dll名称,在pe加载的时候系统会加载这些dll到用户的地址空间然后把函数地址覆盖这个表里的函数地址,然后重构所有用到这个表的代码,让其调用直接指向实际函数地址(PE是否覆盖不确定,驱动会这么做),...
转载
518阅读
0评论
0点赞
发布博客于 2 年前

PE格式第七讲,重定位表

作者:IBinary出处:http://www.cnblogs.com/iBinary/版权所有,欢迎保留原文链接进行转载:)一丶何为重定位(注意,不是重定位表格)首先,我们先看一段代码,比如调用Printf函数,使用OD查看.那么大家有没有想过这么一个问题,函数的字符串偏移是00407030位置,函数Call的地址是00401020的位置但是如果模块首地址申请不到了,变为...
转载
190阅读
0评论
0点赞
发布博客于 2 年前

PE结构之重定位表

 什么是重定位: 重定位就是你本来这个程序理论上要占据这个地址,但是由于某种原因,这个地址现在不能让你占用,你必须转移到别的地址,这就需要基址重定位。你可能会问,不是说过每个进程都有自己独立的虚拟地址空间吗?既然都是自己的,怎么会被占据呢?对于EXE应用程序来说,是这样的。但是动态链接库就不一样了,我们说过动态链接库都是寄居在别的应用程序的空间的,所以出现要载入的基地址被应用程序占据了或者被其它...
转载
257阅读
0评论
0点赞
发布博客于 2 年前

梦无极_ssdt_hook_190_保护记事本_可用_

#include "ntddk.h"#pragma pack(1)typedef struct ServiceDescriptorEntry { unsigned int *ServiceTableBase; unsigned int *ServiceCounterTableBase; //仅适用于checked build版本 unsigned int NumberOfService...
转载
316阅读
0评论
0点赞
发布博客于 3 年前

C语言宏定义,内置宏,__FILE__,__LINE__,## 用法

当然宏定义非常重要的,它可以帮助我们防止出错,提高代码的可移植性和可读性等。下面列举一些成熟软件中常用得宏定义1,防止一个头文件被重复包含#ifndef COMDEF_H#define COMDEF_H//头文件内容 …#endif2,重新定义一些类型,防止由于各种平台和编译器的不同,而产生的类型字节数差异,方便移植。typedef  unsigned long int  ...
原创
247阅读
0评论
0点赞
发布博客于 3 年前

祖玛阁怎么走 传奇永恒祖玛阁走法全面介绍

传奇永恒祖玛阁怎么走,祖玛阁的走法是什么,这个问题是不是一直困扰着大家呢,本期空白就教大家祖玛阁的走法,看看传奇永恒祖玛阁的走法,希望大家喜欢。传奇永恒  五层到七层:  左、上、上、上、右。  五层到药店:  右、左。  任意房间到药店:  左、上、左、上、左、上、左、上  七层到药店:  上、左、左、左、上、左  药店到五层:  左、左、左、左、上、...
转载
840阅读
1评论
0点赞
发布博客于 3 年前

传奇永恒BOSS精英怪在哪里刷 BOSS精英怪出现地点 简单

 传奇永恒BOSS精英怪在哪里刷?很多人可能都不清楚在哪里可以刷BOSS精英怪吧,那么接下来就让琵琶网小编来告诉大家吧,希望可以帮助到大家。  传奇永恒BOSS精英怪在哪里刷?  【BOSS精英怪出现地点】  1.沃玛森林此处路过碰到一精英怪。   2.沃玛寺庙二层此处打怪,突然刷出一精英。   3.死亡峡谷随机卷飞到这个点,发现一个精英怪。   4...
原创
1526阅读
0评论
0点赞
发布博客于 3 年前

各路BOSS精英怪刷点,欢迎各路大神来补充

沃玛森林此处路过碰到一精英怪,立马截了图上传 送TA礼物 回复1楼2016-03-28 16:19 9377游戏传奇1.76版本 怀旧经典游戏 传奇官方登录1.76版传奇,热血PK,大型攻城,沃玛教主,祖玛教主,经典传奇,不容错过.散人天堂,传奇玩家的福音.2018-11-25 06:38 广告   晚风爷   屠龙刀 12...
转载
538阅读
0评论
0点赞
发布博客于 3 年前

《Windows内核原理与实现》书内工具

《Windows内核原理与实现》书内工具 包括DPerfLite,EventHandler,IRPMon,MemMon,ProcMon,SDTViewer 等相关工具
zip
发布资源于 3 年前

hook_对象类型的回调函数打开进程 保护记事本不被打开_

 #include"ntifs.h"ULONG yuanshi_OpenProcedure;typedef enum _OB_OPEN_REASON {    ObCreateHandle,    ObOpenHandle,    ObDuplicateHandle,    ObInheritHandle,    ObMaxOpenReason} OB_OPEN_REASON;...
转载
176阅读
0评论
0点赞
发布博客于 3 年前

遍历驱动类型

#include"ntifs.h"typedef VOID(__stdcall FUNCT_00A4_0EDA_DumpProcedure) (VOID*, struct _OBJECT_DUMP_CONTROL*);typedef LONG32(__stdcall FUNCT_000F_0EE2_OpenProcedure) (enum _OB_OPEN_REASON, CHAR, st...
转载
215阅读
0评论
0点赞
发布博客于 3 年前

关于Win7 x64下过TP保护(内核层)(转)

首先特别感谢梦老大,本人一直没搞懂异常处理机制,看了他的教程之后终于明白了。在他的教程里我学到了不少东西。第一次在论坛发帖,就说说Win7 x64位下怎么过TP保护。如果有讲错的地方,还望指出。说不定我发帖后一星期TP就会大更新呢。打字排版好辛苦。 先说说内核层,看大家的反应后再说说应用层的保护。(包括解决CE非法问题)调试对象:DXF调试工具:OD、Windbg调试环境:Win7...
转载
1820阅读
0评论
0点赞
发布博客于 3 年前

关于Win7 x64下过TP保护(应用层)(转)

非常感谢大家那么支持我上一篇教程。Win10 快出了,所以我打算尽快把应用层的部分说完。调试对象:DXF调试工具:CE、OD、PCHunter、Windbg调试先言:TP的应用层保护做得比较多,包括对调试器的检测,比如CE工具会被DXF报非法。有的保护还是内核与应用层交替保护。应用层:1、TP让调试器卡死(内核互动)现象: &lt;ignore_js_op&gt; 如图,TP会检测...
转载
1688阅读
0评论
1点赞
发布博客于 3 年前

MFC中定时器OnTimer函数的使用

在MFC中我们经常需要定时读写数据,或者定时刷新界面,更新数据和状态,这就需要用到定时器,其实现函数为OnTimer,下面对其用法步骤(基于VS2010)进行简要说明:1、在类视图中点击需要使用定时器的对话框类,在属性窗口选择消息,在下面的消息函数中选中WM_TIMER,后面选择添加OnTimer函数,如下图所示:2、编写OnTimer函数void CLD_PowerDlg::On...
转载
304阅读
0评论
0点赞
发布博客于 3 年前

本机使用无线WIFI时,虚拟机网络设置方式

当宿主机使用的是WIFI时,虚拟机不能选择NAT模式(或许可以,但是我好久也没解决),选择桥接模式是最快、最简单的方式1.虚拟机设置里面网络适配器选择桥接模式 2. edit——虚拟机网络编辑器——VMNET0 选择桥接模式,桥接到选择自动(记得自动设置里面的勾全打上),然后确定就解决了...
原创
639阅读
0评论
0点赞
发布博客于 3 年前

类库查询(MFC类库中文版等)

类库查询(MFC类库详解中文版,opencv帮助文档集,opencv参考手册,opengl函数查询),MFC类需要输入基类。
zip
发布资源于 3 年前

error LNK2019: 无法解析的外部符号 _socket@12,该符号在函数 _wmain 中被引用

Reason:学习使用socket,在stdafx.h文件加了#include,编译#include "stdafx.h"#includeusing namespace std;int _tmain(int argc, _TCHAR* argv[]) {int socketId;socketId = socket(AF_INET, SO...
转载
1000阅读
0评论
0点赞
发布博客于 3 年前

得到系统版本

ULONG    uMajorVersion;    ULONG    uMinorVersion;    PsGetVersion(&amp;uMajorVersion, &amp;uMinorVersion, NULL, NULL);
转载
67阅读
0评论
0点赞
发布博客于 3 年前

内核中睡眠 函数 KeDelayExecutionThread 睡30秒

VOID shuimian(ULONG n){KdPrint(("进入睡眠.............
"));LARGE_INTEGER timeout;timeout.QuadPart = -10 * 1000 * 1000;timeout.QuadPart *= n;KeDelayExecutionThread(KernelMode, FALSE, &amp;timeout)...
转载
1856阅读
0评论
1点赞
发布博客于 3 年前

NTSTATUS状态码 详细解说

返回值/代码 描述 0x00000000 状态成功 手术顺利完成。 0x00000000 状态等待_0 调用方为WaitType指定WaitAny,对象数组中的Dispatcher对象之一已设置为已发出信号的状态。 0x00000001 状态等待_1 调用方...
转载
4605阅读
0评论
1点赞
发布博客于 3 年前

NTSTATUS codes(驱动错误码对照表)

These are from the Windows .NET Server 2003 RC2 DDK.  00000000 STATUS_SUCCESS 00000000 STATUS_WAIT_0 00000001 STATUS_WAIT_1 00000002 STATUS_WAIT_2 00000003 STATUS_WAIT_3 ...
转载
1347阅读
0评论
0点赞
发布博客于 3 年前

字符串比较函数UNICODE_STRING

        //if (0 == RtlCompareUnicodeString(&amp;pTempDataTableEntry-&gt;BaseDllName, &amp;usModuleName, FALSE)) //RtlEqualUnicodeString        if (0 == RtlEqualUnicodeString(&amp;pTempDataTableEntry-...
转载
1863阅读
0评论
0点赞
发布博客于 3 年前

wchar_t*和string相互转换

在处理中文时,一个中文通常占用2个字节,而char*和string字符串中的字符都是一个字节的,为了能够有效处理中文,引入了wchar_t*型变量,当需要处理中文时,可以首先将string转换成char*,然后将char*转换成wchar_t*即可。在window环境中,可以利用MultiByteToWideChar();WideCharToMultiByte();1 2两个A...
转载
6300阅读
0评论
1点赞
发布博客于 3 年前

字符串转换Unicode下wstring(wchar_t*)和string(char*)互相转换

#include&lt;string&gt; using namespace std; //将string转换成wstring wstring string2wstring(string str) { wstring result; //获取缓冲区大小,并申请空间,缓冲区大小按字符计算 ...
转载
574阅读
0评论
0点赞
发布博客于 3 年前

windbg最新版 win10

windbg最新版,支持win10和vs2017,包括32位和64位两个版本,共享给大家
zip
发布资源于 3 年前

导出对象类型POBJECT_TYPE

extern POBJECT_TYPE *IoDriverObjectType;    Status = ObReferenceObjectByName(        &amp;usObjectName,        OBJ_CASE_INSENSITIVE,        NULL,        0,        *IoDriverObjectType,        Ke...
转载
815阅读
0评论
0点赞
发布博客于 3 年前

三。对象创建(ObCreateObject)和对象删除(ObDereferenceObject、ObpRemoveObjectRoutine)

三。对象创建(ObCreateObject)和对象删除(ObDereferenceObject、ObpRemoveObjectRoutine)2010年05月11日 星期二 11:20 为对象分配内存看完了, 这次我们看一个比较高层的函数。ObCreateObject, 这是内核的导出函数, 所有模块都可以使用(虽然它没有被文档化....)它的作用是创建指定类型(OBJECT_...
转载
142阅读
0评论
0点赞
发布博客于 3 年前

对象创建(ObCreateObject)和对象删除(ObDereferenceObject、ObpRemoveObjectRoutine)

原文地址:http://uninformed.org/index.cgi?v=1&amp;a=5&amp;p=5 进程执行的临界时段是指在新的进程对象实例被nt!ObCreateObject创建 和该进程对象被nt!ObInsertObject插入到进程对象类型表之间的时段。在该时段尝试获取进程的句柄是不安全的,比如使用nt!ObOpenObjectByPointer。如果一个应用程序试...
转载
747阅读
0评论
0点赞
发布博客于 3 年前

关于未导出函数与导出但是未文档化的函数MmGetSystemRoutineAddress

未公开的函数(导出未文档化)是已经导出了,但是不能直接使用。使用方法:1。在驱动层使用MmGetSystemRoutineAddress加函数名去获取函数的地址2。在应用层使用Loadlibrary和GetProcessAddress(事先当然要先定义好原型)未导出函数的使用比较麻烦,一般要先获取那个函数所在模块的基地址,然后再通过特征码去得到函数地址。或者在某个函数内部进行特征码的搜索。...
转载
256阅读
0评论
0点赞
发布博客于 3 年前

windows蓝屏dump分析方法

一、WinDbg是什么?它能做什么?  WinDbg是在windows平台下,强大的用户态和内核态调试工具。它能够通过dmp文件轻松的定位到问题根源,可用于分析蓝屏、程序崩溃(IE崩溃)原因,是我们日常工作中必不可少的一个有力工具,学会使用它,将有效提升我们的问题解决效率和准确率。二、WinDbg6.12.0002.633下载:x86位版本下载:【微软官方安装版】蓝屏Dump分析工...
转载
955阅读
0评论
0点赞
发布博客于 3 年前

ssdt表通用hook 任意ssdthook

ULONG old_NtCreateDebugObject=0;ULONG ssdt_hook_quanbu_biaozhong(ULONG ssdt_i,ULONG newhanshu){ old_NtCreateDebugObject = KeServiceDescriptorTable.ServiceTableBase[ssdt_i]; __asm { cli m...
转载
139阅读
0评论
0点赞
发布博客于 3 年前

扫内核

//搜索函数地址ULONG sao_neihe(ULONG dizhi,ULONG daxiao, char*hanshuming, ULONG*dizhichu){ if (strstr(hanshuming, "KiFastCallEntry") != 0) { KdPrint(("进来了
")); KdPrint(("基质%x 大小%x", dizhi, daxiao)...
转载
80阅读
0评论
0点赞
发布博客于 3 年前

2003系统_开双机调试_符号链接路径设置

设置好虚拟机串口将编译好的wrkx86.exe复制到\windows\system32\目录下看 哪个硬件抽象层 再把硬件抽象层驱动 复制 system32\目录下link -dump -all \WINDOWS\system32\hal.dll | findstr pdb如果不成功 需要设置路径 path C:\WRK\tools\x86;%path%教程中是 p...
转载
222阅读
0评论
0点赞
发布博客于 3 年前

《重要》内核下各种同步处理方法(自旋锁、信号灯、互斥体…)

《重要》内核下各种同步处理方法(自旋锁、信号灯、互斥体…)AloneMonkey 2014年7月19日 01.在支持多线程的操作系统下,有些函数会出现不可重入的现象。所谓“可重入”是指函数的执行结果不和执行顺序有关。反之如果执行结果和执行顺序有关,则称这个函数是“不可重入”的。 2.Windows将中断的概念进行了扩展,提出一个中断请求级(IRQL)的概念。其中规定了32个中断请求...
转载
384阅读
0评论
0点赞
发布博客于 3 年前

反汇编 结构体 系统函数

typedef struct EH3_EXCEPTION_REGISTRATION{    DWORD    Next;    DWORD    ExceptionHandler;    DWORD    ScopeTable;    DWORD    TryLevel;}_EH3_EXCEPTION_REGISTRATION;typedef struct CPPEH_RECORD...
转载
360阅读
0评论
0点赞
发布博客于 3 年前

反汇编 while(i小于100)

int _tmain(int argc, _TCHAR* argv[]){ int num = 0; int i = 0; while (i &lt;= 100) { num = num+i; i++; } printf("num %d
", num); getchar(); return 0;}int num = 0;00EA3CFE mov ...
转载
63阅读
0评论
0点赞
发布博客于 3 年前

64位驱动中加入汇编代码

本文介绍如何在驱动程序的C文件中调用ASM文件中导出的汇编函数引言    Windows驱动程序使用DDK或者IFSDDK(以下简称DDK)中的Build.exe程序对源文件进行编译和链接,操作时只需启动相应的DDK命令行程序,进入待编译的源文件目录,执行Build命令即可得到.sys文件。    Build命令实际上是调用了一个nmake程序,nmake程序随后调用cl.exe和link....
转载
1374阅读
0评论
1点赞
发布博客于 3 年前

ida6.6 流出版 真

ida 超级反编译工具,这是6.6商业完全流出版...相对赞,安装密码 itJpyHidszaR
zip
发布资源于 3 年前

反汇编_do_while

int _tmain(int argc, _TCHAR* argv[]){ int num = 0; int i = 0; do { num = i + num; i++; } while (i&lt;101); printf("num %d
", num); getchar(); return 0;}int num = 0;00D73CFE mov ...
转载
112阅读
0评论
0点赞
发布博客于 3 年前

反汇编 for(int i=0;i100;i++)

#pragma warning(disable:4996)int _tmain(int argc, _TCHAR* argv[]){ int num = 0; for (int i=0; i &lt; 101; i++) { num = num + i; } printf("num %d
", num); getchar(); return 0;}int num =...
转载
749阅读
0评论
0点赞
发布博客于 3 年前

反汇编 switch_case_break_default数组形式

#include "stdafx.h"#include "windows.h"#pragma warning(disable:4996)int _tmain(int argc, _TCHAR* argv[]){ int num = 0; scanf("%d", &amp;num); switch (num) { case 1: printf("11111111111");...
转载
86阅读
0评论
0点赞
发布博客于 3 年前

反汇编 if else_if else_if else

int _tmain(int argc, _TCHAR* argv[]){ int a = 1; int b = 2; int c = 3; MessageBox(NULL, L"111", L"2", 0); if (a&lt;b) { printf("11111111111n"); } else if (b&lt;c) { printf("22222222"...
转载
187阅读
0评论
0点赞
发布博客于 3 年前

反汇编 if else

#include "stdafx.h"#include "windows.h"int _tmain(int argc, _TCHAR* argv[]){ int a = 1; int b = 2; int c = 3; MessageBox(NULL, L"111", L"2", 0); if (a&lt;b) { printf("11111111111n"); }..
转载
75阅读
0评论
0点赞
发布博客于 3 年前

两种HOOK IDT方法

IDT :就是系统中断表,是存放Windows的中断和异常的处理函数的表IDT的数据结构:  typedef struct _IDTENTRY { unsigned short LowOffset; //处理函数的低2字节 unsigned short selector; //处理函数所在的段选择子 unsigned char retent...
转载
1047阅读
0评论
0点赞
发布博客于 3 年前

结构化异常 try-except 语句 C

若要了解有关 Visual Studio 2017 RC 的最新文档,请参阅 Visual Studio 2017 RC 文档。Microsoft 专用try-except 语句是一项 Microsoft C++ 语言扩展,它使应用程序能够在正常终止执行的事件发生时获取对程序的控制权。 此类事件称为异常,处理异常的机制称为结构化异常处理。异常可能基于硬件或软件。 即使应用程序无法从硬件...
转载
1240阅读
0评论
2点赞
发布博客于 3 年前

函数名获取函数地址 MmGetSystemRoutineAddress

#include&lt;ntifs.h&gt;VOID DriverUnLoad(PDRIVER_OBJECT pDriverObject){ DbgPrint("驱动已卸载...");}NTSTATUS DriverEntry(IN PDRIVER_OBJECT pDriverObject, IN PUNICODE_STRING pRegPath){ NTSTATUS ...
转载
2402阅读
0评论
1点赞
发布博客于 3 年前

ring0下的 fs:[124]

 反汇编内核函数的时候经常会看到mov eax, fs:[124].一直没弄清楚fs寄存器在ring0存放的是什么。今天查了下资料。    fs寄存器在Ring0中指向一个称为KPCR的数据结构,即FS段的起点与KPCR结构对齐。而在Ring0中fs寄存器一般为0x30。    这样看KPCR的数据结构:nt!_KPCR +0x000 NtTib : ...
转载
139阅读
0评论
0点赞
发布博客于 3 年前

KPCR结构体

@0环的ETHREAD结构体是记录线程的相关信息,EPROCESS结构体是记录进程相关的信息,同样我们每个CPU也有一个结构体来记录每个CPU的状态这个结构体就是KPCR结构体KPCR结构体如下下面该结构体中几个主要的成员,kd&gt; dt _KPCRnt!_KPCR  +0x000 NtTib            : _NT_TIB  +0x01c SelfPcr          ...
转载
1396阅读
0评论
0点赞
发布博客于 3 年前

汇编工具安装一:MASM32的安装!

MASM32是一款汇编开发工具,网址:http://www.masm32.com/ ,它是集合了很多开发汇编程序的工具,windows下汇编程序的开发,很多人都在使用它。直接下载:http://website.assemblercode.com/masm32/masm32v11r.zip安装:注意问题,如果你是64位操作系统,那么安装过程会报错,那是因为缺少win32一些文件造成的,我们可...
转载
2063阅读
0评论
0点赞
发布博客于 3 年前

汇编语言基于x86处理器随书库与示例源代码

汇编语言基于x86处理器随书库与示例源代码均在其中。全部源码
zip
发布资源于 3 年前

汇编语言_基于x86处理器第7版_中文高清完整版PDF_带索引书签 2本

里面含2本书 1本80M的标清版 1本180M的超高清版 现在全网络没有比180M这个版本更高清的了 第4章 数据传送、寻址和算术运算 第5章 过程 第6章 条件处理 第7章 整数运算 第8章 高级过程 第9章 字符串和数组 第10章 结构和宏 第11章 MS-Windows编程 第12章 浮点数处理与指令编码 第13章 高级语言接口 本书是汇编语言课程的经典教材,系统介绍x86和Intel64处理器的汇编语言编程与架构。前9章为汇编语言的核心概念,包括:汇编语言基础,x86处理器架构,数据传送、寻址和算术运算,过程,条件处理,整数运算,高级过程,以及字符串和数组。后4章介绍结构和宏、MS-Windows编程、浮点数处理和指令编码,以及高级语言接口。
zip
发布资源于 3 年前

使用WinDbg分析蓝屏dump原因

http://support.icafe8.com/technologynews/focus/932.html 一、WinDbg是什么?它能做什么?  WinDbg是在windows平台下,强大的用户态和内核态调试工具。它能够通过dmp文件轻松的定位到问题根源,可用于分析蓝屏、程序崩溃(IE崩溃)原因,是我们日常工作中必不可少的一个有力工具,学会使用它,将有效提升我们的问题解决效率和准...
转载
2088阅读
0评论
2点赞
发布博客于 3 年前

C++ 'include' 的两个头文件互相包含出错

头文件保护符通常,现在写代码时都会随手在头文件中加入头文件保护符。有以下两种形式的保护符。   #ifndef ABCDE #define ABCDE //..... 内容   #endif  #pragma once两种模式的作用是相同的,都是只让头文件在解析过程中只会展开一次。 能工作的循环包含情况今天遇到的问题...
转载
539阅读
0评论
0点赞
发布博客于 3 年前

C语言中,头文件和源文件的关系(转)

简单的说其实要理解C文件与头文件(即.h)有什么不同之处,首先需要弄明白编译器的工作过程,一般说来编译器会做以下几个过程:1.预处理阶段 2.词法与语法分析阶段 3.编译阶段,首先编译成纯汇编语句,再将之汇编成跟CPU相关的二进制码,生成各个目标文件 (.obj文件)4.连接阶段,将各个目标文件中的各段代码进行绝对地址定位,生成跟特定平台相关的可执行文件,当然,最后还可以用objcop...
转载
136阅读
0评论
1点赞
发布博客于 3 年前

结构体 struct _LDR_DATA_TABLE_ENTRY c++ xp3 win7 64

@Windows XP Professional Service Pack 3 (x86) (5.1, Build 2600)lkd&gt; dt -b _LDR_DATA_TABLE_ENTRYnt!_LDR_DATA_TABLE_ENTRY   +0x000 InLoadOrderLinks : _LIST_ENTRY      +0x000 Flink            : P...
转载
401阅读
0评论
0点赞
发布博客于 3 年前