欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

易語(yǔ)言NTAPI進(jìn)程操縱的代碼

 更新時(shí)間:2018年11月24日 11:15:47   作者:易語(yǔ)言源碼教程  
今天小編就為大家分享一篇關(guān)于易語(yǔ)言NTAPI進(jìn)程操縱的代碼,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧

本程序?qū)崿F(xiàn)的功能:

  • 打開(kāi)進(jìn)程_強(qiáng)力
  • 進(jìn)程暫停
  • 取api函數(shù)地址
  • 進(jìn)程結(jié)束
  • 進(jìn)程結(jié)束_強(qiáng)力
  • 進(jìn)程_NT內(nèi)存清零
  • 進(jìn)程_取自進(jìn)程ID
  • 進(jìn)程_提高權(quán)限
  • Kill_Process命令

DLL命令表

.版本 2
.DLL命令 打開(kāi)進(jìn)程_, 整數(shù)型, "kernel32.dll", "OpenProcess", 公開(kāi), 將句柄返回給過(guò)程對(duì)象
  .參數(shù) 進(jìn)程對(duì)象, 整數(shù)型, , dwDesiredAccess 
  .參數(shù) 繼承句柄, 整數(shù)型, , bInheritHandle  
  .參數(shù) 進(jìn)程標(biāo)識(shí)符, 整數(shù)型, , dwProcessId
.DLL命令 ZwOpenProcess, 整數(shù)型, "ntdll.dll", "ZwOpenProcess", 公開(kāi)
  .參數(shù) hProcess, 整數(shù)型, 傳址
  .參數(shù) DesiredAccess, 整數(shù)型
  .參數(shù) ObjectAttributes, OBJECT_ATTRIBUTES
  .參數(shù) ClientId, CLIENT_ID
.DLL命令 ZwQuerySystemInformation, 整數(shù)型, "ntdll.dll", "ZwQuerySystemInformation"
  .參數(shù) SystemInformationClass, 整數(shù)型, , 未知類(lèi)型:SYSTEM_INFORMATION_CLASS。
  .參數(shù) SystemInformation, 字節(jié)集, , any
  .參數(shù) SystemInformationLength, 整數(shù)型
  .參數(shù) ReturnLength, 整數(shù)型, 傳址
.DLL命令 取指針_字節(jié)集, 整數(shù)型, , "lstrcpyn", 公開(kāi), 常規(guī)API
  .參數(shù) 欲取其指針, 字節(jié)集, 傳址
  .參數(shù) 欲取其指針, 字節(jié)集, 傳址
  .參數(shù) 保留, 整數(shù)型, , 0
.DLL命令 RtlMoveMemory3, 整數(shù)型, , "RtlMoveMemory", 公開(kāi), 常規(guī)API,從地址讀一個(gè)整數(shù)
  .參數(shù) dest, 整數(shù)型, 傳址
  .參數(shù) Source, 整數(shù)型
  .參數(shù) len, , , 4
.DLL命令 RtlMoveMemory1, 整數(shù)型, , "RtlMoveMemory", , 常規(guī)API
  .參數(shù) dest, SYSTEM_HANDLE_TABLE_ENTRY_INFO
  .參數(shù) Source, 整數(shù)型
  .參數(shù) len
.DLL命令 ZwDuplicateObject, 整數(shù)型, "ntdll.dll", , 公開(kāi)
  .參數(shù) SourceProcessHandle, 整數(shù)型
  .參數(shù) SourceHandle, 整數(shù)型
  .參數(shù) TargetProcessHandle, 整數(shù)型
  .參數(shù) TargetHandle, 整數(shù)型, 傳址
  .參數(shù) DesiredAccess, 整數(shù)型
  .參數(shù) HandleAttributes, 整數(shù)型
  .參數(shù) Options, 整數(shù)型
.DLL命令 ZwQueryInformationProcess, 整數(shù)型, "ntdll.dll", "ZwQueryInformationProcess"
  .參數(shù) SystemInformationClass, 整數(shù)型, , 未知類(lèi)型:SYSTEM_INFORMATION_CLASS。
  .參數(shù) dd, 整數(shù)型
  .參數(shù) SystemInformation, PROCESS_BASIC_INFORMATION, , any
  .參數(shù) SystemInformationLength, 整數(shù)型
  .參數(shù) ReturnLength, 整數(shù)型, 傳址
