See #782. Updating syn to use capture_sendto.

git-svn-id: file:///home/svn/framework3/trunk@8262 4d416f70-5f16-0410-b530-b9f4589650da
unstable
Tod Beardsley 2010-01-27 18:34:35 +00:00
parent 280e7f8bdd
commit 99f9cf76a8
1 changed files with 3 additions and 8 deletions

View File

@ -51,10 +51,11 @@ class Metasploit3 < Msf::Auxiliary
end end
def run_batch(hosts) def run_batch(hosts)
open_pcap
raise "Pcaprub is not available" if not @@havepcap raise "Pcaprub is not available" if not @@havepcap
pcap = open_pcap pcap = self.capture
ports = Rex::Socket.portspec_crack(datastore['PORTS']) ports = Rex::Socket.portspec_crack(datastore['PORTS'])
@ -70,18 +71,12 @@ class Metasploit3 < Msf::Auxiliary
hosts.each do |dhost| hosts.each do |dhost|
shost, sport = getsource(dhost) shost, sport = getsource(dhost)
dst_mac,src_mac = lookup_eth(dhost)
next if dst_mac == "ff:ff:ff:ff:ff:ff" # Skip unresolvable addresses
self.capture.setfilter(getfilter(shost, sport, dhost, dport)) self.capture.setfilter(getfilter(shost, sport, dhost, dport))
begin begin
probe = buildprobe(shost, sport, dhost, dport) probe = buildprobe(shost, sport, dhost, dport)
inject_eth(:payload => probe, capture_sendto(probe, dhost)
:eth_daddr => dst_mac,
:eth_saddr => src_mac
)
reply = probereply(self.capture, to) reply = probereply(self.capture, to)