监控进程创建代码

驱动开发:内核监控进程与线程回调 系统中监控进程与线程可以使用微软提供给我们的两个新函数来实现,此类函数的原理是创建一个回调事件,当有进程或线程被创建或者注销时,系统会通过回调机制将该进程相关信息优先返回给我们自己的函数待处理结束后再转向系统层。那么会提示连接的设备没有发挥作用,我们则成功拦截了这次打开,当然如果在打开进程之前扫描其特征并根据特征拒绝进程打开,那么就可以实现一个简单的防恶意程序,进程监控在防恶意程序中也是用的最多的。如上,该函数只有两个参数,第一个参数是回调函数,第二个参数是是否注销,通常在驱动退出时可以传入。 阅读详情
#include   "stdafx.h"  
  #include   "apihook.h"  
  #include   <stdio.h>  
   
   
  typedef   BOOL   (WINAPI   *PFNCPW)(  
  LPCTSTR   lpApplicationName,  
  LPTSTR   lpCommandLine,  
  LPSECURITY_ATTRIBUTES   lpProcessAttributes,  
  LPSECURITY_ATTRIBUTES   lpThreadAttributes,  
  BOOL   bInheritHandles,  
  DWORD   dwCreationFlags,  
  LPVOID   lpEnvironment,  
  LPCTSTR   lpCurrentDirectory,  
  LPSTARTUPINFO   lpStartupInfo,  
  LPPROCESS_INFORMATION   lpProcessInformation  
    );  
   
  extern   CAPIHook   g_CreateProcessW;  
   
  BOOL   WINAPI   proxy_CreateProcessW(  
      LPCTSTR   lpApplicationName,  
      LPTSTR   lpCommandLine,  
      LPSECURITY_ATTRIBUTES   lpProcessAttributes,  
      LPSECURITY_ATTRIBUTES   lpThreadAttributes,  
      BOOL   bInheritHandles,  
      DWORD   dwCreationFlags,  
      LPVOID   lpEnvironment,  
      LPCTSTR   lpCurrentDirectory,  
      LPSTARTUPINFO   lpStartupInfo,  
      LPPROCESS_INFORMATION   lpProcessInformation  
  )  
   
   
  LPSTR   lpszName   =   new   CHAR[   255   ];  
  LPSTR   lpszName1   =   new   CHAR[   255   ];  
  //由于传入的是宽字符串,所以要做处理,,  
  //下面可以添加你要处理的代码,,我只是弹出对话框要求用户确认运行还是不运行  
  ::WideCharToMultiByte(   CP_ACP,   0,   (unsigned   short   *)lpCommandLine,   -1,   lpszName1,   255,   NULL,   NULL   );  
  ::WideCharToMultiByte(   CP_ACP,   0,   (unsigned   short   *)lpApplicationName,   -1,   lpszName,   255,   NULL,   NULL   );  
  OutputDebugString(lpszName);  
  OutputDebugString(lpszName1);  
  wsprintf(buf,"%s/r/n%s",lpszName,lpszName1);  
  if(MessageBox(NULL,buf,"注意",MB_YESNO|MB_ICONWARNING|MB_SYSTEMMODAL)  
  ==IDNO)  
  return FALSE;  
   
  return   ((PFNCPW)(PROC)g_CreateProcessW)(  
    lpApplicationName,  
    lpCommandLine,  
    lpProcessAttributes,  
    lpThreadAttributes,  
    bInheritHandles,  
    dwCreationFlags,  
    lpEnvironment,  
    lpCurrentDirectory,  
    lpStartupInfo,  
    lpProcessInformation  
    );  
   
  }  
   
   
  CAPIHook   g_CreateProcessW("kernel32.dll",   "CreateProcessW",    
  (PROC)proxy_CreateProcessW);  
   
   
   
   
   
   
  BOOL   APIENTRY   DllMain(   HANDLE   hModule,    
                                                DWORD     ul_reason_for_call,    
                                                LPVOID   lpReserved  
    )  
  {  
          return   TRUE;  
  }  
 
实时监控进程创建 Hook ObCreateObject 实时监控进程创建 立即下载

相关推荐

监控(C语言代码)

某国的安全部门监控了全国的数据流,该部门的程序员接到一个任务,恐怖组织会给手下发送一个数字序列A

C++ API HOOK (OpenProcess)

