Module: PWN::WWW::Linkedin
- Defined in:
- lib/pwn/www/linkedin.rb
Overview
This plugin supports linkedin.com actions.
Class Method Summary collapse
-
.authors ⇒ Object
- Author(s)
-
0day Inc.
-
.close(opts = {}) ⇒ Object
- Supported Method Parameters
-
browser_obj = PWN::WWW::Linkedin.close( browser_obj: ‘required - browser_obj returned from #open method’ ).
-
.help ⇒ Object
Display Usage for this Module.
-
.login(opts = {}) ⇒ Object
- Supported Method Parameters
-
browser_obj = PWN::WWW::Linkedin.login( browser_obj: ‘required - browser_obj returned from #open method’, username: ‘required - username’, password: ‘optional - passwd (will prompt if blank)’ ).
-
.logout(opts = {}) ⇒ Object
- Supported Method Parameters
-
browser_obj = PWN::WWW::Linkedin.logout( browser_obj: ‘required - browser_obj returned from #open method’ ).
-
.open(opts = {}) ⇒ Object
- Supported Method Parameters
-
browser_obj = PWN::WWW::Linkedin.open( browser_type: ‘optional - :firefox|:chrome|:ie|:headless (Defaults to :firefox)’, proxy: ‘optional - scheme://proxy_host:port || tor’ ).
Class Method Details
.authors ⇒ Object
- Author(s)
-
0day Inc. <[email protected]>
90 91 92 93 94 |
# File 'lib/pwn/www/linkedin.rb', line 90 public_class_method def self. "AUTHOR(S): 0day Inc. <[email protected]> " end |
.close(opts = {}) ⇒ Object
- Supported Method Parameters
-
browser_obj = PWN::WWW::Linkedin.close(
browser_obj: 'required - browser_obj returned from #open method'
)
79 80 81 82 83 84 85 86 |
# File 'lib/pwn/www/linkedin.rb', line 79 public_class_method def self.close(opts = {}) browser_obj = opts[:browser_obj] PWN::Plugins::TransparentBrowser.close( browser_obj: browser_obj ) rescue StandardError => e raise e end |
.help ⇒ Object
Display Usage for this Module
98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 |
# File 'lib/pwn/www/linkedin.rb', line 98 public_class_method def self.help puts "USAGE: browser_obj = #{self}.open( browser_type: 'optional - :firefox|:chrome|:ie|:headless (Defaults to :firefox)', proxy: 'optional - scheme://proxy_host:port || tor' ) browser_obj = #{self}.login( browser_obj: 'required - browser_obj returned from #open method', username: 'required - username', password: 'optional - passwd (will prompt if blank), ) browser_obj = #{self}.logout( browser_obj: 'required - browser_obj returned from #open method' ) #{self}.close( browser_obj: 'required - browser_obj returned from #open method' ) #{self}.authors " end |
.login(opts = {}) ⇒ Object
- Supported Method Parameters
-
browser_obj = PWN::WWW::Linkedin.login(
browser_obj: 'required - browser_obj returned from #open method', username: 'required - username', password: 'optional - passwd (will prompt if blank)'
)
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
# File 'lib/pwn/www/linkedin.rb', line 33 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 browser.goto('https://www.linkedin.com/uas/login') browser.text_field(name: 'session_key').wait_until(&:present?).set(username) browser.text_field(name: 'session_password').wait_until(&:present?).set(password) browser.(name: 'signin').click! browser_obj rescue StandardError => e raise e end |
.logout(opts = {}) ⇒ Object
- Supported Method Parameters
-
browser_obj = PWN::WWW::Linkedin.logout(
browser_obj: 'required - browser_obj returned from #open method'
)
62 63 64 65 66 67 68 69 70 71 72 |
# File 'lib/pwn/www/linkedin.rb', line 62 public_class_method def self.logout(opts = {}) browser_obj = opts[:browser_obj] browser = browser_obj[:browser] browser.(id: 'nav-settings__dropdown-trigger').wait_until(&:present?).click! browser.link(index: 14).wait_until(&:present?).click! browser_obj rescue StandardError => e raise e end |
.open(opts = {}) ⇒ Object
- Supported Method Parameters
-
browser_obj = PWN::WWW::Linkedin.open(
browser_type: 'optional - :firefox|:chrome|:ie|:headless (Defaults to :firefox)', proxy: 'optional - scheme://proxy_host:port || tor'
)
15 16 17 18 19 20 21 22 23 24 |
# File 'lib/pwn/www/linkedin.rb', line 15 public_class_method def self.open(opts = {}) browser_obj = PWN::Plugins::TransparentBrowser.open(opts) browser = browser_obj[:browser] browser.goto('https://www.linkedin.com') browser_obj rescue StandardError => e raise e end |