单属性多个值

时间:2019-03-11 13:59:39

标签: classification weka

我是Weka的新手,在我的问题上找不到任何东西。 我在项目中使用Weka进行恶意软件分类。我提取了几个功能,现在想根据恶意软件家族对它们进行分类。目前,我有29个功能(file_created,regkey_write,dll_loaded,... malware_family)。恶意软件家族属于“标称”类型,包含我分析的10个恶意软件家族。

当前,我对所有其他属性使用二进制方法,这意味着无论恶意软件是否具有该属性的特征,我都将特征声明为“数字”类型,并将其声明为数据“ 0”或“ 1”。然后看起来像这样:

{"sparse" : false,"weight" : 1.0,"values" : ["1","0","1","1","1","1","1","1","1","0","1","1","1","1","0","1","1","1","0","1","0","1","0","0","0","0","0","agent"]}

该方法效果很好,已经给我很好的结果。但是,由于该恶意软件对每个功能始终只有一个以上的值,因此(请注意缩进):

"regkey_opened": [
            "HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\crypt32", 
            "HKEY_LOCAL_MACHINE\\Software\\Policies\\Microsoft\\Windows\\CurrentVersion\\Internet Settings", 
            "HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings"
        ], 
   "regkey_read": [
            "HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\DisableImprovedZoneCheck", 
            "HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\GRE_Initialize\\DisableMetaFiles", 
            "HKEY_LOCAL_MACHINE\\SOFTWARE\\Policies\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\Security_HKLM_only", 
            "HKEY_LOCAL_MACHINE\\SYSTEM\\ControlSet001\\services\\crypt32\\DebugHeapFlags"
        ], 
        "dll_loaded": [
            "MSVCP60.dll", 
            "user32.dll", 
            "kernel32.dll", 
            "VERSION.dll", 
            "wininet.dll", 
            "snmpapi.dll", 
            "DNSAPI.dll"
        ]

我认为我可以通过实际使用特征值而不是仅使用二进制方法“ malware_has_feature = 1”和“ malware_does_not_have_feature = 0”来使分类更加精确。

所以这是我的问题:是否可以使用类型字符串并为其分配多个数据值?例如,属性“ regkey_opened”是字符串类型,而不是数字类型,而不是获得二进制值0或1(无论是否具有该功能),而是分配实际值

"HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\crypt32", 
"HKEY_LOCAL_MACHINE\\Software\\Policies\\Microsoft\\Windows\\CurrentVersion\\Internet Settings", 
"HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings"

对此。这可能吗,JSON代码示例的外观如何?我知道我可以为此使用“标称”类型,并将每个功能值分配给我正在分析的8000个恶意软件样本的属性,但每个样本最多可以具有数百个值。

在此先感谢您,如果您需要更多信息或有任何疑问,请告诉我。

Image of the malware features as sample

Excerp of the currently used json file with the binary approach

0 个答案:

没有答案