Module: Contrast::Agent

Defined in:
lib/contrast/agent.rb,
lib/contrast/agent/scope.rb,
lib/contrast/agent/assess.rb,
lib/contrast/agent/thread.rb,
lib/contrast/agent/railtie.rb,
lib/contrast/agent/request.rb,
lib/contrast/agent/version.rb,
lib/contrast/agent/response.rb,
lib/contrast/agent/rewriter.rb,
lib/contrast/agent/rule_set.rb,
lib/contrast/agent/inventory.rb,
lib/contrast/agent/assess/tag.rb,
lib/contrast/agent/middleware.rb,
lib/contrast/agent/assess/rule.rb,
lib/contrast/agent/module_data.rb,
lib/contrast/agent/at_exit_hook.rb,
lib/contrast/agent/protect/rule.rb,
lib/contrast/agent/worker_thread.rb,
lib/contrast/agent/assess/tracker.rb,
lib/contrast/agent/class_reopener.rb,
lib/contrast/agent/thread_watcher.rb,
lib/contrast/agent/request_context.rb,
lib/contrast/agent/request_handler.rb,
lib/contrast/agent/static_analysis.rb,
lib/contrast/agent/tracepoint_hook.rb,
lib/contrast/agent/assess/rule/base.rb,
lib/contrast/agent/disable_reaction.rb,
lib/contrast/agent/protect/rule/xss.rb,
lib/contrast/agent/protect/rule/xxe.rb,
lib/contrast/agent/assess/properties.rb,
lib/contrast/agent/assess/rule/redos.rb,
lib/contrast/agent/exclusion_matcher.rb,
lib/contrast/agent/protect/rule/base.rb,
lib/contrast/agent/protect/rule/sqli.rb,
lib/contrast/agent/service_heartbeat.rb,
lib/contrast/agent/reaction_processor.rb,
lib/contrast/agent/assess/policy/policy.rb,
lib/contrast/agent/assess/rule/provider.rb,
lib/contrast/agent/protect/rule/no_sqli.rb,
lib/contrast/agent/assess/contrast_event.rb,
lib/contrast/agent/assess/policy/patcher.rb,
lib/contrast/agent/patching/policy/patch.rb,
lib/contrast/agent/protect/policy/policy.rb,
lib/contrast/agent/assess/finalizers/hash.rb,
lib/contrast/agent/assess/policy/preshift.rb,
lib/contrast/agent/assess/property/tagged.rb,
lib/contrast/agent/deadzone/policy/policy.rb,
lib/contrast/agent/inventory/dependencies.rb,
lib/contrast/agent/patching/policy/policy.rb,
lib/contrast/agent/assess/property/evented.rb,
lib/contrast/agent/assess/property/updated.rb,
lib/contrast/agent/inventory/policy/policy.rb,
lib/contrast/agent/patching/policy/patcher.rb,
lib/contrast/agent/assess/policy/propagator.rb,
lib/contrast/agent/assess/policy/policy_node.rb,
lib/contrast/agent/assess/policy/source_node.rb,
lib/contrast/agent/protect/rule/base_service.rb,
lib/contrast/agent/assess/events/source_event.rb,
lib/contrast/agent/assess/policy/trigger_node.rb,
lib/contrast/agent/protect/rule/cmd_injection.rb,
lib/contrast/agent/assess/events/event_factory.rb,
lib/contrast/agent/assess/policy/source_method.rb,
lib/contrast/agent/assess/policy/trigger/xpath.rb,
lib/contrast/agent/inventory/policy/datastores.rb,
lib/contrast/agent/patching/policy/policy_node.rb,
lib/contrast/agent/protect/policy/trigger_node.rb,
lib/contrast/agent/protect/rule/path_traversal.rb,
lib/contrast/agent/assess/policy/policy_scanner.rb,
lib/contrast/agent/assess/policy/rewriter_patch.rb,
lib/contrast/agent/assess/policy/trigger_method.rb,
lib/contrast/agent/patching/policy/patch_status.rb,
lib/contrast/agent/patching/policy/trigger_node.rb,
lib/contrast/agent/protect/rule/deserialization.rb,
lib/contrast/agent/assess/policy/propagator/base.rb,
lib/contrast/agent/assess/policy/propagator/keep.rb,
lib/contrast/agent/assess/policy/propagator/next.rb,
lib/contrast/agent/assess/policy/propagator/trim.rb,
lib/contrast/agent/deadzone/policy/deadzone_node.rb,
lib/contrast/agent/inventory/dependency_analysis.rb,
lib/contrast/agent/inventory/policy/trigger_node.rb,
lib/contrast/agent/patching/policy/method_policy.rb,
lib/contrast/agent/patching/policy/module_policy.rb,
lib/contrast/agent/assess/policy/propagation_node.rb,
lib/contrast/agent/assess/policy/propagator/splat.rb,
lib/contrast/agent/assess/policy/propagator/split.rb,
lib/contrast/agent/inventory/gemfile_digest_cache.rb,
lib/contrast/agent/protect/policy/rule_applicator.rb,
lib/contrast/agent/assess/policy/propagator/append.rb,
lib/contrast/agent/assess/policy/propagator/center.rb,
lib/contrast/agent/assess/policy/propagator/custom.rb,
lib/contrast/agent/assess/policy/propagator/insert.rb,
lib/contrast/agent/assess/policy/propagator/remove.rb,
lib/contrast/agent/assess/policy/propagator/select.rb,
lib/contrast/agent/protect/policy/applies_xxe_rule.rb,
lib/contrast/agent/protect/rule/unsafe_file_upload.rb,
lib/contrast/agent/protect/rule/xxe/entity_wrapper.rb,
lib/contrast/agent/assess/policy/propagation_method.rb,
lib/contrast/agent/assess/policy/propagator/prepend.rb,
lib/contrast/agent/assess/policy/propagator/replace.rb,
lib/contrast/agent/assess/policy/propagator/reverse.rb,
lib/contrast/agent/patching/policy/after_load_patch.rb,
lib/contrast/agent/protect/policy/applies_sqli_rule.rb,
lib/contrast/agent/assess/rule/provider/hardcoded_key.rb,
lib/contrast/agent/patching/policy/after_load_patcher.rb,
lib/contrast/agent/protect/rule/http_method_tampering.rb,
lib/contrast/agent/assess/policy/propagator/match_data.rb,
lib/contrast/agent/assess/policy/trigger/reflected_xss.rb,
lib/contrast/agent/inventory/dependency_usage_analysis.rb,
lib/contrast/agent/protect/policy/applies_no_sqli_rule.rb,
lib/contrast/agent/assess/policy/dynamic_source_factory.rb,
lib/contrast/agent/protect/rule/sqli/sqlite_sql_scanner.rb,
lib/contrast/agent/assess/policy/propagator/substitution.rb,
lib/contrast/agent/protect/rule/sqli/default_sql_scanner.rb,
lib/contrast/agent/protect/rule/sqli/postgres_sql_scanner.rb,
lib/contrast/agent/assess/policy/propagator/database_write.rb,
lib/contrast/agent/assess/rule/provider/hardcoded_password.rb,
lib/contrast/agent/assess/rule/provider/hardcoded_value_rule.rb,
lib/contrast/agent/protect/rule/no_sqli/mongo_no_sql_scanner.rb,
lib/contrast/agent/protect/policy/applies_path_traversal_rule.rb,
lib/contrast/agent/protect/policy/applies_deserialization_rule.rb,
lib/contrast/agent/protect/policy/applies_command_injection_rule.rb,
lib/contrast/agent/assess/policy/trigger_validation/xss_validator.rb,
lib/contrast/agent/assess/policy/trigger_validation/ssrf_validator.rb,
lib/contrast/agent/assess/policy/source_validation/source_validation.rb,
lib/contrast/agent/assess/policy/trigger_validation/trigger_validation.rb,
lib/contrast/agent/assess/policy/source_validation/cross_site_validator.rb,
ext/cs__common/cs__common.c

