Module: WPScan

Extended by:
HttpStatusTracking
Defined in:
lib/wpscan/version.rb,
app/models.rb,
lib/wpscan.rb,
app/models/user.rb,
lib/wpscan/scan.rb,
app/models/media.rb,
app/models/theme.rb,
app/finders/users.rb,
app/models/plugin.rb,
lib/wpscan/errors.rb,
lib/wpscan/target.rb,
app/finders/medias.rb,
app/finders/themes.rb,
app/formatters/cli.rb,
app/models/headers.rb,
app/models/version.rb,
app/models/wp_item.rb,
app/models/xml_rpc.rb,
lib/wpscan/browser.rb,
app/finders/plugins.rb,
app/formatters/json.rb,
app/models/timthumb.rb,
lib/wpscan/db/theme.rb,
lib/wpscan/web_site.rb,
app/controllers/core.rb,
app/formatters/jsonl.rb,
app/formatters/sarif.rb,
app/models/db_export.rb,
lib/wpscan/db/plugin.rb,
lib/wpscan/db/themes.rb,
lib/wpscan/exit_code.rb,
lib/wpscan/formatter.rb,
app/finders/timthumbs.rb,
app/models/robots_txt.rb,
app/models/wp_version.rb,
lib/wpscan/controller.rb,
lib/wpscan/db/plugins.rb,
lib/wpscan/db/sponsor.rb,
lib/wpscan/db/updater.rb,
lib/wpscan/db/wp_item.rb,
lib/wpscan/parsed_cli.rb,
lib/wpscan/references.rb,
lib/wpscan/vulnerable.rb,
app/finders/db_exports.rb,
app/finders/main_theme.rb,
app/finders/wp_version.rb,
lib/wpscan/controllers.rb,
lib/wpscan/db/vuln_api.rb,
lib/wpscan/db/wp_items.rb,
lib/wpscan/errors/http.rb,
lib/wpscan/errors/saml.rb,
lib/wpscan/errors/scan.rb,
app/controllers/aliases.rb,
lib/wpscan/target/scope.rb,
app/controllers/vuln_api.rb,
app/models/backup_folder.rb,
app/models/config_backup.rb,
lib/wpscan/db/wp_version.rb,
lib/wpscan/errors/update.rb,
lib/wpscan/errors/xmlrpc.rb,
lib/wpscan/target/hashes.rb,
lib/wpscan/vulnerability.rb,
app/finders/plugins/xpath.rb,
app/finders/theme_version.rb,
lib/wpscan/cache/typhoeus.rb,
lib/wpscan/errors/wp_auth.rb,
lib/wpscan/finders/finder.rb,
app/controllers/main_theme.rb,
app/controllers/wp_version.rb,
app/finders/backup_folders.rb,
app/finders/config_backups.rb,
app/finders/plugin_version.rb,
lib/wpscan/browser/actions.rb,
lib/wpscan/browser/options.rb,
lib/wpscan/db/fingerprints.rb,
lib/wpscan/errors/vuln_api.rb,
lib/wpscan/finders/finding.rb,
app/controllers/enumeration.rb,
app/finders/plugins/comment.rb,
app/formatters/cli_no_color.rb,
lib/wpscan/cache/file_store.rb,
lib/wpscan/errors/wordpress.rb,
lib/wpscan/finders/findings.rb,
lib/wpscan/formatter/buffer.rb,
app/finders/timthumb_version.rb,
app/finders/users/oembed_api.rb,
app/formatters/cli_no_colour.rb,
lib/wpscan/target/server/iis.rb,
app/finders/passwords/xml_rpc.rb,
app/finders/users/wp_json_api.rb,
app/finders/wp_version/readme.rb,
lib/wpscan/errors/enumeration.rb,
app/finders/passwords/wp_login.rb,
app/finders/themes/wp_json_api.rb,
app/finders/users/author_posts.rb,
app/models/interesting_finding.rb,
app/models/search_replace_db_2.rb,
lib/wpscan/target/platform/php.rb,
lib/wpscan/target/server/nginx.rb,
app/controllers/password_attack.rb,
app/finders/plugins/wp_json_api.rb,
app/finders/theme_version/style.rb,
app/finders/users/rss_generator.rb,
app/models/fantastico_fileslist.rb,
lib/wpscan/finders/base_finders.rb,
lib/wpscan/http_status_tracking.rb,
lib/wpscan/target/server/apache.rb,
lib/wpscan/vulnerability_filter.rb,
app/controllers/core/cli_options.rb,
app/finders/interesting_findings.rb,
app/finders/plugins/body_pattern.rb,
app/finders/users/author_sitemap.rb,
lib/wpscan/browser_authenticator.rb,
lib/wpscan/finders/unique_finder.rb,
lib/wpscan/target/server/generic.rb,
app/finders/plugin_version/readme.rb,
app/finders/plugins/config_parser.rb,
app/finders/wp_items/urls_in_page.rb,
lib/wpscan/finders/unique_finders.rb,
app/controllers/custom_directories.rb,
app/finders/plugins/header_pattern.rb,
app/finders/plugins/javascript_var.rb,
app/finders/themes/known_locations.rb,
lib/wpscan/db/dynamic_finders/base.rb,
lib/wpscan/progressbar_null_output.rb,
app/finders/plugins/known_locations.rb,
app/finders/plugins/query_parameter.rb,
app/finders/themes/urls_in_404_page.rb,
app/finders/themes/urls_in_homepage.rb,
lib/wpscan/db/dynamic_finders/theme.rb,
lib/wpscan/finders/same_type_finder.rb,
app/controllers/interesting_findings.rb,
app/finders/plugins/urls_in_404_page.rb,
app/finders/plugins/urls_in_homepage.rb,
app/finders/wp_version/rdf_generator.rb,
app/finders/wp_version/rss_generator.rb,
lib/wpscan/db/dynamic_finders/plugin.rb,
lib/wpscan/finders/finder/enumerator.rb,
lib/wpscan/finders/same_type_finders.rb,
lib/wpscan/target/platform/wordpress.rb,
app/finders/timthumbs/known_locations.rb,
app/finders/wp_version/atom_generator.rb,
app/models/wp_item/wordpress_org_data.rb,
lib/wpscan/finders/independent_finder.rb,
app/finders/db_exports/known_locations.rb,
app/finders/users/login_error_messages.rb,
lib/wpscan/finders/independent_finders.rb,
app/controllers/authenticated_inventory.rb,
app/controllers/enumeration/cli_options.rb,
app/finders/interesting_findings/readme.rb,
app/finders/main_theme/urls_in_404_page.rb,
app/finders/main_theme/urls_in_homepage.rb,
app/finders/passwords/xml_rpc_multicall.rb,
lib/wpscan/db/dynamic_finders/wordpress.rb,
lib/wpscan/finders/finder/fingerprinter.rb,
app/controllers/enumeration/enum_methods.rb,
app/finders/interesting_findings/headers.rb,
app/finders/interesting_findings/wp_cron.rb,
app/finders/interesting_findings/xml_rpc.rb,
app/finders/timthumb_version/bad_request.rb,
lib/wpscan/finders/dynamic_finder/finder.rb,
app/finders/users/author_id_brute_forcing.rb,
app/finders/backup_folders/known_locations.rb,
app/finders/config_backups/known_filenames.rb,
app/finders/interesting_findings/backup_db.rb,
app/finders/interesting_findings/debug_log.rb,
app/finders/interesting_findings/multisite.rb,
app/finders/users/yoast_seo_author_sitemap.rb,
app/finders/interesting_findings/mu_plugins.rb,
app/finders/interesting_findings/robots_txt.rb,
app/finders/medias/attachment_brute_forcing.rb,
lib/wpscan/finders/finder/smart_url_checker.rb,
app/finders/main_theme/css_style_in_404_page.rb,
app/finders/main_theme/css_style_in_homepage.rb,
app/finders/wp_version/unique_fingerprinting.rb,
lib/wpscan/finders/dynamic_finder/wp_version.rb,
app/finders/interesting_findings/php_disabled.rb,
app/finders/interesting_findings/registration.rb,
app/finders/interesting_findings/tmm_db_migrate.rb,
lib/wpscan/finders/dynamic_finder/version/xpath.rb,
app/finders/interesting_findings/upload_sql_dump.rb,
lib/wpscan/finders/dynamic_finder/version/finder.rb,
lib/wpscan/finders/dynamic_finder/version/comment.rb,
lib/wpscan/finders/dynamic_finder/wp_item_version.rb,
lib/wpscan/finders/dynamic_finder/wp_items/finder.rb,
app/finders/main_theme/woo_framework_meta_generator.rb,
app/finders/interesting_findings/search_replace_db_2.rb,
lib/wpscan/finders/finder/smart_url_checker/findings.rb,
app/finders/interesting_findings/fantastico_fileslist.rb,
app/finders/interesting_findings/full_path_disclosure.rb,
app/finders/theme_version/woo_framework_meta_generator.rb,
lib/wpscan/finders/dynamic_finder/version/body_pattern.rb,
lib/wpscan/finders/finder/wp_version/smart_url_checker.rb,
lib/wpscan/finders/dynamic_finder/version/config_parser.rb,
lib/wpscan/target/platform/wordpress/custom_directories.rb,
lib/wpscan/finders/dynamic_finder/version/header_pattern.rb,
lib/wpscan/finders/dynamic_finder/version/javascript_var.rb,
app/finders/interesting_findings/duplicator_installer_log.rb,
app/finders/interesting_findings/upload_directory_listing.rb,
lib/wpscan/finders/dynamic_finder/version/query_parameter.rb,
lib/wpscan/finders/finder/breadth_first_dictionary_attack.rb,
app/finders/interesting_findings/emergency_pwd_reset_script.rb