.DLL命令 ZwClose, 整數(shù)型, "ntdll.dll", "ZwClose", 公開(kāi), 關(guān)閉進(jìn)程句柄
  .參數(shù) handle
.DLL命令 取函數(shù)地址_, 整數(shù)型, "kernel32", "GetProcAddress", , 返回函數(shù)地址
  .參數(shù) 模塊句柄, 整數(shù)型
  .參數(shù) 函數(shù)名, 文本型
.DLL命令 取模塊句柄_, 整數(shù)型, "kernel32", "GetModuleHandleA", , 獲取一個(gè)應(yīng)用程序或動(dòng)態(tài)鏈接庫(kù)的模塊句柄 如執(zhí)行成功成功,則返回模塊句柄。零表示失敗。會(huì)設(shè)置GetLastError
  .參數(shù) 模塊名, 文本型, , 指定模塊名,這通常是與模塊的文件名相同的一個(gè)名字。例如,NOTEPAD.EXE程序的模塊文件名就叫作NOTEPAD;
.DLL命令 _動(dòng)態(tài)調(diào)用子程序, 整數(shù)型, , "CallWindowProcA"
  .參數(shù) 動(dòng)態(tài)調(diào)用代碼, 字節(jié)集, , 字節(jié)集代碼
  .參數(shù) 子程序, 整數(shù)型, , 子程序指針 到整數(shù)(子程序指針)
  .參數(shù) 參數(shù), 整數(shù)型, 數(shù)組, 為整數(shù)數(shù)組,參數(shù)1為成員1…類(lèi)推;文本型和字節(jié)集型(自定義結(jié)構(gòu))為指針
  .參數(shù) 參數(shù)數(shù)目, 整數(shù)型, , 一定要和參數(shù)數(shù)組相符,不然會(huì)出錯(cuò)
  .參數(shù) 是否C調(diào)用, 邏輯型, , 真為cdecl調(diào)用方式,假為stdcall調(diào)用方式(即標(biāo)準(zhǔn)WINAPI方式)
.DLL命令 ZwCreateJobObject, 整數(shù)型, "ntdll.dll", , 公開(kāi)
  .參數(shù) JobHandle, 整數(shù)型, 傳址
  .參數(shù) DesiredAccess, 整數(shù)型
  .參數(shù) ObjectAttributes, OBJECT_ATTRIBUTES
.DLL命令 關(guān)閉內(nèi)核對(duì)象_, 整數(shù)型, "kernel32.dll", "CloseHandle", 公開(kāi), $(b)非零表示成功,零表示失敗
  .參數(shù) 對(duì)象句柄, 整數(shù)型, , hObject,欲關(guān)閉的一個(gè)對(duì)象的句柄
.DLL命令 TerminateProcess_, 整數(shù)型, "kernel32", "TerminateProcess", , 結(jié)束一個(gè)進(jìn)程 非零表示成功,零表示失敗。會(huì)設(shè)置GetLastError
  .參數(shù) hProcess, 整數(shù)型, , 指定要中斷的一個(gè)進(jìn)程的句柄
  .參數(shù) uExitCode, 整數(shù)型, , 進(jìn)程的一個(gè)退出代碼;
.DLL命令 ZwAssignProcessToJobObject, 整數(shù)型, "ntdll.dll", , 公開(kāi)
  .參數(shù) JobHandle, 整數(shù)型
  .參數(shù) ProcessHandle, 整數(shù)型
.DLL命令 ZwTerminateJobObject, 整數(shù)型, "ntdll.dll", , 公開(kāi)
  .參數(shù) JobHandle, 整數(shù)型
  .參數(shù) ExitStatus, 整數(shù)型
.DLL命令 ZwTerminateProcess, 整數(shù)型, "ntdll.dll", , 公開(kāi)
  .參數(shù) ProcessHandle, 整數(shù)型
  .參數(shù) ExitStatus, 整數(shù)型
.DLL命令 ZwProtectVirtualMemory, 整數(shù)型, "NTDLL.DLL", "ZwProtectVirtualMemory"
  .參數(shù) ProcessHandle, 整數(shù)型
  .參數(shù) BaseAddress, 整數(shù)型
  .參數(shù) RegionSize, 整數(shù)型
  .參數(shù) NewProtect, 整數(shù)型
  .參數(shù) OldProtect, 整數(shù)型
