定义模块可靠性副作用和稳定性 - L-codes/metasploit-framework GitHub Wiki
新的 Metasploit 模块现在需要包含一个 Notes
部分, 其中包含与运行该模块相关的 Stability
、Reliability
和 SideEffects
等附加信息.
示例:
def initialize(info = {})
super(
update_info(
info,
'Name' => 'Module name',
'Description' => %q{
Module description
},
'Author' =>
[
'Author name'
],
'License' => MSF_LICENSE,
'References' =>
[
['CVE', '2020-XXXX']
],
'DisclosureDate' => '2020-03-26',
'Platform' => 'ruby',
'Arch' => ARCH_RUBY,
'Privileged' => false,
'Targets' => ['Automatic', {}](/L-codes/metasploit-framework/wiki/'Automatic',-{}),
'DefaultTarget' => 0,
# 所有新模块必须包含以下信息. 有关允许值的更多详细信息, 请参见下文
'Notes' => {
'Stability' => [...],
'Reliability' => [...],
'SideEffects' => [...]
}
)
)
end
允许的值
Stability - 稳定性
常量 |
描述 |
CRASH_SAFE |
模块不会使服务或操作系统崩溃 |
CRASH_SERVICE_RESTARTS |
模块可能会导致服务崩溃, 但它会重新启动 |
CRASH_SERVICE_DOWN |
模块可能会导致服务崩溃, 并保持关闭状态 |
CRASH_OS_RESTARTS |
模块可能会导致操作系统崩溃, 但它会重新启动 |
CRASH_OS_DOWN |
模块可能会导致操作系统崩溃, 但它会重新启动, 并保持关闭状态 |
SERVICE_RESOURCE_LOSS |
模块导致资源对服务不可用 |
OS_RESOURCE_LOSS |
模块导致资源对操作系统不可用 |
Side Effects - 副作用
常量 |
描述 |
ARTIFACTS_ON_DISK |
模块在目标机器上留下有效载荷、投递器等 |
CONFIG_CHANGES |
模块修改了一些配置文件 |
IOC_IN_LOGS |
模块在日志中留下了可疑的 log |
ACCOUNT_LOCKOUTS |
模块可能会导致帐户锁定 |
SCREEN_EFFECTS |
模块在屏幕上显示人类可能会注意到的内容 |
PHYSICAL_EFFECTS |
模块可能会在硬件中产生物理效果 (例如: 光、声或热) |
AUDIO_EFFECTS |
模块可能会产生噪音 (例如: 扬声器的音频输出或硬件哔声) |
Reliability - 可靠性
常量 |
描述 |
FIRST_ATTEMPT_FAIL |
模块第一次尝试可能会失败 |
REPEATABLE_SESSION |
该模块预计每次运行时都会获得一个 shell |
UNRELIABLE_SESSION |
该模块预计不会可靠地获得 shell (例如只有一次) |