zoukankan      html  css  js  c++  java
  • 劫持系统进程禁止创建文件

    劫持系统进程禁止创建文件
    #include<stdio.h>
    #include<windows.h>
    #include<string.h>
    #include"detours.h"
    #pragma comment (lib ,"detours.lib" )

    HANDLE(WINAPI * oldCreateFileW)(
            _In_ LPCWSTR lpFileName,
            _In_ DWORD dwDesiredAccess,
            _In_ DWORD dwShareMode,
            _In_opt_ LPSECURITY_ATTRIBUTES lpSecurityAttributes,
            _In_ DWORD dwCreationDisposition,
            _In_ DWORD dwFlagsAndAttributes,
            _In_opt_ HANDLE hTemplateFile
           ) = CreateFileW;

    HANDLE WINAPI newCreateFileW(
            _In_ LPCWSTR lpFileName,
            _In_ DWORD dwDesiredAccess,
            _In_ DWORD dwShareMode,
            _In_opt_ LPSECURITY_ATTRIBUTES lpSecurityAttributes ,
            _In_ DWORD dwCreationDisposition,
            _In_ DWORD dwFlagsAndAttributes,
            _In_opt_ HANDLE hTemplateFile
           ){
           MessageBoxA(0, "劫持成功!" , "系统信息" , 0);
            return 0;
    }

    void Hook()
    {

           DetourRestoreAfterWith(); //恢复原来状态,
           DetourTransactionBegin(); //拦截开始
           DetourUpdateThread(GetCurrentThread()); //刷新当前线程
           DetourAttach(( void **)&oldCreateFileW, newCreateFileW); //实现函数拦截
           DetourTransactionCommit(); //拦截生效

    }

    void UnHook()
    {
           DetourTransactionBegin(); //拦截开始
           DetourUpdateThread(GetCurrentThread()); //刷新当前线程
           DetourDetach(( void **)&oldCreateFileW, newCreateFileW); //撤销拦截函数
           DetourTransactionCommit(); //拦截生效
    }

    _declspec(dllexport) void go(){
            MessageBoxA(0, "系统进程劫持成功!" , "系统信息" , 0);
            int i = 0;
            while (1){
                  Hook();
                   if (i == 60){
                         UnHook();
                          break;
                  }
                  Sleep(1000);
           }
    }




  • 相关阅读:
    自定义Behavior 实现Listbox自动滚动到选中项
    MVVM RelayCommand 进阶技巧 CanExcute 的使用
    通过ListItem找到相应控件
    使用VS2010调试WPF/SL/WP7设计器界面异常
    代码管理技巧——两步创建本地SVN服务器图文教程
    基于云的商务智能应该注意的事项
    双击不能打开Qlikview的解决办法
    上海天善商业智能BI培训~第四季
    上海天善商业智能培训课程安排
    用java和olap4j从SSAS中获取数据
  • 原文地址:https://www.cnblogs.com/ZhangJinkun/p/4531478.html
Copyright © 2011-2022 走看看