#include &lt;windows.h&gt;#include "APIHook.h"extern CAPIHook g_OpenProcess;// 自定义OpenProcess函数#pragma data_seg("YCIShared")HHOOK g_hHook = NULL;DWORD dwCurrentProcessId=0;#pragma data_seg()HANDLE ...

資料為我做事 1542

进程监控代码

进程监控代码进程监控代码

利用HOOK API做进程保护器

其实就很简单,只是对TerminateProcess的HOOK,因为要阻止的不是本进程的,所以要用到全局钩子,也就是把他做成dll形式的! 首先,对前面的HOOK API进行封装CAPIHook:   [cpp] view plain copy /////////////////////////////////////////////////////////   // APIHook...

bruce135lee的专栏 2026

进程监控实现代码[vbs+bat]

是用BAT写的,主体是VBS,所以放在VBS分类了

linux进程监控shell脚本代码

主要为大家分享一个监控linux进程的shell脚本,当程序异常退出时可以自动重启,涉及到捕获进程信号与重启进程的命令与知识

ProcessMonitor实现进程文件和注册表监控

对于文件、网络等监控亦是如此,进程的启动和执行离不开对于文件的读写,,相信很多人都碰到DLL文件找不到但是却又不知道DLL放在哪个路径的问题,而这个工具能捕获进程的所有文件读写信息,正好解决了这种问题。一般我们监控指定进程可以使用processName和PID,以谷歌浏览器为例,它的进程名是chrome.exe,那么就可以根据 "processName is chrome.exe"来监控所有的chrome.exe进程了,因为chrome.exe一般是多进程模式,如果定位单个进程,那么就需要指定PID了。

weixin_38526093的博客 8698

通过声音识别鸟类

根据野生鸟类的外表来识别它是一回事。仅仅根据声音来识别同一只鸟是另一回事。除非你是一个熟练的观鸟者,通过声音识别鸟类可能相当具有挑战性德国马尔堡大学的一组数学、计算机科学和生物学研究人员设计了一种快速识别鸟类和监测当地生物多样性的方法。他们使用连接到 NVIDIA 的便携式设备拍摄的录音根据研究人员的说法是一个边缘人工智能系统,“基于分布式系统中运行的嵌入式边缘设备,能够对森林中记录的声景进行高效、连续的评估。”要了解更多信息,请参阅。

分享AI前沿科技 1680

ApiHook类

// 头文件// ApiHook.h: interface for the CApiHook class.////////////////////////////////////////////////////////////////////////#ifndef API_HOOK_H#define API_HOOK_Hclass CApiHook  {public:    HANDLE

sanshao27的专栏 1510

OctoMag: An Electromagnetic System for 5-DOF Wireless Micromanipulation

电磁线圈组驱动经典系统,可以作为参考。 OctoMag: 用于5自由度无线微操作的一个电磁铁系统 OctoMag: An Electromagnetic System for 5-DOF Wireless Micromanipulation [1] Paper Link Authors: J. J. Abbott, etc. 2010, TRO IEEE Transactions on Robot...

XU Yangxin的博客 1665

BMS菊花链芯片怎么选?一张表对比ADI、TI、NXP五大厂家的隔离通信方案

本文深入对比了ADI、TI、NXP等五大厂商的BMS菊花链芯片隔离通信方案,涵盖技术演进、核心参数和场景化选型策略。通过实测数据和开发经验分享,帮助工程师在新能源汽车和储能系统中选择最优方案,提升通信可靠性和成本效益。

weixin_33724046的博客 432

又是一个APIHOOK

又是一个APIHOOK 借用了海风月影的HookApi 0.5的一些思路;又是一个APIHOOK,没什么特别的!能顺利完成任务,没有什么多余的!代码里用到了libdasm,去下载一个吧!HookProc的函数类型和原来的api一样,只是参数比原API多2个 DWORD WINAPI HookProc(DWORD RetAddr ,__pfnXXXX pfnXXXX, ...);

linuxheik的专栏 624

PaddleOCR 3.x 最新版使用教程(2025)——从安装到实战身份证识别,一步到位!

本文针对PaddleOCR 3.x大版本更新带来的参数变化和兼容性问题,提供从环境配置到实际应用的全流程解决方案。

qq_58607032的博客 9787

基于visual c++之windows核心编程代码分析(57)监控系统的每一个进程的创建

