require 'msf/core'
class Metasploit3 < Msf::Auxiliary
include Msf::Exploit::Remote::Tcp
include Msf::Auxiliary::Scanner
def initialize
super(
'Name' => 'My custom TCP scan',
'Version' => '$Revision$',
'Description' => 'My quick scanner',
'Author' => 'yang',
'License' => MSF_LICENSE
)
register_options(
[
Opt::RPORT(12345)
], self.class)
end
def run_host(ip)
connect()
sock.puts('HELLO SERVER')
data = sock.recv(1024)
print_status("Received: #{data} from #{ip}")
disconnect()
end
end
脚本如上,名字为simple_tcp.rb,放在/opt/metasploit-4.5.0/apps/pro/msf3/modules/auxiliary/scanner这个目录
建立banner.txt
[root@localhost scanner]# cat banner.txt
Hello Metasploit
监听12345端口:
[root@localhost scanner]# nc -l 12345 < banner.txt
启动msfconsole,让其加载simple_tcp,加载时会检查脚本是否正确。
加载成功
如果加载有问题,则会出现:
会出现警告,我怀疑是脚本没写对。
运行simple_tcp,结果如图
这样,就成功了。