Overview

Top namespace of the Agent section. Holds tracking contexts that will be accessed throughout the Agent.

Defined Under Namespace

Modules: Assess, AtExitHook, Deadzone, Inventory, Patching, Protect, TracePointHook Classes: ClassReopener, DisableReaction, ExclusionMatcher, Middleware, ModuleData, Railtie, ReactionProcessor, Request, RequestContext, RequestHandler, Response, Rewriter, RuleSet, Scope, ServiceHeartbeat, StaticAnalysis, Thread, ThreadWatcher, WorkerThread

Constant Summary collapse

REQUEST_TRACKER =

build a map for tracking the context of the current request

Contrast::Utils::ThreadTracker.new
VERSION =
'4.2.0'

Class Method Summary collapse

Class Method Details

.framework_managerObject



55
56
57
# File 'lib/contrast/agent.rb', line 55

def self.framework_manager
  @_framework_manager ||= Contrast::Framework::Manager.new
end

.messaging_queueObject



59
60
61
# File 'lib/contrast/agent.rb', line 59

def self.messaging_queue
  @_messaging_queue ||= Contrast::Api::Communication::MessagingQueue.new
end

.thread_watcherObject



63
64
65
# File 'lib/contrast/agent.rb', line 63

def self.thread_watcher
  @_thread_watcher ||= Contrast::Agent::ThreadWatcher.new
end