在监控病毒的时候,我们经常需要监控病毒创建的每一个进程,监控进程是如何实现的呢, 我们来见代码分析,实现监控系统的每一个进程的创建, #include "stdafx.h" #include "resource.h" #define MAX_LOADSTRING 100 /...

chengyixian7877的博客 131

【中软软件测试笔试题】中国软件与技术服务股份有限公司笔试一卷

请分别写出ISO7层架构,并分别说明TCP、UDP协议分别在处于哪一层,以及TCP、 UPD协议有什么区别。 答:7 应用层 6 表示层 5 会话层 4 传输层 3网络层 2 数据链路层 1 物理层 第四层;UDP是面向无连接、不可靠数据传输协议; TCP是面向连接、可靠数据传输协议......

Yanan990830的博客 1815

人工势场法在自动驾驶避障中的实践与优化

本文深入探讨了人工势场法在自动驾驶避障中的核心原理与实践优化。通过解析引力与斥力模型,揭示了经典算法在局部最优和目标不可达等问题上的局限性,并重点介绍了改进斥力场函数、引入道路边界斥力及动态参数调整等关键优化策略,有效提升了该局部路径规划算法在复杂动态场景下的实用性与鲁棒性。

weixin_29208327的博客 927

进程监控和线程监控

方式1 #include <ntifs.h> #include<ntddk.h> NTKERNELAPI PUCHAR PsGetProcessImageFileName( IN PEPROCESS Process ); VOID ProcessNotifyRoutine( _In_ HANDLE ParentId, _In_ HANDLE ProcessId, _In_ BOOLEAN Create ) { if (Create==TRUE) { //创建进程回调

qq_41490873的博客 657

基于自适应小波阈值算法的图像去噪

自适应小波阈值算法是一种基于小波变换的方法,它相对于传统的小波阈值去噪方法具有更好的性能和鲁棒性。该算法首先对图像进行小波变换,然后根据小波系数的大小确定一个自适应的阈值,将小波系数与阈值进行比较,大于阈值的系数被保留,小于阈值的系数被置零。在上述代码中,首先选取了小波函数sym4进行小波分解,然后根据标准差计算出阈值,使用wthresh函数进行阈值处理,最后进行反变换得到处理后的图像。该GUI界面与前面的自适应小波阈值算法代码结合,实现了图像的去噪,并提供了可视化的效果。

与其临渊羡鱼,不如退而结网 558

Frida实战:如何用child_gating.py监控Windows子进程的创建与调试(附完整代码)

本文详细介绍了如何利用Frida的child_gating功能监控和调试Windows子进程,提供从原理到实践的完整解决方案。通过child_gating机制,可以高效拦截进程创建事件、自动注入Frida并保持父子进程间的hook上下文一致性,适用于恶意软件分析、DRM系统逆向等场景。文章包含完整代码示例和实战技巧,帮助开发者快速掌握多进程调试技术。

qsc9012345的博客 559

基于Java+SpringBoot+微信小程序实现奶茶点单系统

再不用担心逢年过节的第一杯奶茶有没有人送了,制作一个奶茶点单系统自己当店主,开怀畅饮,一劳永逸。

商务合作 / 项目定制 / 学习交流。个人vx:lovely_wml 1万+

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

golang进程启动及监控

由于近期项目需要,使用go预研开发边缘智能程序,因此就想着通过golang实现进程守护及进程监控的功能,在golang程序中启动子进程,有很好的封装exec.Command,导入包为os/exec,本文主要以此种方式实现,包含以下两种实现方式。...

技术控的笔记 9万+

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Winxp下拦截所有进程的写注册表操作以及进程创建的监控

 原理介绍:  Nt系统下用户层(Ring3)下写注册表的程序大都调用ntdll.dll导出的ZwSetValueKey,该API简单通过int 2e并传递一个服务号进入内核调用同名系统服务(NTSetValueKey)。所以在用户层(Ring3)下拦截写注册表的操作最后的也是最底层的方法便是拦截该API。  同时为了实时监控系统中当前运行的所有进程对该API的直接或者间接调用,需要对所有

默数悲伤 3337

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Windows10 x64 Ring0实现进程创建监控

win10 x64 亲测可用

zcy5157912的博客 431
上一篇: WinCE中OEM适配层点滴之系统初始化
下一篇: 应用程序之间互相通讯的几种方法
JamesXing
博客等级 码龄20年 30粉丝 3原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值