Exploit模块的check方法用来检测一台远程主机是否有漏洞能够被利用。check方法默认的实施仅返回check方法不被Exploit模块支持。当然,一个完整的代码能够从check方法返回如下表所示的信息。
如果在我们编写Exploit模块的时候没有编写check方法,当我们在Msfconsole中输入check时,会调用Msf::Module中定义好的check方法,并返回Msf::Exploit::CheckCode::Unsupported这个常量。根据Ruby语法,当我们在Exploit模块中再次定义check方法时,便会覆盖继承的check方法,从而我们可以具体情况选择返回值,例如:
def check
if ***
return Exploit::CheckCode::Vulnerable
end
return Exploit::CheckCode::Safe
end