datadog 2.12.0 → 2.22.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +348 -1
- data/README.md +0 -1
- data/ext/LIBDATADOG_DEVELOPMENT.md +60 -0
- data/ext/datadog_profiling_native_extension/collectors_cpu_and_wall_time_worker.c +63 -56
- data/ext/datadog_profiling_native_extension/collectors_discrete_dynamic_sampler.c +1 -1
- data/ext/datadog_profiling_native_extension/collectors_stack.c +263 -76
- data/ext/datadog_profiling_native_extension/collectors_stack.h +20 -3
- data/ext/datadog_profiling_native_extension/collectors_thread_context.c +78 -26
- data/ext/datadog_profiling_native_extension/collectors_thread_context.h +1 -0
- data/ext/datadog_profiling_native_extension/datadog_ruby_common.c +1 -4
- data/ext/datadog_profiling_native_extension/datadog_ruby_common.h +10 -0
- data/ext/datadog_profiling_native_extension/encoded_profile.c +79 -0
- data/ext/datadog_profiling_native_extension/encoded_profile.h +8 -0
- data/ext/datadog_profiling_native_extension/extconf.rb +10 -0
- data/ext/datadog_profiling_native_extension/heap_recorder.c +247 -364
- data/ext/datadog_profiling_native_extension/heap_recorder.h +4 -6
- data/ext/datadog_profiling_native_extension/http_transport.c +60 -94
- data/ext/datadog_profiling_native_extension/libdatadog_helpers.c +22 -0
- data/ext/datadog_profiling_native_extension/libdatadog_helpers.h +8 -5
- data/ext/datadog_profiling_native_extension/private_vm_api_access.c +41 -21
- data/ext/datadog_profiling_native_extension/private_vm_api_access.h +6 -4
- data/ext/datadog_profiling_native_extension/profiling.c +2 -0
- data/ext/datadog_profiling_native_extension/ruby_helpers.c +1 -13
- data/ext/datadog_profiling_native_extension/ruby_helpers.h +3 -11
- data/ext/datadog_profiling_native_extension/stack_recorder.c +173 -76
- data/ext/libdatadog_api/crashtracker.c +11 -12
- data/ext/libdatadog_api/crashtracker.h +5 -0
- data/ext/libdatadog_api/datadog_ruby_common.c +1 -4
- data/ext/libdatadog_api/datadog_ruby_common.h +10 -0
- data/ext/libdatadog_api/ddsketch.c +106 -0
- data/ext/libdatadog_api/extconf.rb +5 -3
- data/ext/libdatadog_api/init.c +18 -0
- data/ext/libdatadog_api/library_config.c +172 -0
- data/ext/libdatadog_api/library_config.h +25 -0
- data/ext/libdatadog_api/process_discovery.c +118 -0
- data/ext/libdatadog_api/process_discovery.h +5 -0
- data/ext/libdatadog_extconf_helpers.rb +15 -5
- data/lib/datadog/appsec/actions_handler/serializable_backtrace.rb +89 -0
- data/lib/datadog/appsec/actions_handler.rb +24 -2
- data/lib/datadog/appsec/anonymizer.rb +16 -0
- data/lib/datadog/appsec/api_security/endpoint_collection/grape_route_serializer.rb +26 -0
- data/lib/datadog/appsec/api_security/endpoint_collection/rails_collector.rb +59 -0
- data/lib/datadog/appsec/api_security/endpoint_collection/rails_route_serializer.rb +29 -0
- data/lib/datadog/appsec/api_security/endpoint_collection/sinatra_route_serializer.rb +26 -0
- data/lib/datadog/appsec/api_security/endpoint_collection.rb +10 -0
- data/lib/datadog/appsec/api_security/lru_cache.rb +56 -0
- data/lib/datadog/appsec/api_security/route_extractor.rb +75 -0
- data/lib/datadog/appsec/api_security/sampler.rb +59 -0
- data/lib/datadog/appsec/api_security.rb +23 -0
- data/lib/datadog/appsec/assets/waf_rules/README.md +44 -5
- data/lib/datadog/appsec/assets/waf_rules/recommended.json +601 -74
- data/lib/datadog/appsec/assets/waf_rules/strict.json +48 -75
- data/lib/datadog/appsec/autoload.rb +2 -2
- data/lib/datadog/appsec/component.rb +46 -71
- data/lib/datadog/appsec/compressed_json.rb +40 -0
- data/lib/datadog/appsec/configuration/settings.rb +162 -30
- data/lib/datadog/appsec/context.rb +30 -7
- data/lib/datadog/appsec/contrib/active_record/instrumentation.rb +35 -18
- data/lib/datadog/appsec/contrib/active_record/integration.rb +2 -2
- data/lib/datadog/appsec/contrib/active_record/patcher.rb +62 -11
- data/lib/datadog/appsec/contrib/auto_instrument.rb +1 -1
- data/lib/datadog/appsec/contrib/devise/configuration.rb +7 -31
- data/lib/datadog/appsec/contrib/devise/data_extractor.rb +78 -0
- data/lib/datadog/appsec/contrib/devise/ext.rb +22 -0
- data/lib/datadog/appsec/contrib/devise/integration.rb +1 -2
- data/lib/datadog/appsec/contrib/devise/patcher.rb +34 -23
- data/lib/datadog/appsec/contrib/devise/patches/signin_tracking_patch.rb +103 -0
- data/lib/datadog/appsec/contrib/devise/patches/signup_tracking_patch.rb +70 -0
- data/lib/datadog/appsec/contrib/devise/{patcher/rememberable_patch.rb → patches/skip_signin_tracking_patch.rb} +2 -2
- data/lib/datadog/appsec/contrib/devise/tracking_middleware.rb +106 -0
- data/lib/datadog/appsec/contrib/excon/integration.rb +1 -1
- data/lib/datadog/appsec/contrib/excon/ssrf_detection_middleware.rb +11 -12
- data/lib/datadog/appsec/contrib/faraday/integration.rb +1 -1
- data/lib/datadog/appsec/contrib/faraday/ssrf_detection_middleware.rb +10 -10
- data/lib/datadog/appsec/contrib/graphql/gateway/watcher.rb +10 -9
- data/lib/datadog/appsec/contrib/graphql/integration.rb +1 -1
- data/lib/datadog/appsec/contrib/rack/ext.rb +34 -0
- data/lib/datadog/appsec/contrib/rack/gateway/watcher.rb +53 -31
- data/lib/datadog/appsec/contrib/rack/integration.rb +1 -1
- data/lib/datadog/appsec/contrib/rack/request_middleware.rb +52 -44
- data/lib/datadog/appsec/contrib/rails/gateway/watcher.rb +35 -11
- data/lib/datadog/appsec/contrib/rails/integration.rb +1 -1
- data/lib/datadog/appsec/contrib/rails/patcher.rb +65 -47
- data/lib/datadog/appsec/contrib/rails/patches/process_action_patch.rb +27 -0
- data/lib/datadog/appsec/contrib/rails/patches/render_to_body_patch.rb +33 -0
- data/lib/datadog/appsec/contrib/rest_client/integration.rb +1 -1
- data/lib/datadog/appsec/contrib/rest_client/request_ssrf_detection_patch.rb +12 -12
- data/lib/datadog/appsec/contrib/sinatra/gateway/watcher.rb +45 -22
- data/lib/datadog/appsec/contrib/sinatra/integration.rb +1 -1
- data/lib/datadog/appsec/contrib/sinatra/patcher.rb +8 -18
- data/lib/datadog/appsec/contrib/sinatra/patches/json_patch.rb +31 -0
- data/lib/datadog/appsec/event.rb +91 -147
- data/lib/datadog/appsec/ext.rb +4 -2
- data/lib/datadog/appsec/instrumentation/gateway/argument.rb +23 -2
- data/lib/datadog/appsec/instrumentation/gateway/middleware.rb +24 -0
- data/lib/datadog/appsec/instrumentation/gateway.rb +17 -22
- data/lib/datadog/appsec/metrics/collector.rb +23 -3
- data/lib/datadog/appsec/metrics/telemetry.rb +2 -2
- data/lib/datadog/appsec/metrics/telemetry_exporter.rb +29 -0
- data/lib/datadog/appsec/metrics.rb +1 -0
- data/lib/datadog/appsec/monitor/gateway/watcher.rb +49 -14
- data/lib/datadog/appsec/processor/rule_loader.rb +30 -33
- data/lib/datadog/appsec/remote.rb +43 -59
- data/lib/datadog/appsec/response.rb +6 -6
- data/lib/datadog/appsec/security_engine/engine.rb +176 -0
- data/lib/datadog/appsec/security_engine/result.rb +44 -9
- data/lib/datadog/appsec/security_engine/runner.rb +44 -21
- data/lib/datadog/appsec/security_event.rb +37 -0
- data/lib/datadog/appsec/thread_safe_ref.rb +61 -0
- data/lib/datadog/appsec/trace_keeper.rb +24 -0
- data/lib/datadog/appsec/utils/hash_coercion.rb +23 -0
- data/lib/datadog/appsec/utils.rb +0 -2
- data/lib/datadog/appsec.rb +5 -15
- data/lib/datadog/auto_instrument_base.rb +2 -1
- data/lib/datadog/core/buffer/random.rb +18 -2
- data/lib/datadog/core/configuration/agent_settings.rb +52 -0
- data/lib/datadog/core/configuration/agent_settings_resolver.rb +8 -50
- data/lib/datadog/core/configuration/agentless_settings_resolver.rb +176 -0
- data/lib/datadog/core/configuration/components.rb +69 -37
- data/lib/datadog/core/configuration/components_state.rb +23 -0
- data/lib/datadog/core/configuration/config_helper.rb +100 -0
- data/lib/datadog/core/configuration/deprecations.rb +36 -0
- data/lib/datadog/core/configuration/ext.rb +4 -1
- data/lib/datadog/core/configuration/option.rb +117 -77
- data/lib/datadog/core/configuration/option_definition.rb +5 -14
- data/lib/datadog/core/configuration/options.rb +15 -13
- data/lib/datadog/core/configuration/settings.rb +117 -48
- data/lib/datadog/core/configuration/stable_config.rb +32 -0
- data/lib/datadog/core/configuration/supported_configurations.rb +337 -0
- data/lib/datadog/core/configuration.rb +40 -16
- data/lib/datadog/core/crashtracking/component.rb +3 -10
- data/lib/datadog/core/crashtracking/tag_builder.rb +4 -22
- data/lib/datadog/core/ddsketch.rb +21 -0
- data/lib/datadog/core/deprecations.rb +2 -2
- data/lib/datadog/core/diagnostics/environment_logger.rb +1 -1
- data/lib/datadog/core/encoding.rb +1 -1
- data/lib/datadog/core/environment/agent_info.rb +4 -3
- data/lib/datadog/core/environment/cgroup.rb +10 -12
- data/lib/datadog/core/environment/container.rb +38 -40
- data/lib/datadog/core/environment/ext.rb +6 -8
- data/lib/datadog/core/environment/git.rb +3 -2
- data/lib/datadog/core/environment/identity.rb +3 -3
- data/lib/datadog/core/environment/platform.rb +3 -3
- data/lib/datadog/core/environment/variable_helpers.rb +4 -4
- data/lib/datadog/core/environment/yjit.rb +2 -1
- data/lib/datadog/core/error.rb +11 -9
- data/lib/datadog/core/logger.rb +2 -2
- data/lib/datadog/core/metrics/client.rb +29 -29
- data/lib/datadog/core/metrics/logging.rb +5 -5
- data/lib/datadog/core/pin.rb +4 -8
- data/lib/datadog/core/process_discovery/tracer_memfd.rb +13 -0
- data/lib/datadog/core/process_discovery.rb +61 -0
- data/lib/datadog/core/rate_limiter.rb +4 -2
- data/lib/datadog/core/remote/client.rb +44 -35
- data/lib/datadog/core/remote/component.rb +12 -17
- data/lib/datadog/core/remote/configuration/digest.rb +7 -7
- data/lib/datadog/core/remote/configuration/path.rb +1 -1
- data/lib/datadog/core/remote/configuration/repository.rb +14 -1
- data/lib/datadog/core/remote/negotiation.rb +9 -9
- data/lib/datadog/core/remote/transport/config.rb +4 -3
- data/lib/datadog/core/remote/transport/http/client.rb +5 -4
- data/lib/datadog/core/remote/transport/http/config.rb +27 -37
- data/lib/datadog/core/remote/transport/http/negotiation.rb +7 -33
- data/lib/datadog/core/remote/transport/http.rb +25 -89
- data/lib/datadog/core/remote/transport/negotiation.rb +4 -3
- data/lib/datadog/core/runtime/ext.rb +0 -1
- data/lib/datadog/core/runtime/metrics.rb +12 -5
- data/lib/datadog/core/tag_builder.rb +56 -0
- data/lib/datadog/core/telemetry/component.rb +92 -52
- data/lib/datadog/core/telemetry/emitter.rb +23 -11
- data/lib/datadog/core/telemetry/event/app_client_configuration_change.rb +66 -0
- data/lib/datadog/core/telemetry/event/app_closing.rb +18 -0
- data/lib/datadog/core/telemetry/event/app_dependencies_loaded.rb +33 -0
- data/lib/datadog/core/telemetry/event/app_endpoints_loaded.rb +30 -0
- data/lib/datadog/core/telemetry/event/app_heartbeat.rb +18 -0
- data/lib/datadog/core/telemetry/event/app_integrations_change.rb +58 -0
- data/lib/datadog/core/telemetry/event/app_started.rb +287 -0
- data/lib/datadog/core/telemetry/event/base.rb +40 -0
- data/lib/datadog/core/telemetry/event/distributions.rb +18 -0
- data/lib/datadog/core/telemetry/event/generate_metrics.rb +43 -0
- data/lib/datadog/core/telemetry/event/log.rb +76 -0
- data/lib/datadog/core/telemetry/event/message_batch.rb +42 -0
- data/lib/datadog/core/telemetry/event/synth_app_client_configuration_change.rb +43 -0
- data/lib/datadog/core/telemetry/event.rb +18 -472
- data/lib/datadog/core/telemetry/http/adapters/net.rb +12 -97
- data/lib/datadog/core/telemetry/logger.rb +5 -4
- data/lib/datadog/core/telemetry/logging.rb +11 -5
- data/lib/datadog/core/telemetry/metric.rb +8 -8
- data/lib/datadog/core/telemetry/request.rb +4 -4
- data/lib/datadog/core/telemetry/transport/http/api.rb +43 -0
- data/lib/datadog/core/telemetry/transport/http/client.rb +49 -0
- data/lib/datadog/core/telemetry/transport/http/telemetry.rb +92 -0
- data/lib/datadog/core/telemetry/transport/http.rb +63 -0
- data/lib/datadog/core/telemetry/transport/telemetry.rb +51 -0
- data/lib/datadog/core/telemetry/worker.rb +90 -24
- data/lib/datadog/core/transport/http/adapters/net.rb +17 -2
- data/lib/datadog/core/transport/http/adapters/test.rb +2 -1
- data/lib/datadog/core/transport/http/api/instance.rb +17 -0
- data/lib/datadog/core/transport/http/api/spec.rb +17 -0
- data/lib/datadog/core/transport/http/builder.rb +19 -17
- data/lib/datadog/core/transport/http/env.rb +8 -0
- data/lib/datadog/core/transport/http.rb +75 -0
- data/lib/datadog/core/transport/response.rb +4 -1
- data/lib/datadog/core/utils/at_fork_monkey_patch.rb +6 -6
- data/lib/datadog/core/utils/duration.rb +32 -32
- data/lib/datadog/core/utils/forking.rb +2 -2
- data/lib/datadog/core/utils/network.rb +25 -6
- data/lib/datadog/core/utils/only_once_successful.rb +16 -5
- data/lib/datadog/core/utils/time.rb +20 -0
- data/lib/datadog/core/utils/truncation.rb +21 -0
- data/lib/datadog/core/utils.rb +7 -0
- data/lib/datadog/core/vendor/multipart-post/multipart/post/composite_read_io.rb +1 -1
- data/lib/datadog/core/vendor/multipart-post/multipart/post/multipartable.rb +8 -8
- data/lib/datadog/core/vendor/multipart-post/multipart/post/parts.rb +7 -7
- data/lib/datadog/core/worker.rb +1 -1
- data/lib/datadog/core/workers/async.rb +29 -12
- data/lib/datadog/core/workers/interval_loop.rb +12 -1
- data/lib/datadog/core/workers/runtime_metrics.rb +2 -2
- data/lib/datadog/core.rb +10 -0
- data/lib/datadog/di/boot.rb +43 -0
- data/lib/datadog/di/component.rb +21 -2
- data/lib/datadog/di/context.rb +70 -0
- data/lib/datadog/di/el/compiler.rb +164 -0
- data/lib/datadog/di/el/evaluator.rb +159 -0
- data/lib/datadog/di/el/expression.rb +42 -0
- data/lib/datadog/di/el.rb +5 -0
- data/lib/datadog/di/error.rb +25 -0
- data/lib/datadog/di/instrumenter.rb +132 -20
- data/lib/datadog/di/probe.rb +35 -15
- data/lib/datadog/di/probe_builder.rb +39 -1
- data/lib/datadog/di/probe_file_loader/railtie.rb +15 -0
- data/lib/datadog/di/probe_file_loader.rb +82 -0
- data/lib/datadog/di/probe_manager.rb +3 -2
- data/lib/datadog/di/probe_notification_builder.rb +61 -67
- data/lib/datadog/di/probe_notifier_worker.rb +25 -17
- data/lib/datadog/di/remote.rb +5 -5
- data/lib/datadog/di/serializer.rb +160 -8
- data/lib/datadog/di/transport/diagnostics.rb +4 -3
- data/lib/datadog/di/transport/http/api.rb +2 -12
- data/lib/datadog/di/transport/http/client.rb +4 -3
- data/lib/datadog/di/transport/http/diagnostics.rb +7 -34
- data/lib/datadog/di/transport/http/input.rb +18 -35
- data/lib/datadog/di/transport/http.rb +15 -77
- data/lib/datadog/di/transport/input.rb +14 -5
- data/lib/datadog/di/utils.rb +5 -0
- data/lib/datadog/di.rb +0 -34
- data/lib/datadog/error_tracking/collector.rb +87 -0
- data/lib/datadog/error_tracking/component.rb +167 -0
- data/lib/datadog/error_tracking/configuration/settings.rb +63 -0
- data/lib/datadog/error_tracking/configuration.rb +11 -0
- data/lib/datadog/error_tracking/ext.rb +18 -0
- data/lib/datadog/error_tracking/extensions.rb +16 -0
- data/lib/datadog/error_tracking/filters.rb +77 -0
- data/lib/datadog/error_tracking.rb +18 -0
- data/lib/datadog/kit/appsec/events/v2.rb +196 -0
- data/lib/datadog/kit/appsec/events.rb +17 -4
- data/lib/datadog/kit/identity.rb +22 -12
- data/lib/datadog/opentelemetry/api/baggage.rb +90 -0
- data/lib/datadog/opentelemetry/api/baggage.rbs +26 -0
- data/lib/datadog/opentelemetry/api/context.rb +21 -6
- data/lib/datadog/opentelemetry/sdk/configurator.rb +1 -1
- data/lib/datadog/opentelemetry/sdk/propagator.rb +4 -4
- data/lib/datadog/opentelemetry/sdk/span_processor.rb +8 -8
- data/lib/datadog/opentelemetry/sdk/trace/span.rb +15 -11
- data/lib/datadog/opentelemetry/trace.rb +4 -4
- data/lib/datadog/opentelemetry.rb +2 -1
- data/lib/datadog/profiling/collectors/code_provenance.rb +18 -9
- data/lib/datadog/profiling/collectors/cpu_and_wall_time_worker.rb +6 -0
- data/lib/datadog/profiling/collectors/idle_sampling_helper.rb +1 -0
- data/lib/datadog/profiling/collectors/info.rb +44 -0
- data/lib/datadog/profiling/collectors/thread_context.rb +17 -2
- data/lib/datadog/profiling/component.rb +8 -9
- data/lib/datadog/profiling/encoded_profile.rb +11 -0
- data/lib/datadog/profiling/exporter.rb +12 -7
- data/lib/datadog/profiling/ext.rb +2 -15
- data/lib/datadog/profiling/flush.rb +5 -8
- data/lib/datadog/profiling/http_transport.rb +8 -62
- data/lib/datadog/profiling/profiler.rb +2 -0
- data/lib/datadog/profiling/scheduler.rb +10 -2
- data/lib/datadog/profiling/sequence_tracker.rb +44 -0
- data/lib/datadog/profiling/stack_recorder.rb +9 -9
- data/lib/datadog/profiling/tag_builder.rb +7 -41
- data/lib/datadog/profiling/tasks/exec.rb +2 -2
- data/lib/datadog/profiling/tasks/setup.rb +2 -0
- data/lib/datadog/profiling.rb +13 -10
- data/lib/datadog/single_step_instrument.rb +9 -0
- data/lib/datadog/tracing/analytics.rb +1 -1
- data/lib/datadog/tracing/buffer.rb +7 -7
- data/lib/datadog/tracing/component.rb +21 -29
- data/lib/datadog/tracing/configuration/dynamic.rb +6 -8
- data/lib/datadog/tracing/configuration/ext.rb +8 -4
- data/lib/datadog/tracing/configuration/settings.rb +50 -12
- data/lib/datadog/tracing/context.rb +2 -2
- data/lib/datadog/tracing/context_provider.rb +1 -1
- data/lib/datadog/tracing/contrib/action_cable/event.rb +1 -1
- data/lib/datadog/tracing/contrib/action_cable/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/action_mailer/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/action_pack/action_controller/instrumentation.rb +19 -4
- data/lib/datadog/tracing/contrib/action_pack/action_dispatch/instrumentation.rb +19 -12
- data/lib/datadog/tracing/contrib/action_pack/ext.rb +2 -0
- data/lib/datadog/tracing/contrib/action_pack/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/action_view/events/render_template.rb +1 -1
- data/lib/datadog/tracing/contrib/active_job/event.rb +8 -8
- data/lib/datadog/tracing/contrib/active_job/events/discard.rb +1 -1
- data/lib/datadog/tracing/contrib/active_job/events/enqueue.rb +1 -1
- data/lib/datadog/tracing/contrib/active_job/events/enqueue_at.rb +1 -1
- data/lib/datadog/tracing/contrib/active_job/events/enqueue_retry.rb +1 -1
- data/lib/datadog/tracing/contrib/active_job/events/perform.rb +1 -1
- data/lib/datadog/tracing/contrib/active_job/events/retry_stopped.rb +1 -1
- data/lib/datadog/tracing/contrib/active_job/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/active_model_serializers/events/render.rb +1 -1
- data/lib/datadog/tracing/contrib/active_model_serializers/events/serialize.rb +3 -3
- data/lib/datadog/tracing/contrib/active_model_serializers/integration.rb +1 -2
- data/lib/datadog/tracing/contrib/active_record/configuration/resolver.rb +1 -1
- data/lib/datadog/tracing/contrib/active_record/events/instantiation.rb +1 -1
- data/lib/datadog/tracing/contrib/active_record/events/sql.rb +5 -5
- data/lib/datadog/tracing/contrib/active_record/integration.rb +2 -2
- data/lib/datadog/tracing/contrib/active_record/utils.rb +15 -15
- data/lib/datadog/tracing/contrib/active_support/cache/events/cache.rb +17 -8
- data/lib/datadog/tracing/contrib/active_support/cache/instrumentation.rb +33 -0
- data/lib/datadog/tracing/contrib/active_support/cache/patcher.rb +4 -0
- data/lib/datadog/tracing/contrib/active_support/cache/redis.rb +2 -4
- data/lib/datadog/tracing/contrib/active_support/configuration/settings.rb +13 -0
- data/lib/datadog/tracing/contrib/active_support/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/active_support/notifications/event.rb +2 -1
- data/lib/datadog/tracing/contrib/active_support/notifications/subscription.rb +7 -9
- data/lib/datadog/tracing/contrib/aws/ext.rb +1 -1
- data/lib/datadog/tracing/contrib/aws/instrumentation.rb +12 -2
- data/lib/datadog/tracing/contrib/aws/parsed_context.rb +8 -2
- data/lib/datadog/tracing/contrib/aws/patcher.rb +5 -1
- data/lib/datadog/tracing/contrib/aws/service/base.rb +2 -1
- data/lib/datadog/tracing/contrib/aws/service/dynamodb.rb +1 -1
- data/lib/datadog/tracing/contrib/aws/service/eventbridge.rb +1 -1
- data/lib/datadog/tracing/contrib/aws/service/kinesis.rb +1 -1
- data/lib/datadog/tracing/contrib/aws/service/s3.rb +1 -1
- data/lib/datadog/tracing/contrib/aws/service/sns.rb +1 -1
- data/lib/datadog/tracing/contrib/aws/service/sqs.rb +1 -1
- data/lib/datadog/tracing/contrib/aws/service/states.rb +1 -1
- data/lib/datadog/tracing/contrib/aws/services.rb +7 -7
- data/lib/datadog/tracing/contrib/component.rb +2 -2
- data/lib/datadog/tracing/contrib/concurrent_ruby/async_patch.rb +1 -1
- data/lib/datadog/tracing/contrib/concurrent_ruby/context_composite_executor_service.rb +1 -1
- data/lib/datadog/tracing/contrib/concurrent_ruby/future_patch.rb +1 -1
- data/lib/datadog/tracing/contrib/concurrent_ruby/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/concurrent_ruby/promises_future_patch.rb +1 -1
- data/lib/datadog/tracing/contrib/configurable.rb +6 -6
- data/lib/datadog/tracing/contrib/configuration/resolvers/pattern_resolver.rb +4 -4
- data/lib/datadog/tracing/contrib/configuration/settings.rb +1 -1
- data/lib/datadog/tracing/contrib/dalli/ext.rb +3 -2
- data/lib/datadog/tracing/contrib/dalli/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/delayed_job/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/elasticsearch/ext.rb +3 -2
- data/lib/datadog/tracing/contrib/elasticsearch/integration.rb +4 -4
- data/lib/datadog/tracing/contrib/elasticsearch/patcher.rb +51 -53
- data/lib/datadog/tracing/contrib/elasticsearch/quantize.rb +5 -5
- data/lib/datadog/tracing/contrib/ethon/easy_patch.rb +6 -7
- data/lib/datadog/tracing/contrib/ethon/ext.rb +3 -2
- data/lib/datadog/tracing/contrib/ethon/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/excon/ext.rb +3 -2
- data/lib/datadog/tracing/contrib/excon/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/excon/middleware.rb +7 -5
- data/lib/datadog/tracing/contrib/ext.rb +4 -3
- data/lib/datadog/tracing/contrib/extensions.rb +9 -9
- data/lib/datadog/tracing/contrib/faraday/ext.rb +3 -2
- data/lib/datadog/tracing/contrib/faraday/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/faraday/middleware.rb +9 -5
- data/lib/datadog/tracing/contrib/grape/endpoint.rb +8 -8
- data/lib/datadog/tracing/contrib/grape/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/graphql/configuration/settings.rb +7 -0
- data/lib/datadog/tracing/contrib/graphql/ext.rb +1 -0
- data/lib/datadog/tracing/contrib/graphql/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/graphql/patcher.rb +2 -2
- data/lib/datadog/tracing/contrib/graphql/unified_trace.rb +84 -48
- data/lib/datadog/tracing/contrib/grpc/datadog_interceptor/client.rb +15 -9
- data/lib/datadog/tracing/contrib/grpc/datadog_interceptor/server.rb +3 -3
- data/lib/datadog/tracing/contrib/grpc/distributed/fetcher.rb +1 -1
- data/lib/datadog/tracing/contrib/grpc/distributed/propagation.rb +3 -0
- data/lib/datadog/tracing/contrib/grpc/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/hanami/ext.rb +2 -2
- data/lib/datadog/tracing/contrib/hanami/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/hanami/renderer_policy_tracing.rb +1 -1
- data/lib/datadog/tracing/contrib/hanami/router_tracing.rb +9 -11
- data/lib/datadog/tracing/contrib/http/circuit_breaker.rb +0 -15
- data/lib/datadog/tracing/contrib/http/distributed/fetcher.rb +4 -4
- data/lib/datadog/tracing/contrib/http/distributed/propagation.rb +4 -1
- data/lib/datadog/tracing/contrib/http/ext.rb +3 -2
- data/lib/datadog/tracing/contrib/http/instrumentation.rb +11 -15
- data/lib/datadog/tracing/contrib/httpclient/ext.rb +3 -2
- data/lib/datadog/tracing/contrib/httpclient/instrumentation.rb +9 -19
- data/lib/datadog/tracing/contrib/httpclient/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/httprb/ext.rb +3 -2
- data/lib/datadog/tracing/contrib/httprb/instrumentation.rb +11 -19
- data/lib/datadog/tracing/contrib/httprb/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/kafka/event.rb +1 -1
- data/lib/datadog/tracing/contrib/kafka/events/connection/request.rb +1 -1
- data/lib/datadog/tracing/contrib/kafka/events/consumer/process_batch.rb +1 -1
- data/lib/datadog/tracing/contrib/kafka/events/consumer/process_message.rb +1 -1
- data/lib/datadog/tracing/contrib/kafka/events/consumer_group/heartbeat.rb +1 -1
- data/lib/datadog/tracing/contrib/kafka/events/consumer_group/join_group.rb +1 -1
- data/lib/datadog/tracing/contrib/kafka/events/consumer_group/leave_group.rb +1 -1
- data/lib/datadog/tracing/contrib/kafka/events/consumer_group/sync_group.rb +1 -1
- data/lib/datadog/tracing/contrib/kafka/events/produce_operation/send_messages.rb +1 -1
- data/lib/datadog/tracing/contrib/kafka/events/producer/deliver_messages.rb +1 -1
- data/lib/datadog/tracing/contrib/kafka/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/karafka/configuration/settings.rb +27 -0
- data/lib/datadog/tracing/contrib/karafka/distributed/propagation.rb +48 -0
- data/lib/datadog/tracing/contrib/karafka/ext.rb +27 -0
- data/lib/datadog/tracing/contrib/karafka/integration.rb +45 -0
- data/lib/datadog/tracing/contrib/karafka/monitor.rb +66 -0
- data/lib/datadog/tracing/contrib/karafka/patcher.rb +71 -0
- data/lib/datadog/tracing/contrib/karafka.rb +37 -0
- data/lib/datadog/tracing/contrib/lograge/instrumentation.rb +1 -1
- data/lib/datadog/tracing/contrib/lograge/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/lograge/patcher.rb +4 -2
- data/lib/datadog/tracing/contrib/mongodb/configuration/settings.rb +9 -1
- data/lib/datadog/tracing/contrib/mongodb/ext.rb +2 -1
- data/lib/datadog/tracing/contrib/mongodb/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/mongodb/parsers.rb +1 -1
- data/lib/datadog/tracing/contrib/mongodb/subscribers.rb +23 -6
- data/lib/datadog/tracing/contrib/mysql2/ext.rb +1 -1
- data/lib/datadog/tracing/contrib/mysql2/instrumentation.rb +16 -6
- data/lib/datadog/tracing/contrib/mysql2/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/opensearch/configuration/settings.rb +17 -0
- data/lib/datadog/tracing/contrib/opensearch/ext.rb +12 -2
- data/lib/datadog/tracing/contrib/opensearch/integration.rb +1 -2
- data/lib/datadog/tracing/contrib/opensearch/patcher.rb +68 -66
- data/lib/datadog/tracing/contrib/opensearch/quantize.rb +5 -5
- data/lib/datadog/tracing/contrib/patcher.rb +12 -11
- data/lib/datadog/tracing/contrib/pg/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/presto/ext.rb +1 -1
- data/lib/datadog/tracing/contrib/presto/instrumentation.rb +3 -3
- data/lib/datadog/tracing/contrib/presto/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/propagation/sql_comment/comment.rb +1 -1
- data/lib/datadog/tracing/contrib/propagation/sql_comment.rb +1 -1
- data/lib/datadog/tracing/contrib/que/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/racecar/event.rb +1 -1
- data/lib/datadog/tracing/contrib/racecar/events/batch.rb +2 -2
- data/lib/datadog/tracing/contrib/racecar/events/consume.rb +1 -1
- data/lib/datadog/tracing/contrib/racecar/events/message.rb +2 -2
- data/lib/datadog/tracing/contrib/racecar/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/rack/header_collection.rb +1 -1
- data/lib/datadog/tracing/contrib/rack/header_tagging.rb +32 -32
- data/lib/datadog/tracing/contrib/rack/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/rack/middlewares.rb +21 -17
- data/lib/datadog/tracing/contrib/rack/patcher.rb +1 -1
- data/lib/datadog/tracing/contrib/rack/request_queue.rb +4 -3
- data/lib/datadog/tracing/contrib/rack/trace_proxy_middleware.rb +7 -1
- data/lib/datadog/tracing/contrib/rails/configuration/settings.rb +1 -1
- data/lib/datadog/tracing/contrib/rails/ext.rb +2 -1
- data/lib/datadog/tracing/contrib/rails/integration.rb +2 -2
- data/lib/datadog/tracing/contrib/rails/log_injection.rb +1 -1
- data/lib/datadog/tracing/contrib/rails/middlewares.rb +1 -1
- data/lib/datadog/tracing/contrib/rails/patcher.rb +4 -1
- data/lib/datadog/tracing/contrib/rails/runner.rb +62 -40
- data/lib/datadog/tracing/contrib/rake/instrumentation.rb +4 -4
- data/lib/datadog/tracing/contrib/rake/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/redis/configuration/resolver.rb +2 -2
- data/lib/datadog/tracing/contrib/redis/ext.rb +3 -2
- data/lib/datadog/tracing/contrib/redis/integration.rb +2 -2
- data/lib/datadog/tracing/contrib/redis/patcher.rb +4 -4
- data/lib/datadog/tracing/contrib/redis/quantize.rb +1 -1
- data/lib/datadog/tracing/contrib/redis/tags.rb +1 -1
- data/lib/datadog/tracing/contrib/redis/trace_middleware.rb +4 -4
- data/lib/datadog/tracing/contrib/registry.rb +1 -1
- data/lib/datadog/tracing/contrib/resque/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/resque/resque_job.rb +1 -1
- data/lib/datadog/tracing/contrib/rest_client/ext.rb +3 -2
- data/lib/datadog/tracing/contrib/rest_client/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/rest_client/request_patch.rb +8 -6
- data/lib/datadog/tracing/contrib/roda/instrumentation.rb +1 -1
- data/lib/datadog/tracing/contrib/roda/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/semantic_logger/instrumentation.rb +1 -1
- data/lib/datadog/tracing/contrib/semantic_logger/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/sequel/database.rb +5 -5
- data/lib/datadog/tracing/contrib/sequel/dataset.rb +1 -1
- data/lib/datadog/tracing/contrib/sequel/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/sequel/utils.rb +1 -1
- data/lib/datadog/tracing/contrib/shoryuken/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/sidekiq/client_tracer.rb +6 -1
- data/lib/datadog/tracing/contrib/sidekiq/distributed/propagation.rb +3 -0
- data/lib/datadog/tracing/contrib/sidekiq/ext.rb +1 -0
- data/lib/datadog/tracing/contrib/sidekiq/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/sidekiq/server_tracer.rb +5 -2
- data/lib/datadog/tracing/contrib/sidekiq/utils.rb +1 -1
- data/lib/datadog/tracing/contrib/sinatra/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/sinatra/tracer_middleware.rb +38 -40
- data/lib/datadog/tracing/contrib/sneakers/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/span_attribute_schema.rb +1 -1
- data/lib/datadog/tracing/contrib/stripe/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/stripe/request.rb +1 -1
- data/lib/datadog/tracing/contrib/sucker_punch/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/support.rb +28 -0
- data/lib/datadog/tracing/contrib/trilogy/ext.rb +1 -1
- data/lib/datadog/tracing/contrib/trilogy/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/utils/quantization/hash.rb +11 -11
- data/lib/datadog/tracing/contrib/utils/quantization/http.rb +6 -6
- data/lib/datadog/tracing/contrib.rb +1 -0
- data/lib/datadog/tracing/correlation.rb +9 -2
- data/lib/datadog/tracing/diagnostics/environment_logger.rb +8 -2
- data/lib/datadog/tracing/distributed/b3_multi.rb +1 -1
- data/lib/datadog/tracing/distributed/b3_single.rb +2 -2
- data/lib/datadog/tracing/distributed/baggage.rb +196 -0
- data/lib/datadog/tracing/distributed/datadog.rb +8 -7
- data/lib/datadog/tracing/distributed/datadog_tags_codec.rb +11 -13
- data/lib/datadog/tracing/distributed/helpers.rb +1 -1
- data/lib/datadog/tracing/distributed/none.rb +4 -2
- data/lib/datadog/tracing/distributed/propagation.rb +28 -4
- data/lib/datadog/tracing/distributed/propagation_policy.rb +42 -0
- data/lib/datadog/tracing/distributed/trace_context.rb +22 -16
- data/lib/datadog/tracing/event.rb +5 -7
- data/lib/datadog/tracing/flush.rb +1 -1
- data/lib/datadog/tracing/metadata/analytics.rb +1 -1
- data/lib/datadog/tracing/metadata/errors.rb +4 -4
- data/lib/datadog/tracing/metadata/ext.rb +13 -0
- data/lib/datadog/tracing/metadata/metastruct.rb +36 -0
- data/lib/datadog/tracing/metadata/metastruct_tagging.rb +42 -0
- data/lib/datadog/tracing/metadata/tagging.rb +4 -4
- data/lib/datadog/tracing/metadata.rb +2 -0
- data/lib/datadog/tracing/pipeline/span_filter.rb +3 -1
- data/lib/datadog/tracing/pipeline/span_processor.rb +3 -1
- data/lib/datadog/tracing/pipeline.rb +1 -1
- data/lib/datadog/tracing/sampling/ext.rb +0 -2
- data/lib/datadog/tracing/sampling/rate_sampler.rb +2 -1
- data/lib/datadog/tracing/sampling/rule_sampler.rb +30 -30
- data/lib/datadog/tracing/sampling/span/rule.rb +0 -1
- data/lib/datadog/tracing/sampling/span/rule_parser.rb +1 -1
- data/lib/datadog/tracing/sampling/span/sampler.rb +0 -7
- data/lib/datadog/tracing/span.rb +11 -2
- data/lib/datadog/tracing/span_event.rb +11 -11
- data/lib/datadog/tracing/span_link.rb +12 -12
- data/lib/datadog/tracing/span_operation.rb +76 -26
- data/lib/datadog/tracing/sync_writer.rb +5 -4
- data/lib/datadog/tracing/trace_digest.rb +29 -24
- data/lib/datadog/tracing/trace_operation.rb +121 -97
- data/lib/datadog/tracing/trace_segment.rb +8 -6
- data/lib/datadog/tracing/tracer.rb +90 -43
- data/lib/datadog/tracing/transport/http/api.rb +2 -10
- data/lib/datadog/tracing/transport/http/client.rb +6 -5
- data/lib/datadog/tracing/transport/http/traces.rb +15 -43
- data/lib/datadog/tracing/transport/http.rb +13 -75
- data/lib/datadog/tracing/transport/io/client.rb +5 -5
- data/lib/datadog/tracing/transport/io/traces.rb +4 -4
- data/lib/datadog/tracing/transport/serializable_trace.rb +3 -1
- data/lib/datadog/tracing/transport/statistics.rb +1 -1
- data/lib/datadog/tracing/transport/trace_formatter.rb +7 -0
- data/lib/datadog/tracing/transport/traces.rb +31 -14
- data/lib/datadog/tracing/utils.rb +1 -1
- data/lib/datadog/tracing/workers/trace_writer.rb +16 -16
- data/lib/datadog/tracing/workers.rb +2 -2
- data/lib/datadog/tracing/writer.rb +4 -4
- data/lib/datadog/tracing.rb +16 -3
- data/lib/datadog/version.rb +1 -1
- data/lib/datadog.rb +8 -2
- metadata +115 -24
- data/ext/libdatadog_api/macos_development.md +0 -26
- data/lib/datadog/appsec/assets/waf_rules/processors.json +0 -92
- data/lib/datadog/appsec/assets/waf_rules/scanners.json +0 -114
- data/lib/datadog/appsec/contrib/devise/event.rb +0 -54
- data/lib/datadog/appsec/contrib/devise/patcher/authenticatable_patch.rb +0 -72
- data/lib/datadog/appsec/contrib/devise/patcher/registration_controller_patch.rb +0 -47
- data/lib/datadog/appsec/contrib/devise/resource.rb +0 -35
- data/lib/datadog/appsec/contrib/devise/tracking.rb +0 -57
- data/lib/datadog/appsec/processor/rule_merger.rb +0 -170
- data/lib/datadog/appsec/processor.rb +0 -107
- data/lib/datadog/appsec/utils/trace_operation.rb +0 -15
- data/lib/datadog/core/telemetry/http/env.rb +0 -20
- data/lib/datadog/core/telemetry/http/ext.rb +0 -28
- data/lib/datadog/core/telemetry/http/response.rb +0 -70
- data/lib/datadog/core/telemetry/http/transport.rb +0 -90
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": "2.2",
|
|
3
3
|
"metadata": {
|
|
4
|
-
"rules_version": "1.
|
|
4
|
+
"rules_version": "1.15.1"
|
|
5
5
|
},
|
|
6
6
|
"rules": [
|
|
7
7
|
{
|
|
@@ -2985,7 +2985,7 @@
|
|
|
2985
2985
|
"address": "graphql.server.resolver"
|
|
2986
2986
|
}
|
|
2987
2987
|
],
|
|
2988
|
-
"regex": "\\b(?:(?:l(?:(?:utimes|chmod)(?:Sync)?|(?:stat|ink)Sync)|w(?:rite(?:(?:File|v)(?:Sync)?|Sync)|atchFile)|u(?:n(?:watchFile|linkSync)|times(?:Sync)?)|s(?:(?:ymlink|tat)Sync|pawn(?:File|Sync))|ex(?:ec(?:File(?:Sync)?|Sync)|istsSync)|a(?:ppendFile|ccess)(?:Sync)?|(?:Caveat|Inode)s|open(?:dir)?Sync|new\\s+Function|Availability|\\beval)\\s*\\(|m(?:ain(?:Module\\s*(?:\\W*\\s*(?:constructor|require)|\\[)|\\s*(?:\\W*\\s*(?:constructor|require)|\\[))|kd(?:temp(?:Sync)?|irSync)\\s*\\(|odule\\.exports\\s*=)|c(?:(?:(?:h(?:mod|own)|lose)Sync|reate(?:Write|Read)Stream|p(?:Sync)?)\\s*\\(|o(?:nstructor\\s*(?:\\W*\\s*_load|\\[)|pyFile(?:Sync)?\\s*\\())|f(?:(?:(?:s(?:(?:yncS)?|tatS)|datas(?:yncS)?)ync|ch(?:mod|own)(?:Sync)?)\\s*\\(|u(?:nction\\s*\\(\\s*\\)\\s*{|times(?:Sync)?\\s*\\())|r(?:e(?:(?:ad(?:(?:File|link|dir)?Sync|v(?:Sync)?)|nameSync)\\s*\\(|quire\\s*(?:\\W*\\s*main|\\[))|m(?:Sync)?\\s*\\()|process\\s*(?:\\W*\\s*(?:mainModule|binding)|\\[)|t(?:his\\.constructor|runcateSync\\s*\\()|_(?:\\$\\$ND_FUNC\\$\\$_|_js_function)|global\\s*(?:\\W*\\s*process|\\[)|String\\s*\\.\\s*fromCharCode|binding\\s*\\[)",
|
|
2988
|
+
"regex": "\\b(?:(?:l(?:(?:utimes|chmod)(?:Sync)?|(?:stat|ink)Sync)|w(?:rite(?:(?:File|v)(?:Sync)?|Sync)|atchFile)|u(?:n(?:watchFile|linkSync)|times(?:Sync)?)|s(?:(?:ymlink|tat)Sync|pawn(?:File|Sync))|ex(?:ec(?:File(?:Sync)?|Sync)|istsSync)|a(?:ppendFile|ccess)(?:Sync)?|(?:Caveat|Inode)s|open(?:dir)?Sync|new\\s+Function|Availability|\\beval)\\s*\\(|m(?:ain(?:Module\\s*(?:\\W*\\s*(?:constructor|require)|\\[)|\\s*(?:\\W*\\s*(?:constructor|require)|\\[))|kd(?:temp(?:Sync)?|irSync)\\s*\\(|odule\\.exports\\s*=)|c(?:(?:(?:h(?:mod|own)|lose)Sync|reate(?:Write|Read)Stream|p(?:Sync)?)\\s*\\(|o(?:nstructor\\s*(?:\\W*\\s*_load|\\[)|pyFile(?:Sync)?\\s*\\())|f(?:(?:(?:s(?:(?:yncS)?|tatS)|datas(?:yncS)?)ync|ch(?:mod|own)(?:Sync)?)\\s*\\(|u(?:nction\\s*\\(\\s*\\)\\s*{|times(?:Sync)?\\s*\\())|r(?:e(?:(?:ad(?:(?:File|link|dir)?Sync|v(?:Sync)?)|nameSync)\\s*\\(|quire\\s*(?:\\W*\\s*main\\b|\\[))|m(?:Sync)?\\s*\\()|process\\s*(?:\\W*\\s*(?:mainModule|binding)|\\[)|t(?:his\\.constructor|runcateSync\\s*\\()|_(?:\\$\\$ND_FUNC\\$\\$_|_js_function)|global\\s*(?:\\W*\\s*process|\\[)|String\\s*\\.\\s*fromCharCode|binding\\s*\\[)",
|
|
2989
2989
|
"options": {
|
|
2990
2990
|
"case_sensitive": true,
|
|
2991
2991
|
"min_length": 3
|
|
@@ -4864,6 +4864,36 @@
|
|
|
4864
4864
|
],
|
|
4865
4865
|
"transformers": []
|
|
4866
4866
|
},
|
|
4867
|
+
{
|
|
4868
|
+
"id": "ua0-600-68x",
|
|
4869
|
+
"name": "xorbot",
|
|
4870
|
+
"tags": {
|
|
4871
|
+
"type": "attack_tool",
|
|
4872
|
+
"category": "attack_attempt",
|
|
4873
|
+
"cwe": "200",
|
|
4874
|
+
"capec": "1000/118/169",
|
|
4875
|
+
"tool_name": "xorbot",
|
|
4876
|
+
"confidence": "0",
|
|
4877
|
+
"module": "waf"
|
|
4878
|
+
},
|
|
4879
|
+
"conditions": [
|
|
4880
|
+
{
|
|
4881
|
+
"parameters": {
|
|
4882
|
+
"inputs": [
|
|
4883
|
+
{
|
|
4884
|
+
"address": "server.request.headers.no_cookies",
|
|
4885
|
+
"key_path": [
|
|
4886
|
+
"user-agent"
|
|
4887
|
+
]
|
|
4888
|
+
}
|
|
4889
|
+
],
|
|
4890
|
+
"regex": "\\bmasjesu\\b"
|
|
4891
|
+
},
|
|
4892
|
+
"operator": "match_regex"
|
|
4893
|
+
}
|
|
4894
|
+
],
|
|
4895
|
+
"transformers": []
|
|
4896
|
+
},
|
|
4867
4897
|
{
|
|
4868
4898
|
"id": "dog-913-001",
|
|
4869
4899
|
"name": "BurpCollaborator OOB domain",
|
|
@@ -5422,6 +5452,82 @@
|
|
|
5422
5452
|
],
|
|
5423
5453
|
"transformers": []
|
|
5424
5454
|
},
|
|
5455
|
+
{
|
|
5456
|
+
"id": "dog-913-013",
|
|
5457
|
+
"name": "Public PoC for CVE-2025-24813",
|
|
5458
|
+
"tags": {
|
|
5459
|
+
"type": "attack_tool",
|
|
5460
|
+
"category": "attack_attempt",
|
|
5461
|
+
"cwe": "200",
|
|
5462
|
+
"capec": "1000/118/169",
|
|
5463
|
+
"confidence": "1",
|
|
5464
|
+
"module": "waf"
|
|
5465
|
+
},
|
|
5466
|
+
"conditions": [
|
|
5467
|
+
{
|
|
5468
|
+
"parameters": {
|
|
5469
|
+
"inputs": [
|
|
5470
|
+
{
|
|
5471
|
+
"address": "server.request.uri.raw"
|
|
5472
|
+
}
|
|
5473
|
+
],
|
|
5474
|
+
"regex": "/iSee857/session",
|
|
5475
|
+
"options": {
|
|
5476
|
+
"case_sensitive": false,
|
|
5477
|
+
"min_length": 16
|
|
5478
|
+
}
|
|
5479
|
+
},
|
|
5480
|
+
"operator": "match_regex"
|
|
5481
|
+
}
|
|
5482
|
+
],
|
|
5483
|
+
"transformers": []
|
|
5484
|
+
},
|
|
5485
|
+
{
|
|
5486
|
+
"id": "dog-913-014",
|
|
5487
|
+
"name": "Exploit attempt for Next.js Middleware Exploit (CVE-2025-29927)",
|
|
5488
|
+
"tags": {
|
|
5489
|
+
"type": "security_scanner",
|
|
5490
|
+
"category": "attack_attempt",
|
|
5491
|
+
"cwe": "200",
|
|
5492
|
+
"capec": "1000/118/169",
|
|
5493
|
+
"confidence": "0",
|
|
5494
|
+
"module": "waf"
|
|
5495
|
+
},
|
|
5496
|
+
"conditions": [
|
|
5497
|
+
{
|
|
5498
|
+
"parameters": {
|
|
5499
|
+
"inputs": [
|
|
5500
|
+
{
|
|
5501
|
+
"address": "server.request.headers.no_cookies",
|
|
5502
|
+
"key_path": [
|
|
5503
|
+
"x-middleware-subrequest"
|
|
5504
|
+
]
|
|
5505
|
+
}
|
|
5506
|
+
],
|
|
5507
|
+
"regex": ".*",
|
|
5508
|
+
"options": {
|
|
5509
|
+
"min_length": 1
|
|
5510
|
+
}
|
|
5511
|
+
},
|
|
5512
|
+
"operator": "match_regex"
|
|
5513
|
+
},
|
|
5514
|
+
{
|
|
5515
|
+
"parameters": {
|
|
5516
|
+
"inputs": [
|
|
5517
|
+
{
|
|
5518
|
+
"address": "server.request.headers.no_cookies",
|
|
5519
|
+
"key_path": [
|
|
5520
|
+
"x-middleware-subrequest"
|
|
5521
|
+
]
|
|
5522
|
+
}
|
|
5523
|
+
],
|
|
5524
|
+
"regex": "[0-9a-fA-F]{40}|\\[\\w+\\]"
|
|
5525
|
+
},
|
|
5526
|
+
"operator": "!match_regex"
|
|
5527
|
+
}
|
|
5528
|
+
],
|
|
5529
|
+
"transformers": []
|
|
5530
|
+
},
|
|
5425
5531
|
{
|
|
5426
5532
|
"id": "dog-920-001",
|
|
5427
5533
|
"name": "JWT authentication bypass",
|
|
@@ -5433,6 +5539,7 @@
|
|
|
5433
5539
|
"confidence": "0",
|
|
5434
5540
|
"module": "waf"
|
|
5435
5541
|
},
|
|
5542
|
+
"max_version": "1.24.9",
|
|
5436
5543
|
"conditions": [
|
|
5437
5544
|
{
|
|
5438
5545
|
"parameters": {
|
|
@@ -5550,6 +5657,52 @@
|
|
|
5550
5657
|
],
|
|
5551
5658
|
"transformers": []
|
|
5552
5659
|
},
|
|
5660
|
+
{
|
|
5661
|
+
"id": "dog-932-110",
|
|
5662
|
+
"name": "Python: Subprocess-based command injection",
|
|
5663
|
+
"tags": {
|
|
5664
|
+
"type": "command_injection",
|
|
5665
|
+
"category": "attack_attempt",
|
|
5666
|
+
"confidence": "0",
|
|
5667
|
+
"module": "waf"
|
|
5668
|
+
},
|
|
5669
|
+
"conditions": [
|
|
5670
|
+
{
|
|
5671
|
+
"parameters": {
|
|
5672
|
+
"inputs": [
|
|
5673
|
+
{
|
|
5674
|
+
"address": "server.request.query"
|
|
5675
|
+
},
|
|
5676
|
+
{
|
|
5677
|
+
"address": "server.request.body"
|
|
5678
|
+
},
|
|
5679
|
+
{
|
|
5680
|
+
"address": "server.request.path_params"
|
|
5681
|
+
},
|
|
5682
|
+
{
|
|
5683
|
+
"address": "server.request.headers.no_cookies"
|
|
5684
|
+
},
|
|
5685
|
+
{
|
|
5686
|
+
"address": "grpc.server.request.message"
|
|
5687
|
+
},
|
|
5688
|
+
{
|
|
5689
|
+
"address": "graphql.server.all_resolvers"
|
|
5690
|
+
},
|
|
5691
|
+
{
|
|
5692
|
+
"address": "graphql.server.resolver"
|
|
5693
|
+
}
|
|
5694
|
+
],
|
|
5695
|
+
"regex": "(?s)\\bsubprocess\\b.*\\b(?:check_output|run|Popen|call|check_call)\\b",
|
|
5696
|
+
"options": {
|
|
5697
|
+
"case_sensitive": true,
|
|
5698
|
+
"min_length": 14
|
|
5699
|
+
}
|
|
5700
|
+
},
|
|
5701
|
+
"operator": "match_regex"
|
|
5702
|
+
}
|
|
5703
|
+
],
|
|
5704
|
+
"transformers": []
|
|
5705
|
+
},
|
|
5553
5706
|
{
|
|
5554
5707
|
"id": "dog-934-001",
|
|
5555
5708
|
"name": "XXE - XML file loads external entity",
|
|
@@ -6314,7 +6467,7 @@
|
|
|
6314
6467
|
"address": "server.request.uri.raw"
|
|
6315
6468
|
}
|
|
6316
6469
|
],
|
|
6317
|
-
"regex": "(
|
|
6470
|
+
"regex": "(?:^|/)(?:swagger|api[-/]?docs?|openapi)\\b",
|
|
6318
6471
|
"options": {
|
|
6319
6472
|
"case_sensitive": false
|
|
6320
6473
|
}
|
|
@@ -6331,7 +6484,7 @@
|
|
|
6331
6484
|
"category": "vulnerability_trigger",
|
|
6332
6485
|
"cwe": "22",
|
|
6333
6486
|
"capec": "1000/255/153/126",
|
|
6334
|
-
"confidence": "
|
|
6487
|
+
"confidence": "1",
|
|
6335
6488
|
"module": "rasp"
|
|
6336
6489
|
},
|
|
6337
6490
|
"conditions": [
|
|
@@ -6379,7 +6532,7 @@
|
|
|
6379
6532
|
"category": "vulnerability_trigger",
|
|
6380
6533
|
"cwe": "77",
|
|
6381
6534
|
"capec": "1000/152/248/88",
|
|
6382
|
-
"confidence": "
|
|
6535
|
+
"confidence": "1",
|
|
6383
6536
|
"module": "rasp"
|
|
6384
6537
|
},
|
|
6385
6538
|
"conditions": [
|
|
@@ -6427,7 +6580,7 @@
|
|
|
6427
6580
|
"category": "vulnerability_trigger",
|
|
6428
6581
|
"cwe": "77",
|
|
6429
6582
|
"capec": "1000/152/248/88",
|
|
6430
|
-
"confidence": "
|
|
6583
|
+
"confidence": "1",
|
|
6431
6584
|
"module": "rasp"
|
|
6432
6585
|
},
|
|
6433
6586
|
"conditions": [
|
|
@@ -6479,6 +6632,20 @@
|
|
|
6479
6632
|
"module": "rasp"
|
|
6480
6633
|
},
|
|
6481
6634
|
"conditions": [
|
|
6635
|
+
{
|
|
6636
|
+
"parameters": {
|
|
6637
|
+
"inputs": [
|
|
6638
|
+
{
|
|
6639
|
+
"address": "server.io.net.url"
|
|
6640
|
+
}
|
|
6641
|
+
],
|
|
6642
|
+
"regex": "^(jar:)?https?:\\/\\/\\W*([0-9oq]{1,5}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}|[0-9]{1,10}|(\\[)?[:0-9a-f\\.x]{2,}(\\])?|metadata\\.google\\.internal|(?:[a-z0-9:@\\.\\-]*\\.)?(?:burpcollaborator\\.net|localtest\\.me|mail\\.ebc\\.apple\\.com|bugbounty\\.dod\\.network|.*\\.[nx]ip\\.io|oastify\\.com|oast\\.(?:pro|live|site|online|fun|me)|sslip\\.io|requestbin\\.com|requestbin\\.net|hookbin\\.com|webhook\\.site|canarytokens\\.com|interact\\.sh|ngrok\\.io|bugbounty\\.click|prbly\\.win|qualysperiscope\\.com|vii\\.one|act1on3\\.ru|ifconfig\\.pro|dnslog\\.\\w+))(:[0-9]{1,5})?(\\/[^:@]*)?$",
|
|
6643
|
+
"options": {
|
|
6644
|
+
"case_sensitive": false
|
|
6645
|
+
}
|
|
6646
|
+
},
|
|
6647
|
+
"operator": "match_regex"
|
|
6648
|
+
},
|
|
6482
6649
|
{
|
|
6483
6650
|
"parameters": {
|
|
6484
6651
|
"resource": [
|
|
@@ -6505,7 +6672,10 @@
|
|
|
6505
6672
|
{
|
|
6506
6673
|
"address": "graphql.server.resolver"
|
|
6507
6674
|
}
|
|
6508
|
-
]
|
|
6675
|
+
],
|
|
6676
|
+
"options": {
|
|
6677
|
+
"path-inspection": true
|
|
6678
|
+
}
|
|
6509
6679
|
},
|
|
6510
6680
|
"operator": "ssrf_detector"
|
|
6511
6681
|
}
|
|
@@ -6523,7 +6693,7 @@
|
|
|
6523
6693
|
"category": "vulnerability_trigger",
|
|
6524
6694
|
"cwe": "89",
|
|
6525
6695
|
"capec": "1000/152/248/66",
|
|
6526
|
-
"confidence": "
|
|
6696
|
+
"confidence": "1",
|
|
6527
6697
|
"module": "rasp"
|
|
6528
6698
|
},
|
|
6529
6699
|
"conditions": [
|
|
@@ -6957,7 +7127,7 @@
|
|
|
6957
7127
|
"address": "graphql.server.resolver"
|
|
6958
7128
|
}
|
|
6959
7129
|
],
|
|
6960
|
-
"regex": "(http|https):\\/\\/(?:.*\\.)?(?:burpcollaborator\\.net|localtest\\.me|mail\\.ebc\\.apple\\.com|bugbounty\\.dod\\.network|.*\\.[nx]ip\\.io|oastify\\.com|oast\\.(?:pro|live|site|online|fun|me)|sslip\\.io|requestbin\\.com|requestbin\\.net|hookbin\\.com|webhook\\.site|canarytokens\\.com|interact\\.sh|ngrok\\.io|bugbounty\\.click|prbly\\.win|qualysperiscope\\.com|vii\\.one|act1on3\\.ru)"
|
|
7130
|
+
"regex": "(http|https):\\/\\/(?:.*\\.)?(?:burpcollaborator\\.net|localtest\\.me|mail\\.ebc\\.apple\\.com|bugbounty\\.dod\\.network|.*\\.[nx]ip\\.io|oastify\\.com|oast\\.(?:pro|live|site|online|fun|me)|sslip\\.io|requestbin\\.com|requestbin\\.net|hookbin\\.com|webhook\\.site|canarytokens\\.com|interact\\.sh|ngrok\\.io|bugbounty\\.click|prbly\\.win|qualysperiscope\\.com|vii\\.one|act1on3\\.ru|dnslog\\.\\w+)"
|
|
6961
7131
|
},
|
|
6962
7132
|
"operator": "match_regex"
|
|
6963
7133
|
}
|
|
@@ -7765,7 +7935,7 @@
|
|
|
7765
7935
|
]
|
|
7766
7936
|
}
|
|
7767
7937
|
],
|
|
7768
|
-
"regex": "nmap (nse|scripting engine)"
|
|
7938
|
+
"regex": "nmap (nse|scripting engine|icap-client/)"
|
|
7769
7939
|
},
|
|
7770
7940
|
"operator": "match_regex"
|
|
7771
7941
|
}
|
|
@@ -8537,6 +8707,126 @@
|
|
|
8537
8707
|
],
|
|
8538
8708
|
"transformers": []
|
|
8539
8709
|
},
|
|
8710
|
+
{
|
|
8711
|
+
"id": "ua0-600-64x",
|
|
8712
|
+
"name": "ddg_win",
|
|
8713
|
+
"tags": {
|
|
8714
|
+
"type": "attack_tool",
|
|
8715
|
+
"category": "attack_attempt",
|
|
8716
|
+
"cwe": "200",
|
|
8717
|
+
"capec": "1000/118/169",
|
|
8718
|
+
"tool_name": "ddg_win",
|
|
8719
|
+
"confidence": "1",
|
|
8720
|
+
"module": "waf"
|
|
8721
|
+
},
|
|
8722
|
+
"conditions": [
|
|
8723
|
+
{
|
|
8724
|
+
"parameters": {
|
|
8725
|
+
"inputs": [
|
|
8726
|
+
{
|
|
8727
|
+
"address": "server.request.headers.no_cookies",
|
|
8728
|
+
"key_path": [
|
|
8729
|
+
"user-agent"
|
|
8730
|
+
]
|
|
8731
|
+
}
|
|
8732
|
+
],
|
|
8733
|
+
"regex": "\\bddg_win\\b"
|
|
8734
|
+
},
|
|
8735
|
+
"operator": "match_regex"
|
|
8736
|
+
}
|
|
8737
|
+
],
|
|
8738
|
+
"transformers": []
|
|
8739
|
+
},
|
|
8740
|
+
{
|
|
8741
|
+
"id": "ua0-600-65x",
|
|
8742
|
+
"name": "ISS",
|
|
8743
|
+
"tags": {
|
|
8744
|
+
"type": "commercial_scanner",
|
|
8745
|
+
"category": "attack_attempt",
|
|
8746
|
+
"cwe": "200",
|
|
8747
|
+
"capec": "1000/118/169",
|
|
8748
|
+
"tool_name": "iss",
|
|
8749
|
+
"confidence": "0",
|
|
8750
|
+
"module": "waf"
|
|
8751
|
+
},
|
|
8752
|
+
"conditions": [
|
|
8753
|
+
{
|
|
8754
|
+
"parameters": {
|
|
8755
|
+
"inputs": [
|
|
8756
|
+
{
|
|
8757
|
+
"address": "server.request.headers.no_cookies",
|
|
8758
|
+
"key_path": [
|
|
8759
|
+
"user-agent"
|
|
8760
|
+
]
|
|
8761
|
+
}
|
|
8762
|
+
],
|
|
8763
|
+
"regex": "\\bisscyberriskcrawler/\\d\\.\\d"
|
|
8764
|
+
},
|
|
8765
|
+
"operator": "match_regex"
|
|
8766
|
+
}
|
|
8767
|
+
],
|
|
8768
|
+
"transformers": []
|
|
8769
|
+
},
|
|
8770
|
+
{
|
|
8771
|
+
"id": "ua0-600-66x",
|
|
8772
|
+
"name": "BountyBot",
|
|
8773
|
+
"tags": {
|
|
8774
|
+
"type": "attack_tool",
|
|
8775
|
+
"category": "attack_attempt",
|
|
8776
|
+
"cwe": "200",
|
|
8777
|
+
"capec": "1000/118/169",
|
|
8778
|
+
"tool_name": "bountybot",
|
|
8779
|
+
"confidence": "1",
|
|
8780
|
+
"module": "waf"
|
|
8781
|
+
},
|
|
8782
|
+
"conditions": [
|
|
8783
|
+
{
|
|
8784
|
+
"parameters": {
|
|
8785
|
+
"inputs": [
|
|
8786
|
+
{
|
|
8787
|
+
"address": "server.request.headers.no_cookies",
|
|
8788
|
+
"key_path": [
|
|
8789
|
+
"user-agent"
|
|
8790
|
+
]
|
|
8791
|
+
}
|
|
8792
|
+
],
|
|
8793
|
+
"regex": "\\bbountybot\\b"
|
|
8794
|
+
},
|
|
8795
|
+
"operator": "match_regex"
|
|
8796
|
+
}
|
|
8797
|
+
],
|
|
8798
|
+
"transformers": []
|
|
8799
|
+
},
|
|
8800
|
+
{
|
|
8801
|
+
"id": "ua0-600-67x",
|
|
8802
|
+
"name": "ZumBot",
|
|
8803
|
+
"tags": {
|
|
8804
|
+
"type": "attack_tool",
|
|
8805
|
+
"category": "attack_attempt",
|
|
8806
|
+
"cwe": "200",
|
|
8807
|
+
"capec": "1000/118/169",
|
|
8808
|
+
"tool_name": "zumbot",
|
|
8809
|
+
"confidence": "1",
|
|
8810
|
+
"module": "waf"
|
|
8811
|
+
},
|
|
8812
|
+
"conditions": [
|
|
8813
|
+
{
|
|
8814
|
+
"parameters": {
|
|
8815
|
+
"inputs": [
|
|
8816
|
+
{
|
|
8817
|
+
"address": "server.request.headers.no_cookies",
|
|
8818
|
+
"key_path": [
|
|
8819
|
+
"user-agent"
|
|
8820
|
+
]
|
|
8821
|
+
}
|
|
8822
|
+
],
|
|
8823
|
+
"regex": "\\bzumbot\\b"
|
|
8824
|
+
},
|
|
8825
|
+
"operator": "match_regex"
|
|
8826
|
+
}
|
|
8827
|
+
],
|
|
8828
|
+
"transformers": []
|
|
8829
|
+
},
|
|
8540
8830
|
{
|
|
8541
8831
|
"id": "ua0-600-6xx",
|
|
8542
8832
|
"name": "Stealthy scanner",
|
|
@@ -8630,28 +8920,276 @@
|
|
|
8630
8920
|
"transformers": []
|
|
8631
8921
|
}
|
|
8632
8922
|
],
|
|
8633
|
-
"
|
|
8923
|
+
"rules_compat": [
|
|
8634
8924
|
{
|
|
8635
|
-
"id": "
|
|
8636
|
-
"
|
|
8925
|
+
"id": "api-001-100",
|
|
8926
|
+
"name": "JWT: No expiry is present",
|
|
8927
|
+
"tags": {
|
|
8928
|
+
"type": "jwt",
|
|
8929
|
+
"category": "api_security",
|
|
8930
|
+
"confidence": "0",
|
|
8931
|
+
"module": "business-logic"
|
|
8932
|
+
},
|
|
8933
|
+
"min_version": "1.25.0",
|
|
8934
|
+
"conditions": [
|
|
8935
|
+
{
|
|
8936
|
+
"parameters": {
|
|
8937
|
+
"inputs": [
|
|
8938
|
+
{
|
|
8939
|
+
"address": "server.request.jwt",
|
|
8940
|
+
"key_path": [
|
|
8941
|
+
"payload",
|
|
8942
|
+
"exp"
|
|
8943
|
+
]
|
|
8944
|
+
}
|
|
8945
|
+
]
|
|
8946
|
+
},
|
|
8947
|
+
"operator": "!exists"
|
|
8948
|
+
}
|
|
8949
|
+
],
|
|
8950
|
+
"transformers": [],
|
|
8951
|
+
"output": {
|
|
8952
|
+
"event": false,
|
|
8953
|
+
"keep": false,
|
|
8954
|
+
"attributes": {
|
|
8955
|
+
"_dd.appsec.api.jwt.no_expiry": {
|
|
8956
|
+
"value": 1
|
|
8957
|
+
}
|
|
8958
|
+
}
|
|
8959
|
+
}
|
|
8960
|
+
},
|
|
8961
|
+
{
|
|
8962
|
+
"id": "api-001-110",
|
|
8963
|
+
"name": "JWT: Collect algorithm used",
|
|
8964
|
+
"tags": {
|
|
8965
|
+
"type": "jwt",
|
|
8966
|
+
"category": "api_security",
|
|
8967
|
+
"confidence": "0",
|
|
8968
|
+
"module": "business-logic"
|
|
8969
|
+
},
|
|
8970
|
+
"min_version": "1.25.0",
|
|
8637
8971
|
"conditions": [
|
|
8638
8972
|
{
|
|
8639
|
-
"operator": "exists",
|
|
8640
8973
|
"parameters": {
|
|
8641
8974
|
"inputs": [
|
|
8642
8975
|
{
|
|
8643
|
-
"address": "
|
|
8976
|
+
"address": "server.request.jwt",
|
|
8977
|
+
"key_path": [
|
|
8978
|
+
"header",
|
|
8979
|
+
"alg"
|
|
8980
|
+
]
|
|
8981
|
+
}
|
|
8982
|
+
]
|
|
8983
|
+
},
|
|
8984
|
+
"operator": "exists"
|
|
8985
|
+
}
|
|
8986
|
+
],
|
|
8987
|
+
"transformers": [],
|
|
8988
|
+
"output": {
|
|
8989
|
+
"event": false,
|
|
8990
|
+
"keep": false,
|
|
8991
|
+
"attributes": {
|
|
8992
|
+
"_dd.appsec.api.jwt_alg": {
|
|
8993
|
+
"address": "server.request.jwt",
|
|
8994
|
+
"key_path": [
|
|
8995
|
+
"header",
|
|
8996
|
+
"alg"
|
|
8997
|
+
]
|
|
8998
|
+
}
|
|
8999
|
+
}
|
|
9000
|
+
}
|
|
9001
|
+
},
|
|
9002
|
+
{
|
|
9003
|
+
"id": "api-001-120",
|
|
9004
|
+
"name": "JWT: No audience is specified",
|
|
9005
|
+
"tags": {
|
|
9006
|
+
"type": "jwt",
|
|
9007
|
+
"category": "api_security",
|
|
9008
|
+
"confidence": "0",
|
|
9009
|
+
"module": "business-logic"
|
|
9010
|
+
},
|
|
9011
|
+
"min_version": "1.25.0",
|
|
9012
|
+
"conditions": [
|
|
9013
|
+
{
|
|
9014
|
+
"parameters": {
|
|
9015
|
+
"inputs": [
|
|
9016
|
+
{
|
|
9017
|
+
"address": "server.request.jwt",
|
|
9018
|
+
"key_path": [
|
|
9019
|
+
"payload",
|
|
9020
|
+
"aud"
|
|
9021
|
+
]
|
|
9022
|
+
}
|
|
9023
|
+
]
|
|
9024
|
+
},
|
|
9025
|
+
"operator": "!exists"
|
|
9026
|
+
}
|
|
9027
|
+
],
|
|
9028
|
+
"transformers": [],
|
|
9029
|
+
"output": {
|
|
9030
|
+
"event": false,
|
|
9031
|
+
"keep": false,
|
|
9032
|
+
"attributes": {
|
|
9033
|
+
"_dd.appsec.api.jwt.no_audience": {
|
|
9034
|
+
"value": 1
|
|
9035
|
+
}
|
|
9036
|
+
}
|
|
9037
|
+
}
|
|
9038
|
+
},
|
|
9039
|
+
{
|
|
9040
|
+
"id": "api-001-130",
|
|
9041
|
+
"name": "JWT: None algorithm used",
|
|
9042
|
+
"tags": {
|
|
9043
|
+
"type": "jwt",
|
|
9044
|
+
"category": "api_security",
|
|
9045
|
+
"confidence": "0",
|
|
9046
|
+
"module": "business-logic"
|
|
9047
|
+
},
|
|
9048
|
+
"min_version": "1.25.0",
|
|
9049
|
+
"conditions": [
|
|
9050
|
+
{
|
|
9051
|
+
"parameters": {
|
|
9052
|
+
"inputs": [
|
|
9053
|
+
{
|
|
9054
|
+
"address": "server.request.jwt",
|
|
9055
|
+
"key_path": [
|
|
9056
|
+
"header",
|
|
9057
|
+
"alg"
|
|
9058
|
+
]
|
|
9059
|
+
}
|
|
9060
|
+
],
|
|
9061
|
+
"list": [
|
|
9062
|
+
"none",
|
|
9063
|
+
"nonE",
|
|
9064
|
+
"noNe",
|
|
9065
|
+
"noNE",
|
|
9066
|
+
"nOne",
|
|
9067
|
+
"nOnE",
|
|
9068
|
+
"nONe",
|
|
9069
|
+
"nONE",
|
|
9070
|
+
"None",
|
|
9071
|
+
"NonE",
|
|
9072
|
+
"NoNe",
|
|
9073
|
+
"NoNE",
|
|
9074
|
+
"NOne",
|
|
9075
|
+
"NOnE",
|
|
9076
|
+
"NONe",
|
|
9077
|
+
"NONE"
|
|
9078
|
+
]
|
|
9079
|
+
},
|
|
9080
|
+
"operator": "exact_match"
|
|
9081
|
+
}
|
|
9082
|
+
],
|
|
9083
|
+
"transformers": [],
|
|
9084
|
+
"output": {
|
|
9085
|
+
"event": false,
|
|
9086
|
+
"keep": true,
|
|
9087
|
+
"attributes": {
|
|
9088
|
+
"_dd.appsec.api.jwt.none_alg": {
|
|
9089
|
+
"value": 1
|
|
9090
|
+
}
|
|
9091
|
+
}
|
|
9092
|
+
}
|
|
9093
|
+
},
|
|
9094
|
+
{
|
|
9095
|
+
"id": "ua0-600-551",
|
|
9096
|
+
"name": "Datadog test scanner - scalar trace-tagging version: user-agent",
|
|
9097
|
+
"tags": {
|
|
9098
|
+
"type": "security_scanner",
|
|
9099
|
+
"category": "attack_attempt",
|
|
9100
|
+
"cwe": "200",
|
|
9101
|
+
"capec": "1000/118/169",
|
|
9102
|
+
"tool_name": "Datadog Canary Test",
|
|
9103
|
+
"confidence": "1",
|
|
9104
|
+
"module": "waf"
|
|
9105
|
+
},
|
|
9106
|
+
"min_version": "1.25.0",
|
|
9107
|
+
"conditions": [
|
|
9108
|
+
{
|
|
9109
|
+
"parameters": {
|
|
9110
|
+
"inputs": [
|
|
9111
|
+
{
|
|
9112
|
+
"address": "server.request.headers.no_cookies",
|
|
9113
|
+
"key_path": [
|
|
9114
|
+
"user-agent"
|
|
9115
|
+
]
|
|
8644
9116
|
},
|
|
8645
9117
|
{
|
|
8646
|
-
"address": "server.
|
|
9118
|
+
"address": "grpc.server.request.metadata",
|
|
9119
|
+
"key_path": [
|
|
9120
|
+
"dd-canary"
|
|
9121
|
+
]
|
|
9122
|
+
}
|
|
9123
|
+
],
|
|
9124
|
+
"regex": "^dd-test-scanner-tag-scalar(?:$|/|\\s)"
|
|
9125
|
+
},
|
|
9126
|
+
"operator": "match_regex"
|
|
9127
|
+
}
|
|
9128
|
+
],
|
|
9129
|
+
"transformers": [],
|
|
9130
|
+
"output": {
|
|
9131
|
+
"event": false,
|
|
9132
|
+
"attributes": {
|
|
9133
|
+
"_dd.appsec.test.scanner.scalar": {
|
|
9134
|
+
"value": 1
|
|
9135
|
+
}
|
|
9136
|
+
}
|
|
9137
|
+
}
|
|
9138
|
+
},
|
|
9139
|
+
{
|
|
9140
|
+
"id": "ua0-600-552",
|
|
9141
|
+
"name": "Datadog test scanner - reference trace-tagging version: user-agent",
|
|
9142
|
+
"tags": {
|
|
9143
|
+
"type": "security_scanner",
|
|
9144
|
+
"category": "attack_attempt",
|
|
9145
|
+
"cwe": "200",
|
|
9146
|
+
"capec": "1000/118/169",
|
|
9147
|
+
"tool_name": "Datadog Canary Test",
|
|
9148
|
+
"confidence": "1",
|
|
9149
|
+
"module": "waf"
|
|
9150
|
+
},
|
|
9151
|
+
"min_version": "1.25.0",
|
|
9152
|
+
"conditions": [
|
|
9153
|
+
{
|
|
9154
|
+
"parameters": {
|
|
9155
|
+
"inputs": [
|
|
9156
|
+
{
|
|
9157
|
+
"address": "server.request.headers.no_cookies",
|
|
9158
|
+
"key_path": [
|
|
9159
|
+
"user-agent"
|
|
9160
|
+
]
|
|
8647
9161
|
},
|
|
8648
9162
|
{
|
|
8649
|
-
"address": "server.
|
|
9163
|
+
"address": "grpc.server.request.metadata",
|
|
9164
|
+
"key_path": [
|
|
9165
|
+
"dd-canary"
|
|
9166
|
+
]
|
|
8650
9167
|
}
|
|
9168
|
+
],
|
|
9169
|
+
"regex": "^dd-test-scanner-tag-ref(?:$|/|\\s)"
|
|
9170
|
+
},
|
|
9171
|
+
"operator": "match_regex"
|
|
9172
|
+
}
|
|
9173
|
+
],
|
|
9174
|
+
"transformers": [],
|
|
9175
|
+
"output": {
|
|
9176
|
+
"event": false,
|
|
9177
|
+
"attributes": {
|
|
9178
|
+
"_dd.appsec.test.scanner.reference": {
|
|
9179
|
+
"address": "server.request.headers.no_cookies",
|
|
9180
|
+
"key_path": [
|
|
9181
|
+
"user-agent"
|
|
8651
9182
|
]
|
|
8652
9183
|
}
|
|
8653
9184
|
}
|
|
8654
|
-
|
|
9185
|
+
}
|
|
9186
|
+
}
|
|
9187
|
+
],
|
|
9188
|
+
"processors": [
|
|
9189
|
+
{
|
|
9190
|
+
"id": "http-endpoint-fingerprint",
|
|
9191
|
+
"generator": "http_endpoint_fingerprint",
|
|
9192
|
+
"conditions": [],
|
|
8655
9193
|
"parameters": {
|
|
8656
9194
|
"mappings": [
|
|
8657
9195
|
{
|
|
@@ -8679,7 +9217,7 @@
|
|
|
8679
9217
|
}
|
|
8680
9218
|
]
|
|
8681
9219
|
},
|
|
8682
|
-
"evaluate":
|
|
9220
|
+
"evaluate": true,
|
|
8683
9221
|
"output": true
|
|
8684
9222
|
},
|
|
8685
9223
|
{
|
|
@@ -8835,24 +9373,7 @@
|
|
|
8835
9373
|
{
|
|
8836
9374
|
"id": "http-header-fingerprint",
|
|
8837
9375
|
"generator": "http_header_fingerprint",
|
|
8838
|
-
"conditions": [
|
|
8839
|
-
{
|
|
8840
|
-
"operator": "exists",
|
|
8841
|
-
"parameters": {
|
|
8842
|
-
"inputs": [
|
|
8843
|
-
{
|
|
8844
|
-
"address": "waf.context.event"
|
|
8845
|
-
},
|
|
8846
|
-
{
|
|
8847
|
-
"address": "server.business_logic.users.login.failure"
|
|
8848
|
-
},
|
|
8849
|
-
{
|
|
8850
|
-
"address": "server.business_logic.users.login.success"
|
|
8851
|
-
}
|
|
8852
|
-
]
|
|
8853
|
-
}
|
|
8854
|
-
}
|
|
8855
|
-
],
|
|
9376
|
+
"conditions": [],
|
|
8856
9377
|
"parameters": {
|
|
8857
9378
|
"mappings": [
|
|
8858
9379
|
{
|
|
@@ -8865,30 +9386,35 @@
|
|
|
8865
9386
|
}
|
|
8866
9387
|
]
|
|
8867
9388
|
},
|
|
8868
|
-
"evaluate":
|
|
9389
|
+
"evaluate": true,
|
|
8869
9390
|
"output": true
|
|
8870
9391
|
},
|
|
8871
9392
|
{
|
|
8872
|
-
"id": "
|
|
8873
|
-
"generator": "
|
|
8874
|
-
"
|
|
8875
|
-
|
|
8876
|
-
|
|
8877
|
-
|
|
9393
|
+
"id": "decode-auth-jwt",
|
|
9394
|
+
"generator": "jwt_decode",
|
|
9395
|
+
"min_version": "1.25.0",
|
|
9396
|
+
"parameters": {
|
|
9397
|
+
"mappings": [
|
|
9398
|
+
{
|
|
8878
9399
|
"inputs": [
|
|
8879
9400
|
{
|
|
8880
|
-
"address": "
|
|
8881
|
-
|
|
8882
|
-
|
|
8883
|
-
|
|
8884
|
-
},
|
|
8885
|
-
{
|
|
8886
|
-
"address": "server.business_logic.users.login.success"
|
|
9401
|
+
"address": "server.request.headers.no_cookies",
|
|
9402
|
+
"key_path": [
|
|
9403
|
+
"authorization"
|
|
9404
|
+
]
|
|
8887
9405
|
}
|
|
8888
|
-
]
|
|
9406
|
+
],
|
|
9407
|
+
"output": "server.request.jwt"
|
|
8889
9408
|
}
|
|
8890
|
-
|
|
8891
|
-
|
|
9409
|
+
]
|
|
9410
|
+
},
|
|
9411
|
+
"evaluate": true,
|
|
9412
|
+
"output": false
|
|
9413
|
+
},
|
|
9414
|
+
{
|
|
9415
|
+
"id": "http-network-fingerprint",
|
|
9416
|
+
"generator": "http_network_fingerprint",
|
|
9417
|
+
"conditions": [],
|
|
8892
9418
|
"parameters": {
|
|
8893
9419
|
"mappings": [
|
|
8894
9420
|
{
|
|
@@ -8901,30 +9427,13 @@
|
|
|
8901
9427
|
}
|
|
8902
9428
|
]
|
|
8903
9429
|
},
|
|
8904
|
-
"evaluate":
|
|
9430
|
+
"evaluate": true,
|
|
8905
9431
|
"output": true
|
|
8906
9432
|
},
|
|
8907
9433
|
{
|
|
8908
9434
|
"id": "session-fingerprint",
|
|
8909
9435
|
"generator": "session_fingerprint",
|
|
8910
|
-
"conditions": [
|
|
8911
|
-
{
|
|
8912
|
-
"operator": "exists",
|
|
8913
|
-
"parameters": {
|
|
8914
|
-
"inputs": [
|
|
8915
|
-
{
|
|
8916
|
-
"address": "waf.context.event"
|
|
8917
|
-
},
|
|
8918
|
-
{
|
|
8919
|
-
"address": "server.business_logic.users.login.failure"
|
|
8920
|
-
},
|
|
8921
|
-
{
|
|
8922
|
-
"address": "server.business_logic.users.login.success"
|
|
8923
|
-
}
|
|
8924
|
-
]
|
|
8925
|
-
}
|
|
8926
|
-
}
|
|
8927
|
-
],
|
|
9436
|
+
"conditions": [],
|
|
8928
9437
|
"parameters": {
|
|
8929
9438
|
"mappings": [
|
|
8930
9439
|
{
|
|
@@ -8947,7 +9456,7 @@
|
|
|
8947
9456
|
}
|
|
8948
9457
|
]
|
|
8949
9458
|
},
|
|
8950
|
-
"evaluate":
|
|
9459
|
+
"evaluate": true,
|
|
8951
9460
|
"output": true
|
|
8952
9461
|
}
|
|
8953
9462
|
],
|
|
@@ -9746,6 +10255,24 @@
|
|
|
9746
10255
|
"category": "payment"
|
|
9747
10256
|
}
|
|
9748
10257
|
},
|
|
10258
|
+
{
|
|
10259
|
+
"id": "c542c147-3883-43d6-a067-178e4a7bd65d",
|
|
10260
|
+
"name": "Password",
|
|
10261
|
+
"key": {
|
|
10262
|
+
"operator": "match_regex",
|
|
10263
|
+
"parameters": {
|
|
10264
|
+
"regex": "\\bpass(?:[_-]?word|wd)?\\b|\\bpwd\\b",
|
|
10265
|
+
"options": {
|
|
10266
|
+
"case_sensitive": false,
|
|
10267
|
+
"min_length": 3
|
|
10268
|
+
}
|
|
10269
|
+
}
|
|
10270
|
+
},
|
|
10271
|
+
"tags": {
|
|
10272
|
+
"type": "password",
|
|
10273
|
+
"category": "credentials"
|
|
10274
|
+
}
|
|
10275
|
+
},
|
|
9749
10276
|
{
|
|
9750
10277
|
"id": "18b608bd7a764bff5b2344c0",
|
|
9751
10278
|
"name": "Phone number",
|