Overview

Version

Defined Under Namespace

Modules: BrowserAuthenticator, Cache, Controller, DB, Error, ExitCode, Finders, Formatter, HttpStatusTracking, Model, References, Vulnerable Classes: Browser, Controllers, ParsedCli, ProgressBarNullOutput, Scan, Target, Vulnerability, VulnerabilityFilter, WebSite

Constant Summary collapse

APP_DIR =
Pathname.new(__FILE__).dirname.join('..', 'app').expand_path
DB_DIR =
legacy_path.exist? ? legacy_path : xdg_path
VERSION =
'4.0.0'

Class Method Summary collapse

Methods included from HttpStatusTracking

concerning_error_codes?, error_counts, error_warning_messages, format_status_codes, increment_status_code, reset_status_codes, set_status_code, status_codes, top_status_codes

Class Method Details

.api_requestsObject



145
146
147
# File 'lib/wpscan.rb', line 145

def api_requests
  @@api_requests ||= 0
end

.api_requests=(value) ⇒ Object



149
150
151
# File 'lib/wpscan.rb', line 149

def api_requests=(value)
  @@api_requests = value
end

.app_nameObject

The lowercase name of the scanner. Mainly used in directory paths like the default cookie-jar file and path to load the cli options from files.



62
63
64
# File 'lib/wpscan.rb', line 62

