Files
metasploit-gs/tools/pattern_offset.rb
T

36 lines
918 B
Ruby
Raw Normal View History

2005-12-17 06:46:23 +00:00
#!/usr/bin/env ruby
2010-05-03 17:13:09 +00:00
# $Id$
# $Revision$
msfbase = __FILE__
while File.symlink?(msfbase)
msfbase = File.expand_path(File.readlink(msfbase), File.dirname(msfbase))
end
$:.unshift(File.expand_path(File.join(File.dirname(msfbase), '..', 'lib')))
require 'fastlib'
2012-04-15 23:35:38 -05:00
require 'msfenv'
$:.unshift(ENV['MSF_LOCAL_LIB']) if ENV['MSF_LOCAL_LIB']
require 'rex'
2010-11-05 00:06:31 +00:00
if ARGV.length < 1
2006-11-13 13:38:11 +00:00
$stderr.puts("Usage: #{File.basename($0)} <search item> <length of buffer>")
$stderr.puts("Default length of buffer if none is inserted: 8192")
$stderr.puts("This buffer is generated by pattern_create() in the Rex library automatically")
exit
end
value = ARGV.shift
len = ARGV.shift || 8192
value = value.hex if (value.length >= 8 and value.hex > 0)
buffer = Rex::Text.pattern_create(len.to_i)
offset = Rex::Text.pattern_offset(buffer, value)
while offset
puts offset
offset = Rex::Text.pattern_offset(buffer, value, offset + 1)
end