.DLL命令 ZwWriteVirtualMemory, 整數(shù)型, "NTDLL.DLL", "ZwWriteVirtualMemory"
  .參數(shù) ProcessHandle, 整數(shù)型
  .參數(shù) BaseAddress, 整數(shù)型
  .參數(shù) pBuffer, 字節(jié)集
  .參數(shù) NumberOfBytesToWrite, 整數(shù)型
  .參數(shù) NumberOfBytesWritten, 整數(shù)型, 傳址
.DLL命令 RtlAdjustPrivilegeA, 整數(shù)型, "ntdll.dll", "RtlAdjustPrivilege"
  .參數(shù) Privilege, 整數(shù)型
  .參數(shù) Enable, 邏輯型
  .參數(shù) Client, 邏輯型
  .參數(shù) WasEnabled, 整數(shù)型, 傳址
.DLL命令 API_CreateRemoteThread, 整數(shù)型, "kernel32", "CreateRemoteThread", , 在另一進(jìn)程中建立線索
  .參數(shù) hProcess, 整數(shù)型
  .參數(shù) lpThreadAttributes, SECURITY_ATTRIBUTES
  .參數(shù) dwStackSize, 整數(shù)型
  .參數(shù) lpStartAddress, 整數(shù)型
  .參數(shù) lpParameter, 整數(shù)型
  .參數(shù) dwCreationFlags, 整數(shù)型
  .參數(shù) lpThreadId, 整數(shù)型
.DLL命令 CreateToolhelp32Snapshot, 整數(shù)型, "Kernel32.dll", "CreateToolhelp32Snapshot"
  .參數(shù) falg, 整數(shù)型
  .參數(shù) id, 整數(shù)型
.DLL命令 Thread32First, 整數(shù)型, "kernel32", "Thread32First"
  .參數(shù) hSnapshot, 整數(shù)型
  .參數(shù) lppe, THREADENTRY32
.DLL命令 OpenThread, 整數(shù)型, "kernel32", "OpenThread"
  .參數(shù) h, 整數(shù)型
  .參數(shù) a, 邏輯型
  .參數(shù) b, 整數(shù)型
.DLL命令 TerminateThread, 整數(shù)型, "NTDLL.DLL", "ZwTerminateThread"
  .參數(shù) hThread, 整數(shù)型
  .參數(shù) dwExitCode, 整數(shù)型
.DLL命令 Thread32Next, 整數(shù)型, "kernel32", "Thread32Next"
  .參數(shù) hSnapshot, 整數(shù)型
  .參數(shù) lppe, THREADENTRY32
.DLL命令 NtUnmapViewOfSection, 整數(shù)型, "ntdll.dll", "NtUnmapViewOfSection"
  .參數(shù) hProcess
  .參數(shù) addr
.DLL命令 LoadLibrary, 整數(shù)型, "kernel32", "LoadLibraryA", 公開(kāi)
  .參數(shù) lpLibFileName, 文本型
.DLL命令 DebugActiveProcess, 邏輯型, "kernel32", "DebugActiveProcess"
  .參數(shù) dwProcessId, 整數(shù)型

自定義數(shù)據(jù)類(lèi)型表

.版本 2
.數(shù)據(jù)類(lèi)型 CLIENT_ID, 公開(kāi), CLIENT_ID結(jié)構(gòu)包含進(jìn)程和線程的標(biāo)識(shí)符。
  .成員 UniqueProcess, 整數(shù)型, , , 進(jìn)程標(biāo)識(shí)符
  .成員 UniqueThread, 整數(shù)型, , , 線程標(biāo)識(shí)符
.數(shù)據(jù)類(lèi)型 OBJECT_ATTRIBUTES, 公開(kāi), OBJECT_ATTRIBUTES結(jié)構(gòu)指定屬性,可以應(yīng)用于對(duì)象或?qū)ο筇幚淼睦虅?chuàng)建對(duì)象和/或返回對(duì)象的處理。
  .成員 Length, 整數(shù)型
  .成員 RootDirectory, 整數(shù)型
  .成員 ObjectName, 整數(shù)型
  .成員 Attributes, 整數(shù)型
  .成員 SecurityDescriptor, 整數(shù)型
  .成員 SecurityQualityOfService, 整數(shù)型
.數(shù)據(jù)類(lèi)型 SECURITY_ATTRIBUTES, , 安全性結(jié)構(gòu);
  .成員 nLength, 整數(shù)型
  .成員 lpSecurityDescriptor, 整數(shù)型
  .成員 bInheritHandle, 整數(shù)型
