datadog 2.15.0 → 2.16.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.
Files changed (121) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +46 -2
  3. data/ext/datadog_profiling_native_extension/datadog_ruby_common.c +1 -4
  4. data/ext/datadog_profiling_native_extension/datadog_ruby_common.h +7 -0
  5. data/ext/datadog_profiling_native_extension/extconf.rb +3 -0
  6. data/ext/datadog_profiling_native_extension/heap_recorder.c +8 -1
  7. data/ext/libdatadog_api/crashtracker.c +1 -9
  8. data/ext/libdatadog_api/crashtracker.h +5 -0
  9. data/ext/libdatadog_api/datadog_ruby_common.c +1 -4
  10. data/ext/libdatadog_api/datadog_ruby_common.h +7 -0
  11. data/ext/libdatadog_api/init.c +15 -0
  12. data/ext/libdatadog_api/library_config.c +122 -0
  13. data/ext/libdatadog_api/library_config.h +19 -0
  14. data/ext/libdatadog_api/process_discovery.c +117 -0
  15. data/ext/libdatadog_api/process_discovery.h +5 -0
  16. data/lib/datadog/appsec/actions_handler.rb +3 -2
  17. data/lib/datadog/appsec/assets/waf_rules/recommended.json +1344 -0
  18. data/lib/datadog/appsec/assets/waf_rules/strict.json +1344 -0
  19. data/lib/datadog/appsec/autoload.rb +1 -1
  20. data/lib/datadog/appsec/component.rb +11 -4
  21. data/lib/datadog/appsec/configuration/settings.rb +31 -18
  22. data/lib/datadog/appsec/context.rb +1 -1
  23. data/lib/datadog/appsec/contrib/active_record/instrumentation.rb +10 -12
  24. data/lib/datadog/appsec/contrib/active_record/integration.rb +1 -1
  25. data/lib/datadog/appsec/contrib/active_record/patcher.rb +22 -22
  26. data/lib/datadog/appsec/contrib/devise/data_extractor.rb +2 -3
  27. data/lib/datadog/appsec/contrib/devise/ext.rb +1 -0
  28. data/lib/datadog/appsec/contrib/devise/integration.rb +1 -1
  29. data/lib/datadog/appsec/contrib/devise/patcher.rb +3 -5
  30. data/lib/datadog/appsec/contrib/devise/tracking_middleware.rb +17 -4
  31. data/lib/datadog/appsec/contrib/excon/integration.rb +1 -1
  32. data/lib/datadog/appsec/contrib/excon/ssrf_detection_middleware.rb +9 -10
  33. data/lib/datadog/appsec/contrib/faraday/integration.rb +1 -1
  34. data/lib/datadog/appsec/contrib/faraday/ssrf_detection_middleware.rb +8 -9
  35. data/lib/datadog/appsec/contrib/graphql/gateway/watcher.rb +8 -9
  36. data/lib/datadog/appsec/contrib/graphql/integration.rb +1 -1
  37. data/lib/datadog/appsec/contrib/rack/gateway/watcher.rb +22 -32
  38. data/lib/datadog/appsec/contrib/rack/integration.rb +1 -1
  39. data/lib/datadog/appsec/contrib/rack/request_middleware.rb +16 -16
  40. data/lib/datadog/appsec/contrib/rails/gateway/watcher.rb +11 -13
  41. data/lib/datadog/appsec/contrib/rails/integration.rb +1 -1
  42. data/lib/datadog/appsec/contrib/rails/patcher.rb +21 -21
  43. data/lib/datadog/appsec/contrib/rest_client/integration.rb +1 -1
  44. data/lib/datadog/appsec/contrib/rest_client/request_ssrf_detection_patch.rb +10 -11
  45. data/lib/datadog/appsec/contrib/sinatra/gateway/watcher.rb +17 -23
  46. data/lib/datadog/appsec/contrib/sinatra/integration.rb +1 -1
  47. data/lib/datadog/appsec/event.rb +85 -95
  48. data/lib/datadog/appsec/instrumentation/gateway/argument.rb +5 -2
  49. data/lib/datadog/appsec/metrics/telemetry.rb +1 -1
  50. data/lib/datadog/appsec/monitor/gateway/watcher.rb +42 -12
  51. data/lib/datadog/appsec/processor/rule_loader.rb +26 -28
  52. data/lib/datadog/appsec/processor/rule_merger.rb +5 -5
  53. data/lib/datadog/appsec/processor.rb +1 -1
  54. data/lib/datadog/appsec/remote.rb +14 -13
  55. data/lib/datadog/appsec/response.rb +6 -6
  56. data/lib/datadog/appsec/security_engine/runner.rb +1 -1
  57. data/lib/datadog/appsec/security_event.rb +39 -0
  58. data/lib/datadog/appsec.rb +1 -1
  59. data/lib/datadog/core/configuration/agentless_settings_resolver.rb +176 -0
  60. data/lib/datadog/core/configuration/components.rb +19 -10
  61. data/lib/datadog/core/configuration/option.rb +61 -25
  62. data/lib/datadog/core/configuration/settings.rb +10 -0
  63. data/lib/datadog/core/configuration/stable_config.rb +23 -0
  64. data/lib/datadog/core/configuration.rb +24 -0
  65. data/lib/datadog/core/crashtracking/component.rb +1 -9
  66. data/lib/datadog/core/environment/git.rb +1 -0
  67. data/lib/datadog/core/environment/variable_helpers.rb +1 -1
  68. data/lib/datadog/core/metrics/client.rb +8 -7
  69. data/lib/datadog/core/process_discovery.rb +32 -0
  70. data/lib/datadog/core/remote/client.rb +7 -0
  71. data/lib/datadog/core/runtime/metrics.rb +1 -1
  72. data/lib/datadog/core/telemetry/component.rb +60 -50
  73. data/lib/datadog/core/telemetry/emitter.rb +17 -11
  74. data/lib/datadog/core/telemetry/event.rb +7 -4
  75. data/lib/datadog/core/telemetry/http/adapters/net.rb +12 -97
  76. data/lib/datadog/core/telemetry/request.rb +3 -3
  77. data/lib/datadog/core/telemetry/transport/http/api.rb +43 -0
  78. data/lib/datadog/core/telemetry/transport/http/client.rb +49 -0
  79. data/lib/datadog/core/telemetry/transport/http/telemetry.rb +92 -0
  80. data/lib/datadog/core/telemetry/transport/http.rb +63 -0
  81. data/lib/datadog/core/telemetry/transport/telemetry.rb +52 -0
  82. data/lib/datadog/core/telemetry/worker.rb +45 -0
  83. data/lib/datadog/core/utils/time.rb +12 -0
  84. data/lib/datadog/core/workers/async.rb +20 -2
  85. data/lib/datadog/core/workers/interval_loop.rb +12 -1
  86. data/lib/datadog/core/workers/runtime_metrics.rb +2 -2
  87. data/lib/datadog/core.rb +8 -0
  88. data/lib/datadog/di/boot.rb +34 -0
  89. data/lib/datadog/di/remote.rb +2 -0
  90. data/lib/datadog/di.rb +5 -32
  91. data/lib/datadog/error_tracking/collector.rb +87 -0
  92. data/lib/datadog/error_tracking/component.rb +167 -0
  93. data/lib/datadog/error_tracking/configuration/settings.rb +63 -0
  94. data/lib/datadog/error_tracking/configuration.rb +11 -0
  95. data/lib/datadog/error_tracking/ext.rb +18 -0
  96. data/lib/datadog/error_tracking/extensions.rb +16 -0
  97. data/lib/datadog/error_tracking/filters.rb +77 -0
  98. data/lib/datadog/error_tracking.rb +18 -0
  99. data/lib/datadog/kit/identity.rb +1 -1
  100. data/lib/datadog/profiling/exporter.rb +1 -1
  101. data/lib/datadog/tracing/analytics.rb +1 -1
  102. data/lib/datadog/tracing/contrib/karafka/distributed/propagation.rb +2 -0
  103. data/lib/datadog/tracing/contrib/karafka/monitor.rb +1 -1
  104. data/lib/datadog/tracing/contrib/mongodb/configuration/settings.rb +8 -0
  105. data/lib/datadog/tracing/contrib/mongodb/ext.rb +1 -0
  106. data/lib/datadog/tracing/contrib/mongodb/subscribers.rb +18 -1
  107. data/lib/datadog/tracing/distributed/b3_multi.rb +1 -1
  108. data/lib/datadog/tracing/distributed/b3_single.rb +1 -1
  109. data/lib/datadog/tracing/distributed/datadog.rb +2 -2
  110. data/lib/datadog/tracing/sampling/rate_sampler.rb +2 -1
  111. data/lib/datadog/tracing/span_operation.rb +38 -14
  112. data/lib/datadog/tracing/trace_operation.rb +15 -7
  113. data/lib/datadog/tracing/tracer.rb +7 -3
  114. data/lib/datadog/tracing/utils.rb +1 -1
  115. data/lib/datadog/version.rb +1 -1
  116. data/lib/datadog.rb +2 -3
  117. metadata +34 -8
  118. data/lib/datadog/core/telemetry/http/env.rb +0 -20
  119. data/lib/datadog/core/telemetry/http/ext.rb +0 -28
  120. data/lib/datadog/core/telemetry/http/response.rb +0 -70
  121. data/lib/datadog/core/telemetry/http/transport.rb +0 -90
