Class: Contrast::Agent::Protect::Policy::TriggerNode

Inherits:
Contrast::Agent::Patching::Policy::TriggerNode show all
Defined in:
lib/contrast/agent/protect/policy/trigger_node.rb

Overview

This class functions to translate our policy.json into an actionable Ruby object, allowing for dynamic patching over hardcoded patching, specifically for those methods which result in the trigger of an attack (indicate points in the application where uncontrolled user input can do damage).

Constant Summary

Constants inherited from Contrast::Agent::Patching::Policy::TriggerNode

Contrast::Agent::Patching::Policy::TriggerNode::JSON_APPLICATOR, Contrast::Agent::Patching::Policy::TriggerNode::JSON_APPLICATOR_METHOD, Contrast::Agent::Patching::Policy::TriggerNode::JSON_NAME, Contrast::Agent::Patching::Policy::TriggerNode::JSON_ON_EXCEPTION, Contrast::Agent::Patching::Policy::TriggerNode::JSON_OPTIONAL_PROPS, Contrast::Agent::Patching::Policy::TriggerNode::JSON_REQUIRED_PROPS, Contrast::Agent::Patching::Policy::TriggerNode::NODE

Constants inherited from Contrast::Agent::Patching::Policy::PolicyNode

Contrast::Agent::Patching::Policy::PolicyNode::JSON_CLASS_NAME, Contrast::Agent::Patching::Policy::PolicyNode::JSON_INSTANCE_METHOD, Contrast::Agent::Patching::Policy::PolicyNode::JSON_METHOD_NAME, Contrast::Agent::Patching::Policy::PolicyNode::JSON_METHOD_SCOPE, Contrast::Agent::Patching::Policy::PolicyNode::JSON_METHOD_VISIBILITY, Contrast::Agent::Patching::Policy::PolicyNode::JSON_PROPERTIES

Instance Attribute Summary

Attributes inherited from Contrast::Agent::Patching::Policy::TriggerNode

#applicator, #applicator_method, #on_exception, #optional_properties, #required_properties, #rule_id

Attributes inherited from Contrast::Agent::Patching::Policy::PolicyNode

#class_name, #instance_method, #method_name, #method_scope, #method_visibility, #properties

Instance Method Summary collapse

Methods inherited from Contrast::Agent::Patching::Policy::TriggerNode

#initialize, #node_class, #validate, #validate_properties, #validate_rule

Methods inherited from Contrast::Agent::Patching::Policy::PolicyNode

#id, #initialize, #instance_method?, #node_class, #validate

Methods included from Components::Scope::InstanceMethods

#contrast_enter_method_scopes!, #contrast_exit_method_scopes!, #with_app_scope, #with_contrast_scope, #with_deserialization_scope, #with_split_scope

Constructor Details

This class inherits a constructor from Contrast::Agent::Patching::Policy::TriggerNode

Instance Method Details

#featureObject



16
17
18
# File 'lib/contrast/agent/protect/policy/trigger_node.rb', line 16

def feature
  'Protect'
end