有信誉的黑客联系方式_有信誉的黑客接单qq
释放驱动HOOK了SSDT表中的NtOpenProcess,但是对参数过滤不严密,只过滤 PROCESS_TERMINATE, PROCESS_WRITE, XXXX(忘记了),,三种.然后比较的PID是放在全局变量中,可以通过发送 DeviceIoControl 改变这个值~ 所以我们还是可以以其他的参数打开这个进程的(只要不含有那三个参数)~ 不过大家似乎都不感兴趣这个题目,于是代码就不放了,想要可以直接给我消息.顺便要求刀客公开他的方法~~ 1.使用 FindWindow 的方法,然后想窗口发送 WM_CLOSE 的消息 2.找到进程的线程, PostThreadMessage 发送 WM_QUIT 消息结束主线程 3.OpenThread ---> TerminateThread 4.RemoteExitProcess,以 PROCESS_CREATE_THREAD|VM_OPERATION方式打开进程,然后创建个远程线程,线程开始地址是 ExitProcess 参数0 ,程序自行了断. 5.首先确保进程能被打开(8和9介绍),然后创建一个线程去 DebugActiveProcess 他,然后什么也不做退出线程,程序无人接管,于是挂掉~ 6.以 VM_OPERATION方式打开进程, 然后调用 NtUnmapViewOfSection 卸载掉他的ntdll.dll 这个时候程序还未崩溃,然后再随意发送个消息给它,它的程序一经调用直接就会异常,但是ntdll已经挂掉,无法用户空间异常处理,自行了断~(我认为这个方法应和往进程空间写垃圾数据属于同一方法) 7.发送键盘 ESC 单击的消息(这个和发送窗口消息不能算同一个的). 8.下面是重点要介绍的:-----------------------------由于CrackMeApp打开了驱动的文件句柄,所以直接不能卸载驱动的.因此需要把这个句柄给关闭.于是怎么去获取远程的文件句柄呢?首先想到的是 DuplicateHandle ,BOOL DuplicateHandle( HANDLE hSourceProcessHandle, // handle to source process HANDLE hSourceHandle, // handle to duplicate HANDLE hTargetProcessHandle, // handle to target process LPHANDLE lpTargetHandle, // duplicate handle DWORD dwDesiredAccess, // requested access BOOL bInheritHandle, // handle inheritance option DWORD dwOptions // optional actions); 先看最后一个参数:DUPLICATE_CLOSE_SOURCE Closes the source handle. This occurs regardless of any error status returned. DUPLICATE_SAME_ACCESS Ignores the dwDesiredAccess parameter. The duplicate handle has the same access as the source handle. 也就是说当我们选择DUPLICATE_CLOSE_SOURCE时,远程的句柄就会自动关闭了 第一个参数,我们可以直接OpenProcess(PROCESS_DUP_HANDLE ,XXX)获得,第二个参数比较难找,就是CrackMeApp进程里打开驱动的句柄,要想获得这个我们得借助个ntdll.dll中的一个 API, ZwQuerySystemInformation 这个可以获得整个系统中所有的句柄信息,我们可以全部找出来,然后判断哪些句柄是属于 CrackMeApp进程的,并且ObjectTypeNumber类型为文件类型的
(责任编辑:网络)