挂海论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
 友情提示:文字/图片广告均非网站意见,请担保交易勿直接付款,由此产生的责任自负
玩游戏来117游戏网(H5不下载也能玩手游传奇,吃鸡,竞技都有)不懂社区·好资源不错过·各位资源站大佬欢迎来采集搬运IOS签名/udid证书出售/送证书加群1040456405 ██【我要租此广告位】██
... .
查看: 4656|回复: 17
打印 上一主题 下一主题

[分享] 幽灵屋DLL注入卸载工具【源码+程序】

[复制链接]

15

积分

11

主题

4

听众
已帮网友解决0 个问题
好评
0
贡献
4
海币
153
交易币
0
跳转到指定楼层
楼主
发表于 2014-6-3 10:37:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提醒:若下载的软件是收费的"请不要付款",可能是骗子,请立即联系本站举报,执意要付款被骗后本站概不负责。(任何交易请走第三方中介,请勿直接付款交易以免被骗!切记).

友情提示:文字/图片广告均非本站意见,请担保交易勿直接付款,由此产生的责任自负!!!↑↑


  1. ;*************************************************
  2. ;CopyRight@GhostHand
  3. ;*************************************************
  4.             .386
  5.             .model flat,stdcall
  6.             option casemap:none
  7. ;*************************************************
  8. include         windows.inc
  9. include         user32.inc
  10. includelib      user32.lib
  11. include         kernel32.inc
  12. includelib      kernel32.lib
  13. include         advapi32.inc
  14. includelib      advapi32.lib
  15. include         comdlg32.inc
  16. includelib      comdlg32.lib
  17. include         shell32.inc
  18. includelib      shell32.lib
  19. include         into.inc

  20. ;*************************************************
  21. .data?
  22. hInstance   dd  ?
  23. hWinMain    dd  ?
  24. lpLoadLibrary   dd  ?
  25. lpFreeLibrary   dd  ?
  26. hProcess    dd  ?
  27. lpDllName   dd  ?
  28. szDllName   db MAX_PATH dup (?)
  29. .const
  30. szText      db  '[幽灵屋论坛]:[url]www.ghostasm.com[/url]',0
  31. szCaption   db  '[GhostHand]Message',0
  32. szSetDebug  db  'SeDebugPrivilege',0
  33. szATPErr    db  '[AdjustTokenPrivileges]:Error!!',0
  34. szLPVErr    db  '[LookupPrivilegeValue]:Error!',0
  35. szOPTErr    db  '[OpenProcessToken]:Error!',0
  36. szFilter    db  'Dll Files(*.dll)',0,'*.dll',0,0
  37. szOpenCaption   db  'Select a dll',0
  38. szOD        db  '[_OpenDll]:请选择Dll文件!',0
  39. szDllKernel db  'Kernel32.dll',0
  40. szLoadLibrary   db  'LoadLibraryA',0
  41. szFreeLibrary   db  'FreeLibraryAndExitThread',0
  42. szCRTErr    db  '[CreateRemoteThread]:Error!',0
  43. szVAEErr    db  '[VirtualAllocEx]:Error!',0
  44. szOPErr     db  '[OpenProcess]:Error!',0
  45. szCRTOk     db  '[CreateRemoteThread]:Success!',0
  46. szEmail     db  'mailto:admin@ghostasm.com',0
  47. szNtDll     db  'ntdll.dll',0
  48. szNtQueryInformationThread  db  'NtQueryInformationThread',0
  49. .code
  50. _SetWinPos  proc    _hWnd
  51.          
  52.         LOCAL x_screen:dword
  53.         LOCAL y_screen:dword
  54.         LOCAL rtWinMain:RECT
  55.          
  56.         invoke GetSystemMetrics,SM_CXSCREEN
  57.         mov edx,0
  58.         mov cx,2
  59.         div cx      ;商在ax中,余数在dx中
  60.         mov x_screen,eax
  61.         invoke GetSystemMetrics,SM_CYSCREEN
  62.         mov edx,0
  63.         mov cx,2
  64.         div cx
  65.         mov y_screen,eax
  66.         invoke GetWindowRect,_hWnd,addr rtWinMain
  67.         mov edx,0
  68.         mov eax,rtWinMain.right
  69.         mov cx,2
  70.         div cx
  71.         mov edx,x_screen
  72.         sub edx,eax
  73.         mov x_screen,edx
  74.         mov edx,0
  75.         mov eax,rtWinMain.bottom
  76.         mov cx,2
  77.         div cx
  78.         mov edx,y_screen
  79.         sub edx,eax
  80.         mov y_screen,edx
  81.         invoke SetWindowPos,_hWnd,NULL,x_screen,y_screen,NULL,NULL,SWP_NOSIZE
  82.          
  83.         ret

  84. _SetWinPos endp

  85. _EnableDebug    proc
  86.          
  87.         LOCAL hToken:dword
  88.         LOCAL tkp:TOKEN_PRIVILEGES
  89.         LOCAL @luid:LUID
  90.         invoke GetCurrentProcess
  91.         lea ebx,hToken
  92.         invoke OpenProcessToken,eax,TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY,ebx
  93.         .if eax
  94.             invoke LookupPrivilegeValue,NULL,offset szSetDebug,addr tkp.Privileges.Luid
  95.             .if eax
  96.                 mov tkp.PrivilegeCount,1
  97.                 mov tkp.Privileges.Attributes,SE_PRIVILEGE_ENABLED
  98.                 invoke AdjustTokenPrivileges,hToken, FALSE,addr tkp,sizeof tkp,NULL,NULL
  99.                 .if !eax
  100.                     invoke CloseHandle,hToken
  101.                     invoke MessageBox,hWinMain,offset szATPErr,offset szCaption,MB_OK
  102.                 .endif
  103.             .else
  104.                 invoke CloseHandle,hToken
  105.                 invoke MessageBox,hWinMain,offset szLPVErr,offset szCaption,MB_OK
  106.             .endif
  107.         .else
  108.             invoke MessageBox,hWinMain,offset szOPTErr,offset szCaption,MB_OK
  109.         .endif
  110.         ret

  111. _EnableDebug endp

  112. _OpenDll    proc
  113.      
  114.         LOCAL @stOF:OPENFILENAME
  115.          
  116.         invoke RtlZeroMemory,addr @stOF,sizeof @stOF
  117.         mov @stOF.lStructSize,sizeof @stOF
  118.         push hWinMain
  119.         pop  @stOF.hwndOwner
  120.         mov @stOF.lpstrFilter,offset szFilter
  121.         mov @stOF.lpstrFile,offset szDllName
  122.         mov @stOF.nMaxFile,MAX_PATH
  123.         mov @stOF.Flags,OFN_FILEMUSTEXIST or OFN_PATHMUSTEXIST
  124.         mov @stOF.lpstrTitle,offset szOpenCaption
  125.         invoke GetOpenFileName,addr @stOF
  126.         .if eax
  127.             invoke SetDlgItemText,hWinMain,IDC_DLLPATH,offset szDllName
  128.         .endif
  129.         ret

  130. _OpenDll endp

  131. _GetProcessList proc    _hWnd
  132.         LOCAL @stProcess:PROCESSENTRY32
  133.         LOCAL @hSnapShot
  134.          
  135.         invoke RtlZeroMemory,addr @stProcess,sizeof @stProcess
  136.         invoke SendDlgItemMessage,_hWnd,IDC_PROCESSLIST,LB_RESETCONTENT,0,0
  137.         mov @stProcess.dwSize,sizeof @stProcess
  138.         invoke CreateToolhelp32Snapshot,TH32CS_SNAPPROCESS,0
  139.         mov @hSnapShot,eax
  140.         invoke Process32First,@hSnapShot,addr @stProcess
  141.         .while eax
  142.             invoke SendDlgItemMessage,_hWnd,IDC_PROCESSLIST,LB_ADDSTRING,0,addr @stProcess.szExeFile
  143.             invoke SendDlgItemMessage,_hWnd,IDC_PROCESSLIST,LB_SETITEMDATA,eax,@stProcess.th32ProcessID
  144.             invoke Process32Next,@hSnapShot,addr @stProcess
  145.         .endw
  146.         invoke CloseHandle,@hSnapShot
  147.         ret

  148. _GetProcessList endp

  149. _GetModelList   proc    _dwProcessId,_hWnd,_hModule
  150.      
  151.         LOCAL @stModule:MODULEENTRY32
  152.         LOCAL @hSnapShot
  153.         LOCAL @ModuleSize
  154.          
  155.         mov @ModuleSize,0
  156.         invoke RtlZeroMemory,addr @stModule,sizeof @stModule
  157.         invoke SendDlgItemMessage,_hWnd,IDC_MODELLIST,LB_RESETCONTENT,0,0
  158.         mov @stModule.dwSize,sizeof @stModule
  159.         invoke CreateToolhelp32Snapshot,TH32CS_SNAPMODULE,_dwProcessId  ;枚举进程模块
  160.         mov @hSnapShot,eax
  161.         invoke Module32First,@hSnapShot,addr @stModule
  162.         .while  eax
  163.             mov eax,_hModule
  164.             .if eax == @stModule.modBaseAddr
  165.                 push @stModule.modBaseSize
  166.                 pop  @ModuleSize
  167.             .endif
  168.             invoke SendDlgItemMessage,_hWnd,IDC_MODELLIST,LB_ADDSTRING,0,addr @stModule.szModule
  169.             invoke SendDlgItemMessage,_hWnd,IDC_MODELLIST,LB_SETITEMDATA,eax,@stModule.modBaseAddr
  170.             invoke Module32Next,@hSnapShot,addr @stModule
  171.         .endw
  172.         invoke CloseHandle,@hSnapShot
  173.         mov eax,@ModuleSize
  174.         ret

  175. _GetModelList endp

  176. _KillThread proc    _ProcessId,_lpModelBase,dwModelSize
  177.      
  178.         LOCAL @stThread:THREADENTRY32
  179.         LOCAL @hSnapShot
  180.         LOCAL @hThread
  181.         LOCAL @NtQueryInformationThread
  182.         LOCAL @ThreadBase
  183.         invoke GetModuleHandle,offset szNtDll
  184.         invoke GetProcAddress,eax,offset szNtQueryInformationThread
  185.         mov @NtQueryInformationThread,eax
  186.          
  187.         invoke RtlZeroMemory,addr @stThread,sizeof @stThread
  188.         mov @stThread.dwSize,sizeof @stThread
  189.         invoke CreateToolhelp32Snapshot,TH32CS_SNAPTHREAD,_ProcessId
  190.         mov @hSnapShot,eax
  191.         invoke Thread32First,@hSnapShot,addr @stThread
  192.         .while  eax
  193.             invoke OpenThread,THREAD_ALL_ACCESS,FALSE,@stThread.th32ThreadID
  194.             mov @hThread,eax
  195.             
  196.             lea edx,@ThreadBase
  197.             mov ecx,@NtQueryInformationThread
  198.             push    NULL
  199.             push    4h
  200.             push    edx
  201.             push    9
  202.             push    @hThread
  203.             call    ecx
  204.             
  205.             mov eax,@ThreadBase
  206.             sub eax,_lpModelBase
  207.             .if (eax < dwModelSize) || (eax == dwModelSize)
  208.                 invoke TerminateThread,@hThread,0
  209.             .endif
  210.             invoke CloseHandle,@hThread
  211.             invoke Thread32Next,@hSnapShot,addr @stThread
  212.         .endw
  213.         invoke CloseHandle,@hSnapShot
  214.         ret

  215. _KillThread endp

  216. _Into       proc    dwProcessId,_hWnd

  217.         LOCAL   @hThread
  218.      
  219.         invoke GetModuleHandle,offset szDllKernel
  220.         invoke GetProcAddress,eax,offset szLoadLibrary
  221.         mov lpLoadLibrary,eax
  222.         invoke SendDlgItemMessage,_hWnd,IDC_PROCESSLIST,LB_GETCURSEL,0,0
  223.         invoke SendDlgItemMessage,_hWnd,IDC_PROCESSLIST,LB_GETITEMDATA,eax,0
  224.         invoke OpenProcess,PROCESS_ALL_ACCESS,FALSE,eax
  225.         .if eax
  226.             mov hProcess,eax
  227.             invoke lstrlen,offset szDllName
  228.             inc eax
  229.             invoke VirtualAllocEx,hProcess,NULL,eax,MEM_COMMIT,PAGE_READWRITE
  230.             .if eax
  231.                 mov lpDllName,eax
  232.                 ;将DLL路径写入目标进程
  233.                 invoke lstrlen,offset szDllName
  234.                 inc eax
  235.                 invoke WriteProcessMemory,hProcess,lpDllName,offset szDllName,eax,NULL
  236.                 invoke CreateRemoteThread,hProcess,NULL,0,lpLoadLibrary,lpDllName,0,NULL
  237.                 .if eax
  238.                     mov @hThread,eax
  239.                     invoke WaitForSingleObject,eax,INFINITE;等待线程执行
  240.                     invoke CloseHandle,@hThread
  241.                     invoke SetDlgItemText,hWinMain,IDC_MSG,offset szCRTOk
  242.                 .else
  243.                     invoke SetDlgItemText,hWinMain,IDC_MSG,offset szCRTErr
  244.                 .endif
  245.                 invoke lstrlen,offset szDllName
  246.                 inc eax
  247.                 invoke VirtualFreeEx,hProcess,lpDllName,eax,MEM_DECOMMIT
  248.             .else
  249.                 invoke SetDlgItemText,hWinMain,IDC_MSG,offset szVAEErr
  250.             .endif
  251.             invoke CloseHandle,hProcess
  252.         .else
  253.             invoke SetDlgItemText,hWinMain,IDC_MSG,offset szOPErr
  254.         .endif
  255.         ret

  256. _Into endp



  257. _Out        proc    _dwProcessId,_Model
  258.          
  259.         LOCAL @dwHandle:dword
  260.         LOCAL @hThread:dword
  261.          
  262.         invoke GetModuleHandle,offset szDllKernel
  263.         invoke GetProcAddress,eax,offset szFreeLibrary
  264.         mov lpFreeLibrary,eax
  265.         invoke OpenProcess,PROCESS_ALL_ACCESS,FALSE,_dwProcessId    ;打开Services.exe的进程
  266.         .if eax
  267.             mov hProcess,eax
  268.             invoke _GetModelList,_dwProcessId,hWinMain,_Model
  269.             invoke _KillThread,_dwProcessId,_Model,eax
  270.             invoke CreateRemoteThread,hProcess,NULL,0,lpFreeLibrary,_Model,0,NULL
  271.             .if eax
  272.                 mov @hThread,eax
  273.                 invoke WaitForSingleObject,eax,INFINITE
  274.                 invoke CloseHandle,@hThread
  275.                 invoke SetDlgItemText,hWinMain,IDC_MSG,offset szCRTOk
  276.             .else
  277.                 invoke SetDlgItemText,hWinMain,IDC_MSG,offset szCRTErr
  278.             .endif
  279.             invoke CloseHandle,hProcess
  280.         .else
  281.             invoke SetDlgItemText,hWinMain,IDC_MSG,offset szOPErr
  282.         .endif
  283.         ret

  284. _Out endp

  285. _MainThread proc    uses edi esi hWnd,uMsg,wParam,lParam
  286.      
  287.         LOCAL   @dwProcessId
  288.         mov eax,uMsg
  289.         .if eax == WM_COMMAND
  290.             mov eax,wParam
  291.             .if ax == IDC_DLL
  292.                 call _OpenDll
  293.             .elseif ax ==IDC_PROCESSLIST
  294.                 shr eax,16
  295.                 .if ax == LBN_SELCHANGE
  296.                     invoke SendDlgItemMessage,hWnd,IDC_PROCESSLIST,LB_GETCURSEL,0,0
  297.                     invoke SendDlgItemMessage,hWnd,IDC_PROCESSLIST,LB_GETITEMDATA,eax,0
  298.                     invoke _GetModelList,eax,hWnd,0
  299.                     invoke GetDlgItem,hWnd,IDC_OUT
  300.                     invoke EnableWindow,eax,FALSE
  301.                     invoke SendDlgItemMessage,hWnd,IDC_MODELLIST,LB_GETCOUNT,0,0
  302.                     .if eax == 0
  303.                         invoke GetDlgItem,hWnd,IDC_IN
  304.                         invoke EnableWindow,eax,FALSE
  305.                     .else
  306.                         invoke GetDlgItem,hWnd,IDC_IN
  307.                         invoke EnableWindow,eax,TRUE
  308.                     .endif
  309.                 .endif
  310.             .elseif ax ==IDC_MODELLIST
  311.                 shr eax,16
  312.                 .if ax == LBN_SELCHANGE
  313.                     invoke GetDlgItem,hWnd,IDC_OUT
  314.                     invoke EnableWindow,eax,TRUE
  315.                 .endif
  316.             .elseif ax == IDC_IN
  317.                 invoke lstrlen,offset szDllName
  318.                 .if eax
  319.                     invoke SendDlgItemMessage,hWnd,IDC_PROCESSLIST,LB_GETCURSEL,0,0
  320.                     invoke SendDlgItemMessage,hWnd,IDC_PROCESSLIST,LB_GETITEMDATA,eax,0
  321.                     mov @dwProcessId,eax
  322.                     invoke _Into,eax,hWnd
  323.                     invoke _GetModelList,@dwProcessId,hWnd,0
  324.                 .else
  325.                     invoke MessageBox,hWinMain,offset szOD,offset szCaption,MB_OK
  326.                 .endif
  327.             .elseif ax == IDC_OUT
  328.                 invoke SendDlgItemMessage,hWnd,IDC_PROCESSLIST,LB_GETCURSEL,0,0
  329.                 invoke SendDlgItemMessage,hWnd,IDC_PROCESSLIST,LB_GETITEMDATA,eax,0
  330.                 mov @dwProcessId,eax
  331.                 invoke SendDlgItemMessage,hWnd,IDC_MODELLIST,LB_GETCURSEL,0,0
  332.                 invoke SendDlgItemMessage,hWnd,IDC_MODELLIST,LB_GETITEMDATA,eax,0
  333.                 invoke _Out,@dwProcessId,eax
  334.                 invoke _GetModelList,@dwProcessId,hWnd,0
  335.             .elseif ax ==IDC_UPDATE
  336.                 invoke _GetProcessList,hWnd
  337.                 invoke SendDlgItemMessage,hWnd,IDC_MODELLIST,LB_RESETCONTENT,0,0
  338.                 invoke GetDlgItem,hWnd,IDC_IN
  339.                 invoke EnableWindow,eax,FALSE
  340.                 invoke GetDlgItem,hWnd,IDC_OUT
  341.                 invoke EnableWindow,eax,FALSE
  342.             .elseif ax == IDC_EMAIL
  343.                 invoke ShellExecute,0,0,offset szEmail,0,0,SW_SHOW
  344.             .endif
  345.         .elseif eax == WM_INITDIALOG
  346.             push hWnd
  347.             pop  hWinMain
  348.             invoke LoadIcon,hInstance,ICO_MAIN
  349.             invoke SendMessage,hWnd,WM_SETICON,ICON_BIG,eax
  350.             invoke _SetWinPos,hWnd
  351.             call _EnableDebug
  352.             invoke _GetProcessList,hWnd
  353.             invoke GetDlgItem,hWnd,IDC_IN
  354.             invoke EnableWindow,eax,FALSE
  355.             invoke GetDlgItem,hWnd,IDC_OUT
  356.             invoke EnableWindow,eax,FALSE
  357.             invoke SetDlgItemText,hWinMain,IDC_MSG,offset szText
  358.         .elseif eax == WM_CLOSE
  359.             invoke EndDialog,hWnd,-1
  360.         .else
  361.             mov eax,FALSE
  362.             ret
  363.         .endif
  364.         mov eax,TRUE
  365.         ret

  366. _MainThread endp

  367. start:
  368.     invoke GetModuleHandle,NULL
  369.     mov hInstance,eax
  370.     invoke DialogBoxParam,eax,IDD_MAIN,NULL,offset _MainThread,-1
  371.     invoke ExitProcess,0
  372. end start
