Windows核心模組名稱遍歷

2021-10-12 03:15:04 字數 1077 閱讀 4661

0x00 原理

核心模組資訊以_ldr_data_table_entry結構形式存在於系統, 該結構以雙向鍊錶將所有的模組資訊關聯起來。

0x01 實現

1.1 基於windbg獲取_ldr_data_table_entry結構

在windbg中除錯過程中輸入 dt _ldr_data_table_entry 來獲取_ldr_data_table_entry結構結構資訊

以下是我在除錯win10時獲取的資訊:

1.2 **實現

#include

typedef struct _ldr_data_table_entry

ldr_data_table_entry,*pldr_data_table_entry;

void driverunload(pdriver_object driverobject)

ntstatus driverentry(pdriver_object driverobject,unicode_string registrypath)

while(pcurrentdection !=pdection);//遍歷到當前驅動ldr_data_table_entry位址時,說明查詢結束

returnstatus;

}

0x02 結果

紅色標註的是我自身驅動程式的名稱

linux核心模組中用DFS實現程序遍歷

作業系統概念 9th operation system concepts 9th 中第三章程序管理的程式設計題 根據以下 片提示,編寫乙個核心模組,能用dfs遍歷所有程序,並列印到核心日誌緩衝區 reference struct task struct task for each process t...

編寫乙個遍歷程序的核心模組

本節主要編寫乙個核心模組,實現程序pid和名稱的列印。這裡,我們需要了解linux核心中,鍊錶的實現 pcb 程序控制塊 的定義。程式設計不是目的,目的是更加了解核心中相關 的實現。至於如何編寫和執行乙個模組,請參考 在ubuntu 18.04環境下編寫乙個簡單的核心模組 include inclu...

PHP遍歷物件屬性名稱

要寫乙個編輯器,需要遍歷物件屬性,並要獲取變數名稱,網上搜了許多帖子都不對症,就自己寫了個,測試並使用了下面的方法。include data taskitemspec.php task new taskitemspec task task id 1000 task name hello foreac...