lib/pwn/www/bug_crowd.rb in pwn-0.4.701 vs lib/pwn/www/bug_crowd.rb in pwn-0.4.702
- old
+ new
@@ -13,11 +13,12 @@
# )
public_class_method def self.open(opts = {})
browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
- browser_obj.goto('https://bugcrowd.com')
+ browser = browser_obj[:browser]
+ browser.goto('https://bugcrowd.com')
browser_obj
rescue StandardError => e
raise e
end
@@ -33,27 +34,29 @@
public_class_method def self.login(opts = {})
browser_obj = opts[:browser_obj]
username = opts[:username].to_s.scrub.strip.chomp
password = opts[:password]
+ browser = browser_obj[:browser]
+
if password.nil?
password = PWN::Plugins::AuthenticationHelper.mask_password
else
password = opts[:password].to_s.scrub.strip.chomp
end
mfa = opts[:mfa]
- browser_obj.goto('https://bugcrowd.com/user/sign_in')
+ browser.goto('https://bugcrowd.com/user/sign_in')
- browser_obj.text_field(id: 'user_email').wait_until(&:present?).set(username)
- browser_obj.text_field(id: 'user_password').wait_until(&:present?).set(password)
- browser_obj.button(name: 'button').click!
+ browser.text_field(id: 'user_email').wait_until(&:present?).set(username)
+ browser.text_field(id: 'user_password').wait_until(&:present?).set(password)
+ browser.button(name: 'button').click!
if mfa
- until browser_obj.url == 'https://bugcrowd.com/programs'
- browser_obj.text_field(name: 'otp_attempt').wait_until(&:present?).set(PWN::Plugins::AuthenticationHelper.mfa(prompt: 'enter mfa token'))
- browser_obj.button(name: 'commit').click!
+ until browser.url == 'https://bugcrowd.com/programs'
+ browser.text_field(name: 'otp_attempt').wait_until(&:present?).set(PWN::Plugins::AuthenticationHelper.mfa(prompt: 'enter mfa token'))
+ browser.button(name: 'commit').click!
sleep 3
end
print "\n"
end
@@ -67,13 +70,15 @@
# browser_obj: 'required - browser_obj returned from #open method'
# )
public_class_method def self.logout(opts = {})
browser_obj = opts[:browser_obj]
- browser_obj.li(class: 'dropdown-hover').wait_until(&:present?).hover
- browser_obj.link(class: 'signout_link').wait_until(&:present?).click!
+ browser = browser_obj[:browser]
+ browser.li(class: 'dropdown-hover').wait_until(&:present?).hover
+ browser.link(class: 'signout_link').wait_until(&:present?).click!
+
browser_obj
rescue StandardError => e
raise e
end
@@ -105,10 +110,11 @@
puts "USAGE:
browser_obj = #{self}.open(
browser_type: 'optional - :firefox|:chrome|:ie|:headless (Defaults to :firefox)',
proxy: 'optional - scheme://proxy_host:port || tor'
)
- puts browser_obj.public_methods
+ browser = browser_obj[:browser]
+ puts browser.public_methods
browser_obj = #{self}.login(
browser_obj: 'required - browser_obj returned from #open method',
username: 'required - username',
password: 'optional - passwd (will prompt if blank),