复制代码
幽灵屋DLL注入卸载工具.zip (148.86 KB, 下载次数: 25)


联系我时,请说是在 挂海论坛 上看到的,谢谢!



上一篇:编写后台监控软件
下一篇:游戏PCK文件修改和PWPACK工具的使用方法
免责声明:
1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关。一切关于该内容及资源商业行为与www.52ghai.com无关。

2、本站提供的一切资源内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。

3、本站信息来自第三方用户,非本站自制,版权归原作者享有,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。

4、如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵犯你版权的,请邮件与我们联系删除(邮箱:xhzlw@foxmail.com),本站将立即改正。

20

积分

8

主题

5

听众
已帮网友解决0 个问题
好评
0
贡献
12
海币
2417
交易币
0
沙发
发表于 2014-7-8 15:13:58 | 只看该作者
看看...~

10

积分

5

主题

3

听众
已帮网友解决0 个问题
好评
0
贡献
5
海币
1047
交易币
0
板凳
发表于 2014-7-22 00:17:56 | 只看该作者
我老过来打酱油的。
4中级会员
533/600

533

积分

164

主题

9

听众
已帮网友解决0 个问题
好评
0
贡献
369
海币
3270
交易币
0
地板
发表于 2014-8-4 01:06:05 | 只看该作者
我来赚一个 谢谢!