.數(shù)據(jù)類(lèi)型 PROCESS_BASIC_INFORMATION, 公開(kāi)
  .成員 ExitStatus, 整數(shù)型
  .成員 PebBaseAddress, 整數(shù)型
  .成員 AffinityMask, 整數(shù)型
  .成員 BasePriority, 整數(shù)型
  .成員 UniqueProcessId, 整數(shù)型
  .成員 InheritedFromUniqueProcessId, 整數(shù)型
.數(shù)據(jù)類(lèi)型 MEMORY_BASIC_INFORMATION, 公開(kāi)
  .成員 BaseAddress, 整數(shù)型
  .成員 AllocationBase, 整數(shù)型
  .成員 AllocattionProtect, 整數(shù)型
  .成員 RegionSize, 整數(shù)型
  .成員 State, 整數(shù)型
  .成員 Protect, 整數(shù)型
  .成員 Type, 整數(shù)型
.數(shù)據(jù)類(lèi)型 SYSTEM_HANDLE_TABLE_ENTRY_INFO, 公開(kāi)
  .成員 UniqueProcessId, 短整數(shù)型
  .成員 CreatorBackTraceIndex, 短整數(shù)型
  .成員 ObjectTypeIndex, 字節(jié)型
  .成員 HandleAttributes, 字節(jié)型
  .成員 HandleValue, 短整數(shù)型
  .成員 pObject, 整數(shù)型
  .成員 GrantedAccess, 整數(shù)型
.數(shù)據(jù)類(lèi)型 THREADENTRY32
  .成員 dwsize, 整數(shù)型
  .成員 cntusage, 整數(shù)型
  .成員 th32threadID, 整數(shù)型
  .成員 th32OwnerProcessID, 整數(shù)型
  .成員 tpBasePri, 整數(shù)型
  .成員 tpDeltaPri, 整數(shù)型
  .成員 dwFlags, 整數(shù)型

常量數(shù)據(jù)表

.版本 2
.常量 PROCESS_ALL_ACCESS, "2035711", 公開(kāi)
.常量 STATUS_INFO_LENGTH_MISMATCH, "-1073741820", 公開(kāi)
.常量 STATUS_SUCCESS, "0", 公開(kāi)
.常量 PROCESS_QUERY_INFORMATION, "1024", 公開(kāi)
.常量 STATUS_INVALID_PARAMETER, "-1073741811", 公開(kāi)
.常量 OBJ_INHERIT, "2", 公開(kāi)
.常量 DUPLICATE_CLOSE_SOURCE, "1", 公開(kāi)
.常量 DUPLICATE_SAME_ACCESS, "2", 公開(kāi)
.常量 DUPLICATE_SAME_ATTRIBUTES, "4", 公開(kāi)
.常量 OB_TYPE_PROCESS, "5", 公開(kāi)
.常量 ZwGetCurrentProcess, "-1", 公開(kāi)
.常量 PROCESS_DUP_HANDLE, "64", 公開(kāi)
.常量 PAGE_EXECUTE_READWRITE, "64"
.常量 JOB_OBJECT_ALL_ACCESS, "2031647", 公開(kāi)

NTAPI進(jìn)程操縱代碼

.版本 2
.程序集 主程序集
.子程序 _啟動(dòng)子程序, 整數(shù)型
進(jìn)程_提高權(quán)限 ()
信息框 (進(jìn)程暫停 (3796, 假), 0, , )
返回 (0)
.子程序 打開(kāi)進(jìn)程_強(qiáng)力, 整數(shù)型, 公開(kāi), 主要為NATIVE API
.參數(shù) dwDesiredAccess, 整數(shù)型
.參數(shù) bInhert, 邏輯型
.參數(shù) ProcessId, 整數(shù)型
.局部變量 st, 整數(shù)型
.局部變量 cid, CLIENT_ID, , , CLIENT_ID結(jié)構(gòu)包含進(jìn)程和線程的標(biāo)識(shí)符。
.局部變量 oa, OBJECT_ATTRIBUTES
.局部變量 NumOfHandle, 整數(shù)型
.局部變量 pbi, PROCESS_BASIC_INFORMATION
.局部變量 i, 整數(shù)型
.局部變量 hProcessToDup, 整數(shù)型
.局部變量 hProcessCur, 整數(shù)型
.局部變量 hProcessToRet, 整數(shù)型
.局部變量 h_info, SYSTEM_HANDLE_TABLE_ENTRY_INFO
.局部變量 retlen, 整數(shù)型
.局部變量 a, 字節(jié)集
.局部變量 b, 整數(shù)型
.局部變量 c, 字節(jié)集
.局部變量 ret, 整數(shù)型
.如果真 (ProcessId = 0)
  返回 (0)
