Sha256: 01d7e114099716e39568a686cb9bffa99a29bbafe668314d8fb1fe06e98944f1

Contents?: true

Size: 1.04 KB

Versions: 18

Compression:

Stored size: 1.04 KB

Contents

# Copyright (c) 2023 Contrast Security, Inc. See https://www.contrastsecurity.com/enduser-terms-0317a for more details.
# frozen_string_literal: true

require 'contrast/components/logger'

module Contrast
  module Agent
    module Protect
      # This class will store all exploits or definite attack but
      # require us to wait for response
      class ExploitableCollection
        include Contrast::Components::Logger::InstanceMethods

        def initialize
          @_collection = []
        end

        def collection
          @_collection ||= []
        end

        # Push the Result we need to store until response is available
        #
        # @param attack_result [Contrast::Agent::Reporting::AttackResult]
        def push attack_result
          @_collection << attack_result
        end

        # Attach attack results to the context
        #
        # @param context [Contrast::Agent::RequestContext]
        def report_recorded_exploits context
          context.activity.results.concat(@_collection)
        end
      end
    end
  end
end

Version data entries

18 entries across 18 versions & 1 rubygems

Version Path
contrast-agent-7.6.1 lib/contrast/agent/protect/exploitable_collection.rb
contrast-agent-7.6.0 lib/contrast/agent/protect/exploitable_collection.rb
contrast-agent-7.5.0 lib/contrast/agent/protect/exploitable_collection.rb
contrast-agent-7.4.1 lib/contrast/agent/protect/exploitable_collection.rb
contrast-agent-7.4.0 lib/contrast/agent/protect/exploitable_collection.rb
contrast-agent-7.3.2 lib/contrast/agent/protect/exploitable_collection.rb
contrast-agent-7.3.1 lib/contrast/agent/protect/exploitable_collection.rb
contrast-agent-7.3.0 lib/contrast/agent/protect/exploitable_collection.rb
contrast-agent-7.2.0 lib/contrast/agent/protect/exploitable_collection.rb
contrast-agent-7.1.0 lib/contrast/agent/protect/exploitable_collection.rb
contrast-agent-7.0.0 lib/contrast/agent/protect/exploitable_collection.rb
contrast-agent-6.15.3 lib/contrast/agent/protect/exploitable_collection.rb
contrast-agent-6.15.2 lib/contrast/agent/protect/exploitable_collection.rb
contrast-agent-6.15.1 lib/contrast/agent/protect/exploitable_collection.rb
contrast-agent-6.15.0 lib/contrast/agent/protect/exploitable_collection.rb
contrast-agent-6.14.0 lib/contrast/agent/protect/exploitable_collection.rb
contrast-agent-6.13.0 lib/contrast/agent/protect/exploitable_collection.rb
contrast-agent-6.12.0 lib/contrast/agent/protect/exploitable_collection.rb