@@ -8629,5 +8629,1349 @@
8629
8629
  ],
8630
8630
  "transformers": []
8631
8631
  }
8632
+ ],
8633
+ "processors": [
8634
+ {
8635
+ "id": "http-endpoint-fingerprint",
8636
+ "generator": "http_endpoint_fingerprint",
8637
+ "conditions": [
8638
+ {
8639
+ "operator": "exists",
8640
+ "parameters": {
8641
+ "inputs": [
8642
+ {
8643
+ "address": "waf.context.event"
8644
+ },
8645
+ {
8646
+ "address": "server.business_logic.users.login.failure"
8647
+ },
8648
+ {
8649
+ "address": "server.business_logic.users.login.success"
8650
+ }
8651
+ ]
8652
+ }
8653
+ }
8654
+ ],
8655
+ "parameters": {
8656
+ "mappings": [
8657
+ {
8658
+ "method": [
8659
+ {
8660
+ "address": "server.request.method"
8661
+ }
8662
+ ],
8663
+ "uri_raw": [
8664
+ {
8665
+ "address": "server.request.uri.raw"
8666
+ }
8667
+ ],
8668
+ "body": [
8669
+ {
8670
+ "address": "server.request.body"
8671
+ }
8672
+ ],
8673
+ "query": [
8674
+ {
8675
+ "address": "server.request.query"
8676
+ }
8677
+ ],
8678
+ "output": "_dd.appsec.fp.http.endpoint"
8679
+ }
8680
+ ]
8681
+ },
8682
+ "evaluate": false,
8683
+ "output": true
8684
+ },
8685
+ {
8686
+ "id": "extract-content",
8687
+ "generator": "extract_schema",
8688
+ "conditions": [
8689
+ {
8690
+ "operator": "equals",
8691
+ "parameters": {
8692
+ "inputs": [
8693
+ {
8694
+ "address": "waf.context.processor",
8695
+ "key_path": [
8696
+ "extract-schema"
8697
+ ]
8698
+ }
8699
+ ],
8700
+ "type": "boolean",
8701
+ "value": true
8702
+ }
8703
+ }
8704
+ ],
8705
+ "parameters": {
8706
+ "mappings": [
8707
+ {
8708
+ "inputs": [
8709
+ {
8710
+ "address": "server.request.body"
8711
+ }
8712
+ ],
8713
+ "output": "_dd.appsec.s.req.body"
8714
+ },
8715
+ {
8716
+ "inputs": [
8717
+ {
8718
+ "address": "server.request.cookies"
8719
+ }
8720
+ ],
8721
+ "output": "_dd.appsec.s.req.cookies"
8722
+ },
8723
+ {
8724
+ "inputs": [
8725
+ {
8726
+ "address": "server.request.query"
8727
+ }
8728
+ ],
8729
+ "output": "_dd.appsec.s.req.query"
8730
+ },
8731
+ {
8732
+ "inputs": [
8733
+ {
8734
+ "address": "server.request.path_params"
8735
+ }
8736
+ ],
8737
+ "output": "_dd.appsec.s.req.params"
8738
+ },
8739
+ {
8740
+ "inputs": [
8741
+ {
8742
+ "address": "server.response.body"
8743
+ }
8744
+ ],
8745
+ "output": "_dd.appsec.s.res.body"
8746
+ },
8747
+ {
8748
+ "inputs": [
8749
+ {
8750
+ "address": "graphql.server.all_resolvers"
8751
+ }
8752
+ ],
8753
+ "output": "_dd.appsec.s.graphql.all_resolvers"
8754
+ },
8755
+ {
8756
+ "inputs": [
8757
+ {
8758
+ "address": "graphql.server.resolver"
8759
+ }
8760
+ ],
8761
+ "output": "_dd.appsec.s.graphql.resolver"
8762
+ }
8763
+ ],
8764
+ "scanners": [
8765
+ {
8766
+ "tags": {
8767
+ "category": "payment"
8768
+ }
8769
+ },
8770
+ {
8771
+ "tags": {
8772
+ "category": "pii"
8773
+ }
8774
+ }
8775
+ ]
8776
+ },
8777
+ "evaluate": false,
8778
+ "output": true
8779
+ },
8780
+ {
8781
+ "id": "extract-headers",
8782
+ "generator": "extract_schema",
8783
+ "conditions": [
8784
+ {
8785
+ "operator": "equals",
8786
+ "parameters": {
8787
+ "inputs": [
8788
+ {
8789
+ "address": "waf.context.processor",
8790
+ "key_path": [
8791
+ "extract-schema"
8792
+ ]
8793
+ }
8794
+ ],
8795
+ "type": "boolean",
8796
+ "value": true
8797
+ }
8798
+ }
8799
+ ],
8800
+ "parameters": {
8801
+ "mappings": [
8802
+ {
8803
+ "inputs": [
8804
+ {
8805
+ "address": "server.request.headers.no_cookies"
8806
+ }
8807
+ ],
8808
+ "output": "_dd.appsec.s.req.headers"
8809
+ },
8810
+ {
8811
+ "inputs": [
8812
+ {
8813
+ "address": "server.response.headers.no_cookies"
8814
+ }
8815
+ ],
8816
+ "output": "_dd.appsec.s.res.headers"
8817
+ }
8818
+ ],
8819
+ "scanners": [
8820
+ {
8821
+ "tags": {
8822
+ "category": "credentials"
8823
+ }
8824
+ },
8825
+ {
8826
+ "tags": {
8827
+ "category": "pii"
8828
+ }
8829
+ }
8830
+ ]
8831
+ },
8832
+ "evaluate": false,
8833
+ "output": true
8834
+ },
8835
+ {
8836
+ "id": "http-header-fingerprint",
8837
+ "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
+ ],
8856
+ "parameters": {
8857
+ "mappings": [
8858
+ {
8859
+ "headers": [
8860
+ {
8861
+ "address": "server.request.headers.no_cookies"
8862
+ }
8863
+ ],
8864
+ "output": "_dd.appsec.fp.http.header"
8865
+ }
8866
+ ]
8867
+ },
8868
+ "evaluate": false,
8869
+ "output": true
8870
+ },
8871
+ {
8872
+ "id": "http-network-fingerprint",
8873
+ "generator": "http_network_fingerprint",
8874
+ "conditions": [
8875
+ {
8876
+ "operator": "exists",
8877
+ "parameters": {
8878
+ "inputs": [
8879
+ {
8880
+ "address": "waf.context.event"
8881
+ },
8882
+ {
8883
+ "address": "server.business_logic.users.login.failure"
8884
+ },
8885
+ {
8886
+ "address": "server.business_logic.users.login.success"
8887
+ }
8888
+ ]
8889
+ }
8890
+ }
8891
+ ],
8892
+ "parameters": {
8893
+ "mappings": [
8894
+ {
8895
+ "headers": [
8896
+ {
8897
+ "address": "server.request.headers.no_cookies"
8898
+ }
8899
+ ],
8900
+ "output": "_dd.appsec.fp.http.network"
8901
+ }
8902
+ ]
8903
+ },
8904
+ "evaluate": false,
8905
+ "output": true
8906
+ },
8907
+ {
8908
+ "id": "session-fingerprint",
8909
+ "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
+ ],
8928
+ "parameters": {
8929
+ "mappings": [
8930
+ {
8931
+ "cookies": [
8932
+ {
8933
+ "address": "server.request.cookies"
8934
+ }
8935
+ ],
8936
+ "session_id": [
8937
+ {
8938
+ "address": "usr.session_id"
8939
+ }
8940
+ ],
8941
+ "user_id": [
8942
+ {
8943
+ "address": "usr.id"
8944
+ }
8945
+ ],
8946
+ "output": "_dd.appsec.fp.session"
8947
+ }
8948
+ ]
8949
+ },
8950
+ "evaluate": false,
8951
+ "output": true
8952
+ }
8953
+ ],
8954
+ "scanners": [
8955
+ {
8956
+ "id": "406f8606-52c4-4663-8db9-df70f9e8766c",
8957
+ "name": "ZIP Code",
8958
+ "key": {
8959
+ "operator": "match_regex",
8960
+ "parameters": {
8961
+ "regex": "\\b(?:zip|postal)\\b",
8962
+ "options": {
8963
+ "case_sensitive": false,
8964
+ "min_length": 3
8965
+ }
8966
+ }
8967
+ },
8968
+ "value": {
8969
+ "operator": "match_regex",
8970
+ "parameters": {
8971
+ "regex": "^[0-9]{5}(?:-[0-9]{4})?$",
8972
+ "options": {
8973
+ "case_sensitive": true,
8974
+ "min_length": 5
8975
+ }
8976
+ }
8977
+ },
8978
+ "tags": {
8979
+ "type": "zipcode",
8980
+ "category": "address"
8981
+ }
8982
+ },
8983
+ {
8984
+ "id": "JU1sRk3mSzqSUJn6GrVn7g",
8985
+ "name": "American Express Card Scanner (4+4+4+3 digits)",
8986
+ "key": {
8987
+ "operator": "match_regex",
8988
+ "parameters": {
8989
+ "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
8990
+ "options": {
8991
+ "case_sensitive": false,
8992
+ "min_length": 3
8993
+ }
8994
+ }
8995
+ },
8996
+ "value": {
8997
+ "operator": "match_regex",
8998
+ "parameters": {
8999
+ "regex": "\\b3[47]\\d{2}(?:(?:\\s\\d{4}\\s\\d{4}\\s\\d{3})|(?:\\,\\d{4}\\,\\d{4}\\,\\d{3})|(?:-\\d{4}-\\d{4}-\\d{3})|(?:\\.\\d{4}\\.\\d{4}\\.\\d{3}))\\b",
9000
+ "options": {
9001
+ "case_sensitive": false,
9002
+ "min_length": 16
9003
+ }
9004
+ }
9005
+ },
9006
+ "tags": {
9007
+ "type": "card",
9008
+ "card_type": "amex",
9009
+ "category": "payment"
9010
+ }
9011
+ },
9012
+ {
9013
+ "id": "edmH513UTQWcRiQ9UnzHlw-mod",
9014
+ "name": "American Express Card Scanner (4+6|5+5|6 digits)",
9015
+ "key": {
9016
+ "operator": "match_regex",
9017
+ "parameters": {
9018
+ "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
9019
+ "options": {
9020
+ "case_sensitive": false,
9021
+ "min_length": 3
9022
+ }
9023
+ }
9024
+ },
9025
+ "value": {
9026
+ "operator": "match_regex",
9027
+ "parameters": {
9028
+ "regex": "\\b3[47]\\d{2}(?:(?:\\s\\d{5,6}\\s\\d{5,6})|(?:\\.\\d{5,6}\\.\\d{5,6})|(?:-\\d{5,6}-\\d{5,6})|(?:,\\d{5,6},\\d{5,6}))\\b",
9029
+ "options": {
9030
+ "case_sensitive": false,
9031
+ "min_length": 17
9032
+ }
9033
+ }
9034
+ },
9035
+ "tags": {
9036
+ "type": "card",
9037
+ "card_type": "amex",
9038
+ "category": "payment"
9039
+ }
9040
+ },
9041
+ {
9042
+ "id": "e6K4h_7qTLaMiAbaNXoSZA",
9043
+ "name": "American Express Card Scanner (8+7 digits)",
9044
+ "key": {
9045
+ "operator": "match_regex",
9046
+ "parameters": {
9047
+ "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
9048
+ "options": {
9049
+ "case_sensitive": false,
9050
+ "min_length": 3
9051
+ }
9052
+ }
9053
+ },
9054
+ "value": {
9055
+ "operator": "match_regex",
9056
+ "parameters": {
9057
+ "regex": "\\b3[47]\\d{6}(?:(?:\\s\\d{7})|(?:\\,\\d{7})|(?:-\\d{7})|(?:\\.\\d{7}))\\b",
9058
+ "options": {
9059
+ "case_sensitive": false,
9060
+ "min_length": 16
9061
+ }
9062
+ }
9063
+ },
9064
+ "tags": {
9065
+ "type": "card",
9066
+ "card_type": "amex",
9067
+ "category": "payment"
9068
+ }
9069
+ },
9070
+ {
9071
+ "id": "K2rZflWzRhGM9HiTc6whyQ",
9072
+ "name": "American Express Card Scanner (1x15 digits)",
9073
+ "key": {
9074
+ "operator": "match_regex",
9075
+ "parameters": {
9076
+ "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
9077
+ "options": {
9078
+ "case_sensitive": false,
9079
+ "min_length": 3
9080
+ }
9081
+ }
9082
+ },
9083
+ "value": {
9084
+ "operator": "match_regex",
9085
+ "parameters": {
9086
+ "regex": "\\b3[47]\\d{13}\\b",
9087
+ "options": {
9088
+ "case_sensitive": false,
9089
+ "min_length": 15
9090
+ }
9091
+ }
9092
+ },
9093
+ "tags": {
9094
+ "type": "card",
9095
+ "card_type": "amex",
9096
+ "category": "payment"
9097
+ }
9098
+ },
9099
+ {
9100
+ "id": "9d7756e343cefa22a5c098e1092590f806eb5446",
9101
+ "name": "Basic Authentication Scanner",
9102
+ "key": {
9103
+ "operator": "match_regex",
9104
+ "parameters": {
9105
+ "regex": "\\bauthorization\\b",
9106
+ "options": {
9107
+ "case_sensitive": false,
9108
+ "min_length": 13
9109
+ }
9110
+ }
9111
+ },
9112
+ "value": {
9113
+ "operator": "match_regex",
9114
+ "parameters": {
9115
+ "regex": "^basic\\s+[A-Za-z0-9+/=]+",
9116
+ "options": {
9117
+ "case_sensitive": false,
9118
+ "min_length": 7
9119
+ }
9120
+ }
9121
+ },
9122
+ "tags": {
9123
+ "type": "basic_auth",
9124
+ "category": "credentials"
9125
+ }
9126
+ },
9127
+ {
9128
+ "id": "mZy8XjZLReC9smpERXWnnw",
9129
+ "name": "Bearer Authentication Scanner",
9130
+ "key": {
9131
+ "operator": "match_regex",
9132
+ "parameters": {
9133
+ "regex": "\\bauthorization\\b",
9134
+ "options": {
9135
+ "case_sensitive": false,
9136
+ "min_length": 13
9137
+ }
9138
+ }
9139
+ },
9140
+ "value": {
9141
+ "operator": "match_regex",
9142
+ "parameters": {
9143
+ "regex": "^bearer\\s+[-a-z0-9._~+/]{4,}",
9144
+ "options": {
9145
+ "case_sensitive": false,
9146
+ "min_length": 11
9147
+ }
9148
+ }
9149
+ },
9150
+ "tags": {
9151
+ "type": "bearer_token",
9152
+ "category": "credentials"
9153
+ }
9154
+ },
9155
+ {
9156
+ "id": "450239afc250a19799b6c03dc0e16fd6a4b2a1af",
9157
+ "name": "Canadian Social Insurance Number Scanner",
9158
+ "key": {
9159
+ "operator": "match_regex",
9160
+ "parameters": {
9161
+ "regex": "\\b(?:social[\\s_]?(?:insurance(?:\\s+number)?)?|SIN|Canadian[\\s_]?(?:social[\\s_]?(?:insurance)?|insurance[\\s_]?number)?)\\b",
9162
+ "options": {
9163
+ "case_sensitive": false,
9164
+ "min_length": 3
9165
+ }
9166
+ }
9167
+ },
9168
+ "value": {
9169
+ "operator": "match_regex",
9170
+ "parameters": {
9171
+ "regex": "\\b\\d{3}-\\d{3}-\\d{3}\\b",
9172
+ "options": {
9173
+ "case_sensitive": false,
9174
+ "min_length": 11
9175
+ }
9176
+ }
9177
+ },
9178
+ "tags": {
9179
+ "type": "canadian_sin",
9180
+ "category": "pii"
9181
+ }
9182
+ },
9183
+ {
9184
+ "id": "87a879ff33693b46c8a614d8211f5a2c289beca0",
9185
+ "name": "Digest Authentication Scanner",
9186
+ "key": {
9187
+ "operator": "match_regex",
9188
+ "parameters": {
9189
+ "regex": "\\bauthorization\\b",
9190
+ "options": {
9191
+ "case_sensitive": false,
9192
+ "min_length": 13
9193
+ }
9194
+ }
9195
+ },
9196
+ "value": {
9197
+ "operator": "match_regex",
9198
+ "parameters": {
9199
+ "regex": "^digest\\s+",
9200
+ "options": {
9201
+ "case_sensitive": false,
9202
+ "min_length": 7
9203
+ }
9204
+ }
9205
+ },
9206
+ "tags": {
9207
+ "type": "digest_auth",
9208
+ "category": "credentials"
9209
+ }
9210
+ },
9211
+ {
9212
+ "id": "qWumeP1GQUa_E4ffAnT-Yg",
9213
+ "name": "American Express Card Scanner (1x14 digits)",
9214
+ "key": {
9215
+ "operator": "match_regex",
9216
+ "parameters": {
9217
+ "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
9218
+ "options": {
9219
+ "case_sensitive": false,
9220
+ "min_length": 3
9221
+ }
9222
+ }
9223
+ },
9224
+ "value": {
9225
+ "operator": "match_regex",
9226
+ "parameters": {
9227
+ "regex": "(?:30[0-59]\\d|3[689]\\d{2})(?:\\d{10})",
9228
+ "options": {
9229
+ "case_sensitive": false,
9230
+ "min_length": 14
9231
+ }
9232
+ }
9233
+ },
9234
+ "tags": {
9235
+ "type": "card",
9236
+ "card_type": "diners",
9237
+ "category": "payment"
9238
+ }
9239
+ },
9240
+ {
9241
+ "id": "NlTWWM5LS6W0GSqBLuvtRw",
9242
+ "name": "Diners Card Scanner (4+4+4+2 digits)",
9243
+ "key": {
9244
+ "operator": "match_regex",
9245
+ "parameters": {
9246
+ "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
9247
+ "options": {
9248
+ "case_sensitive": false,
9249
+ "min_length": 3
9250
+ }
9251
+ }
9252
+ },
9253
+ "value": {
9254
+ "operator": "match_regex",
9255
+ "parameters": {
9256
+ "regex": "\\b(?:30[0-59]\\d|3[689]\\d{2})(?:(?:\\s\\d{4}\\s\\d{4}\\s\\d{2})|(?:\\,\\d{4}\\,\\d{4}\\,\\d{2})|(?:-\\d{4}-\\d{4}-\\d{2})|(?:\\.\\d{4}\\.\\d{4}\\.\\d{2}))\\b",
9257
+ "options": {
9258
+ "case_sensitive": false,
9259
+ "min_length": 17
9260
+ }
9261
+ }
9262
+ },
9263
+ "tags": {
9264
+ "type": "card",
9265
+ "card_type": "diners",
9266
+ "category": "payment"
9267
+ }
9268
+ },
9269
+ {
9270
+ "id": "Xr5VdbQSTXitYGGiTfxBpw",
9271
+ "name": "Diners Card Scanner (4+6+4 digits)",
9272
+ "key": {
9273
+ "operator": "match_regex",
9274
+ "parameters": {
9275
+ "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
9276
+ "options": {
9277
+ "case_sensitive": false,
9278
+ "min_length": 3
9279
+ }
9280
+ }
9281
+ },
9282
+ "value": {
9283
+ "operator": "match_regex",
9284
+ "parameters": {
9285
+ "regex": "\\b(?:30[0-59]\\d|3[689]\\d{2})(?:(?:\\s\\d{6}\\s\\d{4})|(?:\\.\\d{6}\\.\\d{4})|(?:-\\d{6}-\\d{4})|(?:,\\d{6},\\d{4}))\\b",
9286
+ "options": {
9287
+ "case_sensitive": false,
9288
+ "min_length": 16
9289
+ }
9290
+ }
9291
+ },
9292
+ "tags": {
9293
+ "type": "card",
9294
+ "card_type": "diners",
9295
+ "category": "payment"
9296
+ }
9297
+ },
9298
+ {
9299
+ "id": "gAbunN_WQNytxu54DjcbAA-mod",
9300
+ "name": "Diners Card Scanner (8+6 digits)",
9301
+ "key": {
9302
+ "operator": "match_regex",
9303
+ "parameters": {
9304
+ "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
9305
+ "options": {
9306
+ "case_sensitive": false,
9307
+ "min_length": 3
9308
+ }
9309
+ }
9310
+ },
9311
+ "value": {
9312
+ "operator": "match_regex",
9313
+ "parameters": {
9314
+ "regex": "\\b(?:30[0-59]\\d{5}|3[689]\\d{6})\\s?(?:(?:\\s\\d{6})|(?:\\,\\d{6})|(?:-\\d{6})|(?:\\.\\d{6}))\\b",
9315
+ "options": {
9316
+ "case_sensitive": false,
9317
+ "min_length": 14
9318
+ }
9319
+ }
9320
+ },
9321
+ "tags": {
9322
+ "type": "card",
9323
+ "card_type": "diners",
9324
+ "category": "payment"
9325
+ }
9326
+ },
9327
+ {
9328
+ "id": "9cs4qCfEQBeX17U7AepOvQ",
9329
+ "name": "MasterCard Scanner (2x8 digits)",
9330
+ "key": {
9331
+ "operator": "match_regex",
9332
+ "parameters": {
9333
+ "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
9334
+ "options": {
9335
+ "case_sensitive": false,
9336
+ "min_length": 3
9337
+ }
9338
+ }
9339
+ },
9340
+ "value": {
9341
+ "operator": "match_regex",
9342
+ "parameters": {
9343
+ "regex": "\\b(?:6221(?:2[6-9]|[3-9][0-9])\\d{2}(?:,\\d{8}|\\s\\d{8}|-\\d{8}|\\.\\d{8})|6229(?:[01][0-9]|2[0-5])\\d{2}(?:,\\d{8}|\\s\\d{8}|-\\d{8}|\\.\\d{8})|(?:6011|65\\d{2}|64[4-9]\\d|622[2-8])\\d{4}(?:,\\d{8}|\\s\\d{8}|-\\d{8}|\\.\\d{8}))\\b",
9344
+ "options": {
9345
+ "case_sensitive": false,
9346
+ "min_length": 16
9347
+ }
9348
+ }
9349
+ },
9350
+ "tags": {
9351
+ "type": "card",
9352
+ "card_type": "discover",
9353
+ "category": "payment"
9354
+ }
9355
+ },
9356
+ {
9357
+ "id": "YBIDWJIvQWW_TFOyU0CGJg",
9358
+ "name": "Discover Card Scanner (4x4 digits)",
9359
+ "key": {
9360
+ "operator": "match_regex",
9361
+ "parameters": {
9362
+ "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
9363
+ "options": {
9364
+ "case_sensitive": false,
9365
+ "min_length": 3
9366
+ }
9367
+ }
9368
+ },
9369
+ "value": {
9370
+ "operator": "match_regex",
9371
+ "parameters": {
9372
+ "regex": "\\b(?:(?:(?:6221(?:2[6-9]|[3-9][0-9])\\d{2}(?:,\\d{4}){2})|(?:6221\\s(?:2[6-9]|[3-9][0-9])\\d{2}(?:\\s\\d{4}){2})|(?:6221\\.(?:2[6-9]|[3-9][0-9])\\d{2}(?:\\.\\d{4}){2})|(?:6221-(?:2[6-9]|[3-9][0-9])\\d{2}(?:-\\d{4}){2}))|(?:(?:6229(?:[01][0-9]|2[0-5])\\d{2}(?:,\\d{4}){2})|(?:6229\\s(?:[01][0-9]|2[0-5])\\d{2}(?:\\s\\d{4}){2})|(?:6229\\.(?:[01][0-9]|2[0-5])\\d{2}(?:\\.\\d{4}){2})|(?:6229-(?:[01][0-9]|2[0-5])\\d{2}(?:-\\d{4}){2}))|(?:(?:6011|65\\d{2}|64[4-9]\\d|622[2-8])(?:(?:\\s\\d{4}){3}|(?:\\.\\d{4}){3}|(?:-\\d{4}){3}|(?:,\\d{4}){3})))\\b",
9373
+ "options": {
9374
+ "case_sensitive": false,
9375
+ "min_length": 16
9376
+ }
9377
+ }
9378
+ },
9379
+ "tags": {
9380
+ "type": "card",
9381
+ "card_type": "discover",
9382
+ "category": "payment"
9383
+ }
9384
+ },
9385
+ {
9386
+ "id": "12cpbjtVTMaMutFhh9sojQ",
9387
+ "name": "Discover Card Scanner (1x16 digits)",
9388
+ "key": {
9389
+ "operator": "match_regex",
9390
+ "parameters": {
9391
+ "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
9392
+ "options": {
9393
+ "case_sensitive": false,
9394
+ "min_length": 3
9395
+ }
9396
+ }
9397
+ },
9398
+ "value": {
9399
+ "operator": "match_regex",
9400
+ "parameters": {
9401
+ "regex": "\\b(?:6221(?:2[6-9]|[3-9][0-9])\\d{10}|6229(?:[01][0-9]|2[0-5])\\d{10}|(?:6011|65\\d{2}|64[4-9]\\d|622[2-8])\\d{12})\\b",
9402
+ "options": {
9403
+ "case_sensitive": false,
9404
+ "min_length": 16
9405
+ }
9406
+ }
9407
+ },
9408
+ "tags": {
9409
+ "type": "card",
9410
+ "card_type": "discover",
9411
+ "category": "payment"
9412
+ }
9413
+ },
9414
+ {
9415
+ "id": "PuXiVTCkTHOtj0Yad1ppsw",
9416
+ "name": "Standard E-mail Address",
9417
+ "key": {
9418
+ "operator": "match_regex",
9419
+ "parameters": {
9420
+ "regex": "\\b(?:(?:e[-\\s]?)?mail|address|sender|\\bto\\b|from|recipient)\\b",
9421
+ "options": {
9422
+ "case_sensitive": false,
9423
+ "min_length": 2
9424
+ }
9425
+ }
9426
+ },
9427
+ "value": {
9428
+ "operator": "match_regex",
9429
+ "parameters": {
9430
+ "regex": "\\b[\\w!#$%&'*+/=?`{|}~^-]+(?:\\.[\\w!#$%&'*+/=?`{|}~^-]+)*(%40|@)(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,6}\\b",
9431
+ "options": {
9432
+ "case_sensitive": false,
9433
+ "min_length": 5
9434
+ }
9435
+ }
9436
+ },
9437
+ "tags": {
9438
+ "type": "email",
9439
+ "category": "pii"
9440
+ }
9441
+ },
9442
+ {
9443
+ "id": "8VS2RKxzR8a_95L5fuwaXQ",
9444
+ "name": "IBAN",
9445
+ "key": {
9446
+ "operator": "match_regex",
9447
+ "parameters": {
9448
+ "regex": "\\b(?:iban|account|sender|receiver)\\b",
9449
+ "options": {
9450
+ "case_sensitive": false,
9451
+ "min_length": 3
9452
+ }
9453
+ }
9454
+ },
9455
+ "value": {
9456
+ "operator": "match_regex",
9457
+ "parameters": {
9458
+ "regex": "\\b(?:NO\\d{2}(?:[ \\-]?\\d{4}){2}[ \\-]?\\d{3}|BE\\d{2}(?:[ \\-]?\\d{4}){3}|(?:DK|FO|FI|GL|SD)\\d{2}(?:[ \\-]?\\d{4}){3}[ \\-]?\\d{2}|NL\\d{2}[ \\-]?[A-Z]{4}(?:[ \\-]?\\d{4}){2}[ \\-]?\\d{2}|MK\\d{2}[ \\-]?\\d{3}[A-Z0-9](?:[ \\-]?[A-Z0-9]{4}){2}[ \\-]?[A-Z0-9]\\d{2}|SI\\d{17}|(?:AT|BA|EE|LT|XK)\\d{18}|(?:LU|KZ|EE|LT)\\d{5}[A-Z0-9]{13}|LV\\d{2}[A-Z]{4}[A-Z0-9]{13}|(?:LI|CH)\\d{2}[ \\-]?\\d{4}[ \\-]?\\d[A-Z0-9]{3}(?:[ \\-]?[A-Z0-9]{4}){2}[ \\-]?[A-Z0-9]|HR\\d{2}(?:[ \\-]?\\d{4}){4}[ \\-]?\\d|GE\\d{2}[ \\-]?[A-Z0-9]{2}\\d{2}\\d{14}|VA\\d{20}|BG\\d{2}[A-Z]{4}\\d{6}[A-Z0-9]{8}|BH\\d{2}[A-Z]{4}[A-Z0-9]{14}|GB\\d{2}[A-Z]{4}(?:[ \\-]?\\d{4}){3}[ \\-]?\\d{2}|IE\\d{2}[ \\-]?[A-Z0-9]{4}(?:[ \\-]?\\d{4}){3}[ \\-]?\\d{2}|(?:CR|DE|ME|RS)\\d{2}(?:[ \\-]?\\d{4}){4}[ \\-]?\\d{2}|(?:AE|TL|IL)\\d{2}(?:[ \\-]?\\d{4}){4}[ \\-]?\\d{3}|GI\\d{2}[ \\-]?[A-Z]{4}(?:[ \\-]?[A-Z0-9]{4}){3}[ \\-]?[A-Z0-9]{3}|IQ\\d{2}[ \\-]?[A-Z]{4}(?:[ \\-]?\\d{4}){3}[ \\-]?\\d{3}|MD\\d{2}(?:[ \\-]?[A-Z0-9]{4}){5}|SA\\d{2}[ \\-]?\\d{2}[A-Z0-9]{2}(?:[ \\-]?[A-Z0-9]{4}){4}|RO\\d{2}[ \\-]?[A-Z]{4}(?:[ \\-]?[A-Z0-9]{4}){4}|(?:PK|VG)\\d{2}[ \\-]?[A-Z0-9]{4}(?:[ \\-]?\\d{4}){4}|AD\\d{2}(?:[ \\-]?\\d{4}){2}(?:[ \\-]?[A-Z0-9]{4}){3}|(?:CZ|SK|ES|SE|TN)\\d{2}(?:[ \\-]?\\d{4}){5}|(?:LY|PT|ST)\\d{2}(?:[ \\-]?\\d{4}){5}[ \\-]?\\d|TR\\d{2}[ \\-]?\\d{4}[ \\-]?\\d[A-Z0-9]{3}(?:[ \\-]?[A-Z0-9]{4}){3}[ \\-]?[A-Z0-9]{2}|IS\\d{2}(?:[ \\-]?\\d{4}){5}[ \\-]?\\d{2}|(?:IT|SM)\\d{2}[ \\-]?[A-Z]\\d{3}[ \\-]?\\d{4}[ \\-]?\\d{3}[A-Z0-9](?:[ \\-]?[A-Z0-9]{4}){2}[ \\-]?[A-Z0-9]{3}|GR\\d{2}[ \\-]?\\d{4}[ \\-]?\\d{3}[A-Z0-9](?:[ \\-]?[A-Z0-9]{4}){3}[A-Z0-9]{3}|(?:FR|MC)\\d{2}(?:[ \\-]?\\d{4}){2}[ \\-]?\\d{2}[A-Z0-9]{2}(?:[ \\-]?[A-Z0-9]{4}){2}[ \\-]?[A-Z0-9]\\d{2}|MR\\d{2}(?:[ \\-]?\\d{4}){5}[ \\-]?\\d{3}|(?:SV|DO)\\d{2}[ \\-]?[A-Z]{4}(?:[ \\-]?\\d{4}){5}|BY\\d{2}[ \\-]?[A-Z]{4}[ \\-]?\\d{4}(?:[ \\-]?[A-Z0-9]{4}){4}|GT\\d{2}(?:[ \\-]?[A-Z0-9]{4}){6}|AZ\\d{2}[ \\-]?[A-Z0-9]{4}(?:[ \\-]?\\d{5}){4}|LB\\d{2}[ \\-]?\\d{4}(?:[ \\-]?[A-Z0-9]{5}){4}|(?:AL|CY)\\d{2}(?:[ \\-]?\\d{4}){2}(?:[ \\-]?[A-Z0-9]{4}){4}|(?:HU|PL)\\d{2}(?:[ \\-]?\\d{4}){6}|QA\\d{2}[ \\-]?[A-Z]{4}(?:[ \\-]?[A-Z0-9]{4}){5}[ \\-]?[A-Z0-9]|PS\\d{2}[ \\-]?[A-Z0-9]{4}(?:[ \\-]?\\d{4}){5}[ \\-]?\\d|UA\\d{2}[ \\-]?\\d{4}[ \\-]?\\d{2}[A-Z0-9]{2}(?:[ \\-]?[A-Z0-9]{4}){4}[ \\-]?[A-Z0-9]|BR\\d{2}(?:[ \\-]?\\d{4}){5}[ \\-]?\\d{3}[A-Z0-9][ \\-]?[A-Z0-9]|EG\\d{2}(?:[ \\-]?\\d{4}){6}\\d|MU\\d{2}[ \\-]?[A-Z]{4}(?:[ \\-]?\\d{4}){4}\\d{3}[A-Z][ \\-]?[A-Z]{2}|(?:KW|JO)\\d{2}[ \\-]?[A-Z]{4}(?:[ \\-]?[A-Z0-9]{4}){5}[ \\-]?[A-Z0-9]{2}|MT\\d{2}[ \\-]?[A-Z]{4}[ \\-]?\\d{4}[ \\-]?\\d[A-Z0-9]{3}(?:[ \\-]?[A-Z0-9]{3}){4}[ \\-]?[A-Z0-9]{3}|SC\\d{2}[ \\-]?[A-Z]{4}(?:[ \\-]?\\d{4}){5}[ \\-]?[A-Z]{3}|LC\\d{2}[ \\-]?[A-Z]{4}(?:[ \\-]?[A-Z0-9]{4}){6})\\b",
9459
+ "options": {
9460
+ "case_sensitive": false,
9461
+ "min_length": 15
9462
+ }
9463
+ }
9464
+ },
9465
+ "tags": {
9466
+ "type": "iban",
9467
+ "category": "payment"
9468
+ }
9469
+ },
9470
+ {
9471
+ "id": "h6WJcecQTwqvN9KeEtwDvg",
9472
+ "name": "JCB Card Scanner (1x16 digits)",
9473
+ "key": {
9474
+ "operator": "match_regex",
9475
+ "parameters": {
9476
+ "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
9477
+ "options": {
9478
+ "case_sensitive": false,
9479
+ "min_length": 3
9480
+ }
9481
+ }
9482
+ },
9483
+ "value": {
9484
+ "operator": "match_regex",
9485
+ "parameters": {
9486
+ "regex": "\\b35(?:2[89]|[3-9][0-9])(?:\\d{12})\\b",
9487
+ "options": {
9488
+ "case_sensitive": false,
9489
+ "min_length": 16
9490
+ }
9491
+ }
9492
+ },
9493
+ "tags": {
9494
+ "type": "card",
9495
+ "card_type": "jcb",
9496
+ "category": "payment"
9497
+ }
9498
+ },
9499
+ {
9500
+ "id": "gcEaMu_VSJ2-bGCEkgyC0w",
9501
+ "name": "JCB Card Scanner (2x8 digits)",
9502
+ "key": {
9503
+ "operator": "match_regex",
9504
+ "parameters": {
9505
+ "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
9506
+ "options": {
9507
+ "case_sensitive": false,
9508
+ "min_length": 3
9509
+ }
9510
+ }
9511
+ },
9512
+ "value": {
9513
+ "operator": "match_regex",
9514
+ "parameters": {
9515
+ "regex": "\\b35(?:2[89]|[3-9][0-9])\\d{4}(?:(?:,\\d{8})|(?:-\\d{8})|(?:\\s\\d{8})|(?:\\.\\d{8}))\\b",
9516
+ "options": {
9517
+ "case_sensitive": false,
9518
+ "min_length": 17
9519
+ }
9520
+ }
9521
+ },
9522
+ "tags": {
9523
+ "type": "card",
9524
+ "card_type": "jcb",
9525
+ "category": "payment"
9526
+ }
9527
+ },
9528
+ {
9529
+ "id": "imTliuhXT5GAeRNhqChXQQ",
9530
+ "name": "JCB Card Scanner (4x4 digits)",
9531
+ "key": {
9532
+ "operator": "match_regex",
9533
+ "parameters": {
9534
+ "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
9535
+ "options": {
9536
+ "case_sensitive": false,
9537
+ "min_length": 3
9538
+ }
9539
+ }
9540
+ },
9541
+ "value": {
9542
+ "operator": "match_regex",
9543
+ "parameters": {
9544
+ "regex": "\\b35(?:2[89]|[3-9][0-9])(?:(?:\\s\\d{4}){3}|(?:\\.\\d{4}){3}|(?:-\\d{4}){3}|(?:,\\d{4}){3})\\b",
9545
+ "options": {
9546
+ "case_sensitive": false,
9547
+ "min_length": 16
9548
+ }
9549
+ }
9550
+ },
9551
+ "tags": {
9552
+ "type": "card",
9553
+ "card_type": "jcb",
9554
+ "category": "payment"
9555
+ }
9556
+ },
9557
+ {
9558
+ "id": "9osY3xc9Q7ONAV0zw9Uz4A",
9559
+ "name": "JSON Web Token",
9560
+ "value": {
9561
+ "operator": "match_regex",
9562
+ "parameters": {
9563
+ "regex": "\\bey[I-L][\\w=-]+\\.ey[I-L][\\w=-]+(\\.[\\w.+\\/=-]+)?\\b",
9564
+ "options": {
9565
+ "case_sensitive": false,
9566
+ "min_length": 20
9567
+ }
9568
+ }
9569
+ },
9570
+ "tags": {
9571
+ "type": "json_web_token",
9572
+ "category": "credentials"
9573
+ }
9574
+ },
9575
+ {
9576
+ "id": "d1Q9D3YMRxuVKf6CZInJPw",
9577
+ "name": "Maestro Card Scanner (1x16 digits)",
9578
+ "key": {
9579
+ "operator": "match_regex",
9580
+ "parameters": {
9581
+ "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
9582
+ "options": {
9583
+ "case_sensitive": false,
9584
+ "min_length": 3
9585
+ }
9586
+ }
9587
+ },
9588
+ "value": {
9589
+ "operator": "match_regex",
9590
+ "parameters": {
9591
+ "regex": "\\b(?:5[06-9]\\d{2}|6\\d{3})(?:\\d{12})\\b",
9592
+ "options": {
9593
+ "case_sensitive": false,
9594
+ "min_length": 16
9595
+ }
9596
+ }
9597
+ },
9598
+ "tags": {
9599
+ "type": "card",
9600
+ "card_type": "maestro",
9601
+ "category": "payment"
9602
+ }
9603
+ },
9604
+ {
9605
+ "id": "M3YIQKKjRVmoeQuM3pjzrw",
9606
+ "name": "Maestro Card Scanner (2x8 digits)",
9607
+ "key": {
9608
+ "operator": "match_regex",
9609
+ "parameters": {
9610
+ "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
9611
+ "options": {
9612
+ "case_sensitive": false,
9613
+ "min_length": 3
9614
+ }
9615
+ }
9616
+ },
9617
+ "value": {
9618
+ "operator": "match_regex",
9619
+ "parameters": {
9620
+ "regex": "\\b(?:5[06-9]\\d{6}|6\\d{7})(?:\\s\\d{8}|\\.\\d{8}|-\\d{8}|,\\d{8})\\b",
9621
+ "options": {
9622
+ "case_sensitive": false,
9623
+ "min_length": 17
9624
+ }
9625
+ }
9626
+ },
9627
+ "tags": {
9628
+ "type": "card",
9629
+ "card_type": "maestro",
9630
+ "category": "payment"
9631
+ }
9632
+ },
9633
+ {
9634
+ "id": "hRxiQBlSSVKcjh5U7LZYLA",
9635
+ "name": "Maestro Card Scanner (4x4 digits)",
9636
+ "key": {
9637
+ "operator": "match_regex",
9638
+ "parameters": {
9639
+ "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
9640
+ "options": {
9641
+ "case_sensitive": false,
9642
+ "min_length": 3
9643
+ }
9644
+ }
9645
+ },
9646
+ "value": {
9647
+ "operator": "match_regex",
9648
+ "parameters": {
9649
+ "regex": "\\b(?:5[06-9]\\d{2}|6\\d{3})(?:(?:\\s\\d{4}){3}|(?:\\.\\d{4}){3}|(?:-\\d{4}){3}|(?:,\\d{4}){3})\\b",
9650
+ "options": {
9651
+ "case_sensitive": false,
9652
+ "min_length": 16
9653
+ }
9654
+ }
9655
+ },
9656
+ "tags": {
9657
+ "type": "card",
9658
+ "card_type": "maestro",
9659
+ "category": "payment"
9660
+ }
9661
+ },
9662
+ {
9663
+ "id": "NwhIYNS4STqZys37WlaIKA",
9664
+ "name": "MasterCard Scanner (2x8 digits)",
9665
+ "key": {
9666
+ "operator": "match_regex",
9667
+ "parameters": {
9668
+ "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
9669
+ "options": {
9670
+ "case_sensitive": false,
9671
+ "min_length": 3
9672
+ }
9673
+ }
9674
+ },
9675
+ "value": {
9676
+ "operator": "match_regex",
9677
+ "parameters": {
9678
+ "regex": "\\b(?:(?:5[1-5]\\d{2})|(?:222[1-9])|(?:22[3-9]\\d)|(?:2[3-6]\\d{2})|(?:27[0-1]\\d)|(?:2720))(?:(?:\\d{4}(?:(?:,\\d{8})|(?:-\\d{8})|(?:\\s\\d{8})|(?:\\.\\d{8}))))\\b",
9679
+ "options": {
9680
+ "case_sensitive": false,
9681
+ "min_length": 16
9682
+ }
9683
+ }
9684
+ },
9685
+ "tags": {
9686
+ "type": "card",
9687
+ "card_type": "mastercard",
9688
+ "category": "payment"
9689
+ }
9690
+ },
9691
+ {
9692
+ "id": "axxJkyjhRTOuhjwlsA35Vw",
9693
+ "name": "MasterCard Scanner (4x4 digits)",
9694
+ "key": {
9695
+ "operator": "match_regex",
9696
+ "parameters": {
9697
+ "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
9698
+ "options": {
9699
+ "case_sensitive": false,
9700
+ "min_length": 3
9701
+ }
9702
+ }
9703
+ },
9704
+ "value": {
9705
+ "operator": "match_regex",
9706
+ "parameters": {
9707
+ "regex": "\\b(?:(?:5[1-5]\\d{2})|(?:222[1-9])|(?:22[3-9]\\d)|(?:2[3-6]\\d{2})|(?:27[0-1]\\d)|(?:2720))(?:(?:\\s\\d{4}){3}|(?:\\.\\d{4}){3}|(?:-\\d{4}){3}|(?:,\\d{4}){3})\\b",
9708
+ "options": {
9709
+ "case_sensitive": false,
9710
+ "min_length": 16
9711
+ }
9712
+ }
9713
+ },
9714
+ "tags": {
9715
+ "type": "card",
9716
+ "card_type": "mastercard",
9717
+ "category": "payment"
9718
+ }
9719
+ },
9720
+ {
9721
+ "id": "76EhmoK3TPqJcpM-fK0pLw",
9722
+ "name": "MasterCard Scanner (1x16 digits)",
9723
+ "key": {
9724
+ "operator": "match_regex",
9725
+ "parameters": {
9726
+ "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
9727
+ "options": {
9728
+ "case_sensitive": false,
9729
+ "min_length": 3
9730
+ }
9731
+ }
9732
+ },
9733
+ "value": {
9734
+ "operator": "match_regex",
9735
+ "parameters": {
9736
+ "regex": "\\b(?:(?:5[1-5]\\d{2})|(?:222[1-9])|(?:22[3-9]\\d)|(?:2[3-6]\\d{2})|(?:27[0-1]\\d)|(?:2720))(?:\\d{12})\\b",
9737
+ "options": {
9738
+ "case_sensitive": false,
9739
+ "min_length": 16
9740
+ }
9741
+ }
9742
+ },
9743
+ "tags": {
9744
+ "type": "card",
9745
+ "card_type": "mastercard",
9746
+ "category": "payment"
9747
+ }
9748
+ },
9749
+ {
9750
+ "id": "18b608bd7a764bff5b2344c0",
9751
+ "name": "Phone number",
9752
+ "key": {
9753
+ "operator": "match_regex",
9754
+ "parameters": {
9755
+ "regex": "\\bphone|number|mobile\\b",
9756
+ "options": {
9757
+ "case_sensitive": false,
9758
+ "min_length": 3
9759
+ }
9760
+ }
9761
+ },
9762
+ "value": {
9763
+ "operator": "match_regex",
9764
+ "parameters": {
9765
+ "regex": "^(?:\\(\\+\\d{1,3}\\)|\\+\\d{1,3}|00\\d{1,3})?[-\\s\\.]?(?:\\(\\d{3}\\)[-\\s\\.]?)?(?:\\d[-\\s\\.]?){6,10}$",
9766
+ "options": {
9767
+ "case_sensitive": false,
9768
+ "min_length": 6
9769
+ }
9770
+ }
9771
+ },
9772
+ "tags": {
9773
+ "type": "phone",
9774
+ "category": "pii"
9775
+ }
9776
+ },
9777
+ {
9778
+ "id": "de0899e0cbaaa812bb624cf04c912071012f616d-mod",
9779
+ "name": "UK National Insurance Number Scanner",
9780
+ "key": {
9781
+ "operator": "match_regex",
9782
+ "parameters": {
9783
+ "regex": "^nin$|\\binsurance\\b",
9784
+ "options": {
9785
+ "case_sensitive": false,
9786
+ "min_length": 3
9787
+ }
9788
+ }
9789
+ },
9790
+ "value": {
9791
+ "operator": "match_regex",
9792
+ "parameters": {
9793
+ "regex": "\\b[A-Z]{2}[\\s-]?\\d{6}[\\s-]?[A-Z]?\\b",
9794
+ "options": {
9795
+ "case_sensitive": false,
9796
+ "min_length": 8
9797
+ }
9798
+ }
9799
+ },
9800
+ "tags": {
9801
+ "type": "uk_nin",
9802
+ "category": "pii"
9803
+ }
9804
+ },
9805
+ {
9806
+ "id": "d962f7ddb3f55041e39195a60ff79d4814a7c331",
9807
+ "name": "US Passport Scanner",
9808
+ "key": {
9809
+ "operator": "match_regex",
9810
+ "parameters": {
9811
+ "regex": "\\bpassport\\b",
9812
+ "options": {
9813
+ "case_sensitive": false,
9814
+ "min_length": 8
9815
+ }
9816
+ }
9817
+ },
9818
+ "value": {
9819
+ "operator": "match_regex",
9820
+ "parameters": {
9821
+ "regex": "\\b[0-9A-Z]{9}\\b|\\b[0-9]{6}[A-Z][0-9]{2}\\b",
9822
+ "options": {
9823
+ "case_sensitive": false,
9824
+ "min_length": 8
9825
+ }
9826
+ }
9827
+ },
9828
+ "tags": {
9829
+ "type": "passport_number",
9830
+ "category": "pii"
9831
+ }
9832
+ },
9833
+ {
9834
+ "id": "7771fc3b-b205-4b93-bcef-28608c5c1b54",
9835
+ "name": "United States Social Security Number Scanner",
9836
+ "key": {
9837
+ "operator": "match_regex",
9838
+ "parameters": {
9839
+ "regex": "\\b(?:SSN|(?:(?:social)?[\\s_]?(?:security)?[\\s_]?(?:number)?)?)\\b",
9840
+ "options": {
9841
+ "case_sensitive": false,
9842
+ "min_length": 3
9843
+ }
9844
+ }
9845
+ },
9846
+ "value": {
9847
+ "operator": "match_regex",
9848
+ "parameters": {
9849
+ "regex": "\\b\\d{3}[-\\s\\.]{1}\\d{2}[-\\s\\.]{1}\\d{4}\\b",
9850
+ "options": {
9851
+ "case_sensitive": false,
9852
+ "min_length": 11
9853
+ }
9854
+ }
9855
+ },
9856
+ "tags": {
9857
+ "type": "us_ssn",
9858
+ "category": "pii"
9859
+ }
9860
+ },
9861
+ {
9862
+ "id": "ac6d683cbac77f6e399a14990793dd8fd0fca333",
9863
+ "name": "US Vehicle Identification Number Scanner",
9864
+ "key": {
9865
+ "operator": "match_regex",
9866
+ "parameters": {
9867
+ "regex": "\\b(?:vehicle[_\\s-]*identification[_\\s-]*number|vin)\\b",
9868
+ "options": {
9869
+ "case_sensitive": false,
9870
+ "min_length": 3
9871
+ }
9872
+ }
9873
+ },
9874
+ "value": {
9875
+ "operator": "match_regex",
9876
+ "parameters": {
9877
+ "regex": "\\b[A-HJ-NPR-Z0-9]{17}\\b",
9878
+ "options": {
9879
+ "case_sensitive": false,
9880
+ "min_length": 17
9881
+ }
9882
+ }
9883
+ },
9884
+ "tags": {
9885
+ "type": "vin",
9886
+ "category": "pii"
9887
+ }
9888
+ },
9889
+ {
9890
+ "id": "wJIgOygRQhKkR69b_9XbRQ",
9891
+ "name": "Visa Card Scanner (2x8 digits)",
9892
+ "key": {
9893
+ "operator": "match_regex",
9894
+ "parameters": {
9895
+ "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
9896
+ "options": {
9897
+ "case_sensitive": false,
9898
+ "min_length": 3
9899
+ }
9900
+ }
9901
+ },
9902
+ "value": {
9903
+ "operator": "match_regex",
9904
+ "parameters": {
9905
+ "regex": "\\b4\\d{3}(?:(?:\\d{4}(?:(?:,\\d{8})|(?:-\\d{8})|(?:\\s\\d{8})|(?:\\.\\d{8}))))\\b",
9906
+ "options": {
9907
+ "case_sensitive": false,
9908
+ "min_length": 16
9909
+ }
9910
+ }
9911
+ },
9912
+ "tags": {
9913
+ "type": "card",
9914
+ "card_type": "visa",
9915
+ "category": "payment"
9916
+ }
9917
+ },
9918
+ {
9919
+ "id": "0o71SJxXQNK7Q6gMbBesFQ",
9920
+ "name": "Visa Card Scanner (4x4 digits)",
9921
+ "key": {
9922
+ "operator": "match_regex",
9923
+ "parameters": {
9924
+ "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
9925
+ "options": {
9926
+ "case_sensitive": false,
9927
+ "min_length": 3
9928
+ }
9929
+ }
9930
+ },
9931
+ "value": {
9932
+ "operator": "match_regex",
9933
+ "parameters": {
9934
+ "regex": "\\b4\\d{3}(?:(?:,\\d{4}){3}|(?:\\s\\d{4}){3}|(?:\\.\\d{4}){3}|(?:-\\d{4}){3})\\b",
9935
+ "options": {
9936
+ "case_sensitive": false,
9937
+ "min_length": 16
9938
+ }
9939
+ }
9940
+ },
9941
+ "tags": {
9942
+ "type": "card",
9943
+ "card_type": "visa",
9944
+ "category": "payment"
9945
+ }
9946
+ },
9947
+ {
9948
+ "id": "QrHD6AfgQm6z-j0wStxTvA",
9949
+ "name": "Visa Card Scanner (1x15 & 1x16 & 1x19 digits)",
9950
+ "key": {
9951
+ "operator": "match_regex",
9952
+ "parameters": {
9953
+ "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
9954
+ "options": {
9955
+ "case_sensitive": false,
9956
+ "min_length": 3
9957
+ }
9958
+ }
9959
+ },
9960
+ "value": {
9961
+ "operator": "match_regex",
9962
+ "parameters": {
9963
+ "regex": "4[0-9]{12}(?:[0-9]{3})?",
9964
+ "options": {
9965
+ "case_sensitive": false,
9966
+ "min_length": 13
9967
+ }
9968
+ }
9969
+ },
9970
+ "tags": {
9971
+ "type": "card",
9972
+ "card_type": "visa",
9973
+ "category": "payment"
9974
+ }
9975
+ }
8632
9976
  ]
8633
9977
  }