def app_name
  'wpscan'
end

.cached_requestsObject



104
105
106
# File 'lib/wpscan.rb', line 104

def cached_requests
  @@cached_requests ||= 0
end

.cached_requests=(value) ⇒ Object



108
109
110
# File 'lib/wpscan.rb', line 108

def cached_requests=(value)
  @@cached_requests = value
end

.command_lineObject

Command line arguments used to start the scan



154
155
156
# File 'lib/wpscan.rb', line 154

def command_line
  @@command_line ||= ''
end

.command_line=(value) ⇒ Object



158
159
160
# File 'lib/wpscan.rb', line 158

def command_line=(value)
  @@command_line = value
end

.start_memoryObject

Memory at the start of the scan (when Scan.new), in bytes.



137
138
139
# File 'lib/wpscan.rb', line 137

def start_memory
  @@start_memory ||= 0
end

.start_memory=(value) ⇒ Object



141
142
143
# File 'lib/wpscan.rb', line 141

def start_memory=(value)
  @@start_memory = value
end

.total_data_receivedObject



128
129
130
# File 'lib/wpscan.rb', line 128

def total_data_received
  @@total_data_received ||= 0
end

.total_data_received=(value) ⇒ Object



132
133
134
# File 'lib/wpscan.rb', line 132

def total_data_received=(value)
  @@total_data_received = value
end

.total_data_sentObject



120
121
122
# File 'lib/wpscan.rb', line 120

def total_data_sent
  @@total_data_sent ||= 0
end

.total_data_sent=(value) ⇒ Object



124
125
126
# File 'lib/wpscan.rb', line 124

def total_data_sent=(value)
  @@total_data_sent = value
end

.total_requestsObject



112
113
114
# File 'lib/wpscan.rb', line 112

def total_requests
  @@total_requests ||= 0
end

.total_requests=(value) ⇒ Object



116
117
118
# File 'lib/wpscan.rb', line 116

def total_requests=(value)
  @@total_requests = value
end

.user_cache_dirObject



100
101
102
# File 'lib/wpscan.rb', line 100

def user_cache_dir
  Pathname.new(ENV['XDG_CACHE_HOME'] || Pathname.new(Dir.home).join('.cache')).join(app_name)
end