0

积分

0

主题

2

听众
已帮网友解决0 个问题
好评
0
贡献
0
海币
311
交易币
0
5#
发表于 2014-8-15 08:50:13 | 只看该作者
哦 不错 谢谢啊
4中级会员
558/600

558

积分

168

主题

6

听众
已帮网友解决0 个问题
好评
0
贡献
390
海币
4479
交易币
0
6#
发表于 2014-8-24 07:19:09 | 只看该作者
不知该说些什么。。。。。。
4中级会员
520/600

520

积分

223

主题

5

听众
已帮网友解决0 个问题
好评
0
贡献
297
海币
3998
交易币
0
7#
发表于 2014-9-2 08:00:19 | 只看该作者
帮你顶....
3正式会员
146/300

146

积分

58

主题

8

听众
已帮网友解决0 个问题
好评
0
贡献
88
海币
831
交易币
0
8#
发表于 2014-12-23 20:22:40 | 只看该作者
传说中的沙发???哇卡卡
4中级会员
558/600

558

积分

168

主题

6

听众
已帮网友解决0 个问题
好评
0
贡献
390
海币
4479
交易币
0
9#
发表于 2014-12-24 06:45:29 | 只看该作者
真是被感动的痛哭流涕……
8资深会员
1320/1800

1320

积分

286

主题

38

听众
已帮网友解决0 个问题
好评
11
贡献
1034
海币
3749
交易币
5
10#
发表于 2015-2-20 00:27:59 | 只看该作者
珍爱生命,果断回帖。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

免责声明|Archiver|手机版|小黑屋|挂海论坛

GMT+8, 2025-4-5 06:15 , Processed in 0.134582 second(s), 34 queries , Gzip On.

Powered by Discuz! X3.2

本站资源来自互联网用户收集发布,如有侵权请邮件与我们联系处理。xhzlw@foxmail.com

快速回复 返回顶部 返回列表