<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    Infection Monkey 添加系統信息收集器

    這是什么?

    本指南將向您展示如何為Infection Monkey創建新的系統信息收集器系統信息收集器是每個Monkey運行的模塊,它們收集特定信息并將其作為系統信息遙測的一部分發送回該Island。

    我需要一個新的系統信息控制器嗎?

    如果您只想執行shell命令,則無需添加新的收集器-只需在PBA部分的Monkey Island配置中配置所需的命令即可!另外,如果有一個相關的收集器,而您只需要向其添加更多信息,則擴展現有的收集器。否則,您必須添加一個新的收集器。

    如何添加新的系統信息收集器

    Monkey side

    構架

    1. 在以下目錄中創建新的收集器: monkey/infection_monkey/system_info/collectors 首先使用收集器的名稱創建一個新文件。
    2. 在該文件中,創建一個繼承自 SystemInfoCollector 類:
    from infection_monkey.system_info.system_info_collector import SystemInfoCollector
    
    class MyNewCollector(SystemInfoCollector):
    
    1. 在構造函數中設置收集器名稱,如下所示:
    class MyNewCollector(SystemInfoCollector):
        def __init__(self):
            super(MyNewCollector, self).__init__(name="MyNewCollector")
    

    實作

    覆蓋 collect您自己實現的方法。見EnvironmentCollector.py收藏家供參考。您也可以在收集期間登錄。

    Island side

    Island 配置

    定義

    您需要將收集器添加到 monkey_island/cc/services/config_schema.py 文件,在 definitions/system_info_collectors_classes/anyOf,就像這樣:

    "system_info_collectors_classes": {
        "title": "System Information Collectors",
        "type": "string",
        "anyOf": [
            {
                "type": "string",
                "enum": [
                    "EnvironmentCollector"
                ],
                "title": "Which Environment this machine is on (on prem/cloud)",
                "attack_techniques": []
            },
            {                               <=================================
                "type": "string",           <=================================
                "enum": [                   <=================================
                    "MyNewCollector"        <=================================
                ],                          <=================================
                "title": "My new title",    <=================================
                "attack_techniques": []     <=================================
            },
        ],
    },
    
    屬性

    另外,您可以將默認情況下使用的收集器添加到 default 關鍵在 properties/monkey/system_info/system_info_collectors_classes

    "system_info_collectors_classes": {
        "title": "System info collectors",
        "type": "array",
        "uniqueItems": True,
        "items": {
            "$ref": "#/definitions/system_info_collectors_classes"
        },
        "default": [
            "EnvironmentCollector",
            "MyNewCollector"    <=================================
        ],
        "description": "Determines which system information collectors will collect information."
    },
    

    遙測處理

    1. 在下面添加一個過程函數 monkey_island/cc/telemetry/processing/system_info_collectors/{DATA_NAME_HERE}.py。該函數應解析收集器的結果。看到processing/system_info_collectors/environment.py 例如。

    2. 將該功能添加到 SYSTEM_INFO_COLLECTOR_TO_TELEMETRY_PROCESSORSmonkey_island/cc/services/telemetry/processing/system_info_collectors/system_info_telemetry_dispatcher.py

    本文章首發在 網安wangan.com 網站上。

    上一篇 下一篇
    討論數量: 0
    只看當前版本


    暫無話題~
    亚洲 欧美 自拍 唯美 另类