跳转到内容

Metasploit/MethodAutofilter

来自维基教科书,开放世界中的开放书籍

Metasploit 提供了通过autopwn命令自动利用的功能[1]。当您编写模块时,需要满足某些要求才能在 autopwn 例程中使用它。

  1. 使用通用返回地址。或者
  2. 设置一个 DefaultTarget。或者
  3. 在您的模块中定义一个名为“autofilter”的方法

该方法必须返回真或假。

该方法负责在用于自动利用时确定正确的目标。将来,此方法将能够查询数据库以查找有关目标的目标特定信息。autofilter 方法可以设置 TARGET 数据存储值以及任何其他常用参数。只要最终返回值为真,该模块将在 autopwn 的一部分中执行。

自动筛选示例

[编辑 | 编辑源代码]
	def autofilter
		false
	end

... 将阻止您的模块在 autopwn 中执行。如果 MSF 有一天能够通过其他方式确定目标主机,autopwn 将自动确定目标。

	def autofilter
		# Common vulnerability scanning tools report port 445/139
		# due to how they test for the vulnerability. Remap this
		# back to 2103 for automated exploitation
		
		rport = datastore['RPORT'].to_i
		if ( rport == 139 or rport == 445 )
			datastore['RPORT'] = 2103
		end
		
		# The NetBIOS hostname is required to exploit this bug reliably.
		if (not datastore['HNAME'])
			# XXX automatically determine the hostname
			return false
		end
		
		true
	end

... 是一个示例,其中模块包含它自己的检测机制。

华夏公益教科书