.如果真結(jié)束
oa.Length = 24
.如果真 (bInhert)
  oa.Attributes = 位或 (oa.Attributes, #OBJ_INHERIT)
.如果真結(jié)束
cid.UniqueProcess = ProcessId + 1
st = ZwOpenProcess (hProcessToRet, dwDesiredAccess, oa, cid)
.如果真 (st ≥ 0)
  ret = hProcessToRet
  返回 (ret)
.如果真結(jié)束
retlen = 1
.循環(huán)判斷首 ()
  a = 取空白字節(jié)集 (retlen)
  ret = ZwQuerySystemInformation (16, a, retlen, 0)
  .如果 (ret = #STATUS_INFO_LENGTH_MISMATCH)
    retlen = retlen × 2
    a = 取空白字節(jié)集 (retlen)
  .否則
    跳出循環(huán) ()
  .如果結(jié)束
.循環(huán)判斷尾 (ret = #STATUS_INFO_LENGTH_MISMATCH)
b = 取指針_字節(jié)集 (a, a, 0)
RtlMoveMemory3 (NumOfHandle, b, 4)
b = b + 4
.計(jì)次循環(huán)首 (NumOfHandle, i)
  RtlMoveMemory1 (h_info, b, 16)
  .如果真 (h_info.ObjectTypeIndex = #OB_TYPE_PROCESS)
    cid.UniqueProcess = h_info.UniqueProcessId
    st = ZwOpenProcess (hProcessToDup, #PROCESS_DUP_HANDLE, oa, cid)
    .如果真 (st ≥ 0)
      st = ZwDuplicateObject (hProcessToDup, h_info.HandleValue, #ZwGetCurrentProcess, hProcessCur, #PROCESS_ALL_ACCESS, 0, #DUPLICATE_SAME_ATTRIBUTES)
      .如果真 (st ≥ 0)
        st = ZwQueryInformationProcess (hProcessCur, 0, pbi, 24, 0)
        .如果真 (st ≥ 0)
          .如果真 (pbi.UniqueProcessId = ProcessId)
            st = ZwDuplicateObject (hProcessToDup, h_info.HandleValue, #ZwGetCurrentProcess, hProcessToRet, dwDesiredAccess, #OBJ_INHERIT, #DUPLICATE_SAME_ATTRIBUTES)
            .如果真 (st ≥ 0)
              ret = hProcessToRet
            .如果真結(jié)束
          .如果真結(jié)束
        .如果真結(jié)束
      .如果真結(jié)束
      st = ZwClose (hProcessCur)
    .如果真結(jié)束
    st = ZwClose (hProcessToDup)
  .如果真結(jié)束
  b = b + 16
.計(jì)次循環(huán)尾 ()
返回 (ret)
.子程序 進(jìn)程暫停, 邏輯型, 公開(kāi), 進(jìn)程暫停(成功返回真,失敗假)
.參數(shù) PID, 整數(shù)型
.參數(shù) 狀態(tài), 邏輯型, 可空
.局部變量 進(jìn)程句柄, 整數(shù)型
.局部變量 a, 整數(shù)型
進(jìn)程句柄 = 打開(kāi)進(jìn)程_ (2035711, 0, PID)
.如果真 (進(jìn)程句柄 = 0)
  進(jìn)程句柄 = 打開(kāi)進(jìn)程_強(qiáng)力 (2035711, 假, PID)
.如果真結(jié)束
.如果真 (進(jìn)程句柄 = 0)
  返回 (假)
.如果真結(jié)束
.如果 (狀態(tài))
  a = API_ZwSuspendProcess (進(jìn)程句柄)
.否則
  a = API_ZwResumeProcess (進(jìn)程句柄)
.如果結(jié)束
關(guān)閉內(nèi)核對(duì)象_ (進(jìn)程句柄)
返回 (a = 0)
.子程序 API_ZwSuspendProcess, 整數(shù)型, , NTDLL.DLL,API_ZwSuspendProcess
.參數(shù) 進(jìn)程句柄, 整數(shù)型
.局部變量 地址, 整數(shù)型
.局部變量 參數(shù), 整數(shù)型, , "1"
地址 = 取api函數(shù)地址 (“NTDLL.DLL”, “ZwSuspendProcess”) ' 取出NTDLL中函數(shù)ZwSuspendProcess的地址
參數(shù) [1] = 進(jìn)程句柄 ' ZwSuspendProcess的參數(shù),ZwSuspendProcess是系統(tǒng)自帶的掛起進(jìn)程命令,動(dòng)態(tài)調(diào)用防止鉤子
返回 (_動(dòng)態(tài)調(diào)用子程序 (#動(dòng)態(tài)調(diào)用代碼, 地址, 參數(shù), 1, 假)) ' 動(dòng)態(tài)調(diào)用
.子程序 取api函數(shù)地址, 整數(shù)型, 公開(kāi)
.參數(shù) dll文件名, 文本型
.參數(shù) dll命令名, 文本型
返回 (取函數(shù)地址_ (取模塊句柄_ (dll文件名), dll命令名))
.子程序 API_ZwResumeProcess, 整數(shù)型, , NTDLL.DLL,API_ZwResumeProcess
.參數(shù) 進(jìn)程句柄, 整數(shù)型
.局部變量 地址, 整數(shù)型
.局部變量 參數(shù), 整數(shù)型, , "1"
地址 = 取api函數(shù)地址 (“NTDLL.DLL”, “ZwResumeProcess”) ' 取出NTDLL中函數(shù)ZwResumeProcess的地址
參數(shù) [1] = 進(jìn)程句柄 ' ZwResumeProcess的參數(shù),ZwResumeProcess是系統(tǒng)自帶的恢復(fù)進(jìn)程命令,動(dòng)態(tài)調(diào)用防止鉤子
返回 (_動(dòng)態(tài)調(diào)用子程序 (#動(dòng)態(tài)調(diào)用代碼, 地址, 參數(shù), 1, 假)) ' 動(dòng)態(tài)調(diào)用
.子程序 進(jìn)程結(jié)束, 邏輯型, 公開(kāi), 終止一個(gè)進(jìn)程(成功返回真,失敗返回假)
.參數(shù) 進(jìn)程ID, 整數(shù)型, , 欲結(jié)束的進(jìn)程ID
.局部變量 進(jìn)程句柄, 整數(shù)型
.局部變量 a, 整數(shù)型
進(jìn)程句柄 = 打開(kāi)進(jìn)程_ (進(jìn)程ID)
a = TerminateProcess_ (進(jìn)程句柄, 0)
關(guān)閉內(nèi)核對(duì)象_ (進(jìn)程句柄)
返回 (a > 0)
.子程序 進(jìn)程結(jié)束_強(qiáng)力, 邏輯型, 公開(kāi), 主要為NATIVE API
.參數(shù) hProcess, 整數(shù)型
.參數(shù) ExitStatus, 整數(shù)型, , 0
.局部變量 st, 整數(shù)型
.局部變量 hJob, 整數(shù)型
.局部變量 oa, OBJECT_ATTRIBUTES
.局部變量 ret, 邏輯型
ret = 假
oa.Length = 24
st = ZwCreateJobObject (hJob, #JOB_OBJECT_ALL_ACCESS, oa)
.如果真 (st ≥ 0)
  st = ZwAssignProcessToJobObject (hJob, hProcess)
  .如果真 (st ≥ 0)
    st = ZwTerminateJobObject (hJob, ExitStatus)
    .如果真 (st ≥ 0)
      ret = 真
    .如果真結(jié)束
  .如果真結(jié)束
  ZwClose (hJob)
.如果真結(jié)束
.如果真 (ret = 假)
  st = ZwTerminateProcess (hProcess, ExitStatus)
  .如果真 (st ≥ 0)
    ret = 真
  .如果真結(jié)束
.如果真結(jié)束
返回 (ret)
.子程序 進(jìn)程_NT內(nèi)存清零, 邏輯型, 公開(kāi), 注意,該命令十分強(qiáng)力,可以清除進(jìn)程大部分殘余命令和內(nèi)存(注:速度太慢,CPU占量很高,請(qǐng)慎用!)
.參數(shù) PID, 整數(shù)型
.局部變量 hprocess, 整數(shù)型
.局部變量 i, 整數(shù)型
.局部變量 內(nèi)存填充物, 整數(shù)型
hprocess = 打開(kāi)進(jìn)程_強(qiáng)力 (#PROCESS_ALL_ACCESS, 假, PID)
內(nèi)存填充物 = 取空白字節(jié)集 (255)
.變量循環(huán)首 (0, 40960000, 4096, i)
  ZwProtectVirtualMemory (hprocess, i, 4096, #PAGE_EXECUTE_READWRITE, 0)
  ZwWriteVirtualMemory (hprocess, i, 內(nèi)存填充物, 4096, 0)
.變量循環(huán)尾 ()
ZwClose (hprocess)
.子程序 進(jìn)程_取自進(jìn)程ID, 整數(shù)型, 公開(kāi), 取自身進(jìn)程PID,成功返回進(jìn)程ID,失敗返回-1
置入代碼 ({ 100, 139, 5, 32, 0, 0, 0, 201, 195 })
返回 (-1)
.子程序 進(jìn)程_提高權(quán)限, 邏輯型, 公開(kāi), NT強(qiáng)力提高權(quán)限,限自身
RtlAdjustPrivilegeA (20, 真, 假, 0)
返回 (真)
.子程序 Kill_Process, 邏輯型, 公開(kāi), 包含8種殺進(jìn)程方法
.參數(shù) PID, 整數(shù)型
.局部變量 hJob, 整數(shù)型
.局部變量 oa, OBJECT_ATTRIBUTES
.局部變量 H, 整數(shù)型
.局部變量 h_d, 整數(shù)型
.局部變量 sa, SECURITY_ATTRIBUTES
.局部變量 i, 整數(shù)型
H = 打開(kāi)進(jìn)程_ (PID)
.如果真 (H = 0)
  H = 打開(kāi)進(jìn)程_強(qiáng)力 (#PROCESS_ALL_ACCESS, 假, PID)
.如果真結(jié)束
.如果 (H ≠ 0)
  .如果真 (ZwTerminateProcess (H, 1) ≥ 1)
    返回 (真)
  .如果真結(jié)束
  .如果真 (進(jìn)程結(jié)束 (PID))
    返回 (真)
  .如果真結(jié)束
  .如果真 (進(jìn)程結(jié)束_強(qiáng)力 (H, 0))
    返回 (真)
  .如果真結(jié)束
  oa.Length = 24
  .如果真 (ZwCreateJobObject (hJob, 2031647, oa) ≥ 0)
    .如果真 (ZwAssignProcessToJobObject (hJob, H) ≥ 0 且 ZwTerminateJobObject (hJob, 0) ≥ 0)
      ZwClose (H)
      ZwClose (hJob)
      返回 (真)
    .如果真結(jié)束
    ZwClose (hJob)
  .如果真結(jié)束
  h_d = 取api函數(shù)地址 (“kernel32.dll”, “ExitProcess”)
  API_CreateRemoteThread (H, sa, 0, h_d, 0, 0, 0)
  關(guān)閉內(nèi)核對(duì)象_ (H)
  .如果真 (KillAllTheard (PID))
    返回 (真)
  .如果真結(jié)束
.否則
  H = 打開(kāi)進(jìn)程_ (8, 0, PID)
  .如果真 (H = 0)
    H = 打開(kāi)進(jìn)程_強(qiáng)力 (8, 假, PID)
  .如果真結(jié)束
  i = NtUnmapViewOfSection (H, LoadLibrary (“kernel32.dll”)) ' 強(qiáng)制卸載kernel32.dll
  i = NtUnmapViewOfSection (H, LoadLibrary (“USER32.dll”)) ' 強(qiáng)制卸載USER32.dll
  i = NtUnmapViewOfSection (H, LoadLibrary (“GDI32.dll”)) ' 強(qiáng)制卸載GDI32.dll
  i = NtUnmapViewOfSection (H, LoadLibrary (“KERNELBASE.dll”)) ' 強(qiáng)制卸載KERNELBASE.dll
  i = NtUnmapViewOfSection (H, LoadLibrary (“ntdll.dll”)) ' 強(qiáng)制卸載ntdll.dll
  ZwClose (H)
  .如果真 (i ≥ 0)
    返回 (真)
  .如果真結(jié)束
  返回 (DebugActiveProcess (PID))
.如果結(jié)束
返回 (假)
.子程序 KillAllTheard, 邏輯型
.參數(shù) pid
.局部變量 hSnapShot, 整數(shù)型
.局部變量 End, 整數(shù)型
.局部變量 buffer, THREADENTRY32
.局部變量 tid, 整數(shù)型
.局部變量 handle
tid = -1
hSnapShot = CreateToolhelp32Snapshot (4, 0)
buffer.dwsize = 28
End = Thread32First (hSnapShot, buffer)
.判斷循環(huán)首 (End ≠ 0)
  .如果真 (buffer.th32OwnerProcessID = pid)
    tid = buffer.th32threadID
    handle = OpenThread (2032639, 假, tid)
    .如果真 (TerminateThread (handle, 0) = 0)
      關(guān)閉內(nèi)核對(duì)象_ (handle)
      關(guān)閉內(nèi)核對(duì)象_ (hSnapShot)
      返回 (假)
    .如果真結(jié)束
    關(guān)閉內(nèi)核對(duì)象_ (handle)
    跳出循環(huán) ()
  .如果真結(jié)束
  End = Thread32Next (hSnapShot, buffer)
.判斷循環(huán)尾 ()
關(guān)閉內(nèi)核對(duì)象_ (hSnapShot)
返回 (真)

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

相關(guān)文章

  • 詳解易語(yǔ)言模塊EDgame2d的模板

    詳解易語(yǔ)言模塊EDgame2d的模板

    在本篇內(nèi)容中小編給大家詳細(xì)講述了關(guān)于易語(yǔ)言模塊EDgame2d的模板的相關(guān)知識(shí)點(diǎn)內(nèi)容,有興趣的朋友們參考下
    2018-11-11
  • 易語(yǔ)言超級(jí)列表框雙擊修改內(nèi)容示例

    易語(yǔ)言超級(jí)列表框雙擊修改內(nèi)容示例

    今天小編就為大家分享一篇關(guān)于易語(yǔ)言超級(jí)列表框雙擊修改內(nèi)容示例,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-12-12
  • 易語(yǔ)言正則表達(dá)式總結(jié)

    易語(yǔ)言正則表達(dá)式總結(jié)

    本篇文章中我們給大家分享了關(guān)于易語(yǔ)言正則表達(dá)式的相關(guān)知識(shí)點(diǎn)內(nèi)容,有興趣的參考下。
    2018-10-10
  • 易語(yǔ)言清空回收站的代碼

    易語(yǔ)言清空回收站的代碼

    今天小編就為大家分享一篇關(guān)于易語(yǔ)言清空回收站的代碼,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-11-11
  • 易語(yǔ)言通過(guò)按鍵模擬的方式實(shí)現(xiàn)QQ后臺(tái)加人加群的代碼

    易語(yǔ)言通過(guò)按鍵模擬的方式實(shí)現(xiàn)QQ后臺(tái)加人加群的代碼

    今天小編就為大家分享一篇關(guān)于易語(yǔ)言通過(guò)按鍵模擬的方式實(shí)現(xiàn)QQ后臺(tái)加人加群的代碼,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-11-11
  • 易語(yǔ)言讀取QQWary地理位置方法

    易語(yǔ)言讀取QQWary地理位置方法

    小編在本文中整理了關(guān)于易語(yǔ)言讀取QQWary地理位置方法內(nèi)容,需要的可以收藏一下。
    2018-12-12
  • 易語(yǔ)言刪除注冊(cè)項(xiàng)工具

    易語(yǔ)言刪除注冊(cè)項(xiàng)工具

    今天小編就為大家分享一篇關(guān)于易語(yǔ)言刪除注冊(cè)項(xiàng)工具,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-12-12
  • 易語(yǔ)言制作超整人軟件步驟教學(xué)

    易語(yǔ)言制作超整人軟件步驟教學(xué)

    在本篇文章里我們給大家分享了關(guān)于易語(yǔ)言制作超整人軟件步驟教學(xué),有需要的朋友們學(xué)習(xí)下。
    2019-02-02
  • 易語(yǔ)言中關(guān)于“關(guān)閉”命令的數(shù)據(jù)庫(kù)操作

    易語(yǔ)言中關(guān)于“關(guān)閉”命令的數(shù)據(jù)庫(kù)操作

    在本篇內(nèi)容里小編給各位分享的是一篇關(guān)于易語(yǔ)言中關(guān)于“關(guān)閉”命令的數(shù)據(jù)庫(kù)操作相關(guān)內(nèi)容,有需要的朋友們可以學(xué)習(xí)下。
    2020-03-03
  • 易語(yǔ)言清除IE緩存cookies方法

    易語(yǔ)言清除IE緩存cookies方法

    在本文章里小編給大家分享了關(guān)于易語(yǔ)言清除IE緩存cookies方法,需要的朋友們可以參考下
    2018-12-12

最新評(píng)論