Module: PWN::WWW::WaybackMachine
- Defined in:
- lib/pwn/www/wayback_machine.rb
Overview
This plugin supports Wayback Machine actions.
Class Method Summary collapse
-
.authors ⇒ Object
- Author(s)
0day Inc.
-
.close(opts = {}) ⇒ Object
- Supported Method Parameters
browser_obj = PWN::WWW::WaybackMachine.close( browser_obj: 'required - browser_obj returned from #open method' ).
-
.help ⇒ Object
Display Usage for this Module.
-
.open(opts = {}) ⇒ Object
- Supported Method Parameters
browser_obj = PWN::WWW::WaybackMachine.open( browser_type: 'optional - :firefox|:chrome|:ie|:headless (Defaults to :firefox)', proxy: 'optional - scheme://proxy_host:port || tor' ).
-
.search(opts = {}) ⇒ Object
- Supported Method Parameters
browser_obj = PWN::WWW::WaybackMachine.search( browser_obj: 'required - browser_obj returned from #open method', q: 'required - search string' ).
-
.timetravel(opts = {}) ⇒ Object
- Supported Method Parameters
browser_obj = PWN::WWW::WaybackMachine.timetravel( browser_obj: 'required - browser_obj returned from #open method', uri: 'required - URI (e.g. https://example.com)', date: 'optional - date in YYYYMMDD format (Defaults to today)' ).
Class Method Details
.authors ⇒ Object
- Author(s)
0day Inc. [email protected]
78 79 80 81 82 |
# File 'lib/pwn/www/wayback_machine.rb', line 78 public_class_method def self. "AUTHOR(S): 0day Inc. <[email protected]> " end |
.close(opts = {}) ⇒ Object
- Supported Method Parameters
browser_obj = PWN::WWW::WaybackMachine.close( browser_obj: 'required - browser_obj returned from #open method' )
67 68 69 70 71 72 73 74 |
# File 'lib/pwn/www/wayback_machine.rb', line 67 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
86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 |
# File 'lib/pwn/www/wayback_machine.rb', line 86 public_class_method def self.help puts "USAGE: # Open a session or connection and return a handle. #{self}.open( browser_type: 'optional - :firefox|:chrome|:ie|:headless (Defaults to :firefox)', proxy: 'optional - scheme://proxy_host:port || tor' ) # Run a search using the open session. #{self}.search( browser_obj: 'required - browser_obj returned from #open method', q: 'required - search string' ) # Run timetravel and return its result #{self}.timetravel( browser_obj: 'required - browser_obj returned from #open method', uri: 'required - URI (e.g. https://example.com)', date: 'optional - date in YYYYMMDD format (Defaults to today)' ) # Close a session previously returned by #open. #{self}.close( browser_obj: 'required - browser_obj returned from #open method' ) # Print the AUTHOR(S) string for this module. #{self}.authors " constants.sort end |
.open(opts = {}) ⇒ Object
- Supported Method Parameters
browser_obj = PWN::WWW::WaybackMachine.open( browser_type: 'optional - :firefox|:chrome|:ie|:headless (Defaults to :firefox)', proxy: 'optional - scheme://proxy_host:port || tor' )
13 14 15 16 17 18 19 20 21 22 |
# File 'lib/pwn/www/wayback_machine.rb', line 13 public_class_method def self.open(opts = {}) browser_obj = PWN::Plugins::TransparentBrowser.open(opts) browser = browser_obj[:browser] browser.goto('https://web.archive.org') browser_obj rescue StandardError => e raise e end |
.search(opts = {}) ⇒ Object
- Supported Method Parameters
browser_obj = PWN::WWW::WaybackMachine.search( browser_obj: 'required - browser_obj returned from #open method', q: 'required - search string' )
30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/pwn/www/wayback_machine.rb', line 30 public_class_method def self.search(opts = {}) browser_obj = opts[:browser_obj] q = opts[:q].to_s browser = browser_obj[:browser] browser.text_field(name: 'query').wait_until(&:present?).set(q).submit browser_obj rescue StandardError => e raise e end |
.timetravel(opts = {}) ⇒ Object
- Supported Method Parameters
browser_obj = PWN::WWW::WaybackMachine.timetravel( browser_obj: 'required - browser_obj returned from #open method', uri: 'required - URI (e.g. https://example.com)', date: 'optional - date in YYYYMMDD format (Defaults to today)' )
49 50 51 52 53 54 55 56 57 58 59 60 |
# File 'lib/pwn/www/wayback_machine.rb', line 49 public_class_method def self.timetravel(opts = {}) browser_obj = opts[:browser_obj] uri = opts[:uri].to_s date = opts[:date] ||= Time.now.strftime('%Y%m%d') browser = browser_obj[:browser] browser.goto("https://web.archive.org/web/#{date}/#{uri}") browser_obj rescue StandardError => e raise e end |