datadog 2.14.0 → 2.15.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 (44) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +24 -2
  3. data/ext/datadog_profiling_native_extension/collectors_thread_context.c +7 -6
  4. data/ext/datadog_profiling_native_extension/datadog_ruby_common.h +3 -0
  5. data/ext/datadog_profiling_native_extension/encoded_profile.c +69 -0
  6. data/ext/datadog_profiling_native_extension/encoded_profile.h +7 -0
  7. data/ext/datadog_profiling_native_extension/http_transport.c +25 -32
  8. data/ext/datadog_profiling_native_extension/profiling.c +2 -0
  9. data/ext/datadog_profiling_native_extension/stack_recorder.c +22 -21
  10. data/ext/libdatadog_api/datadog_ruby_common.h +3 -0
  11. data/lib/datadog/appsec/assets/waf_rules/README.md +50 -5
  12. data/lib/datadog/appsec/assets/waf_rules/processors.json +239 -10
  13. data/lib/datadog/appsec/assets/waf_rules/recommended.json +0 -1344
  14. data/lib/datadog/appsec/assets/waf_rules/scanners.json +926 -17
  15. data/lib/datadog/appsec/assets/waf_rules/strict.json +0 -1344
  16. data/lib/datadog/appsec/component.rb +19 -17
  17. data/lib/datadog/appsec/compressed_json.rb +40 -0
  18. data/lib/datadog/appsec/contrib/active_record/integration.rb +1 -1
  19. data/lib/datadog/appsec/event.rb +21 -50
  20. data/lib/datadog/appsec/remote.rb +4 -0
  21. data/lib/datadog/core/diagnostics/environment_logger.rb +1 -1
  22. data/lib/datadog/core/telemetry/metric.rb +5 -5
  23. data/lib/datadog/core/telemetry/request.rb +1 -1
  24. data/lib/datadog/di/probe_notification_builder.rb +1 -1
  25. data/lib/datadog/di/transport/http/diagnostics.rb +0 -1
  26. data/lib/datadog/di/transport/http/input.rb +0 -1
  27. data/lib/datadog/di/transport/http.rb +0 -6
  28. data/lib/datadog/profiling/collectors/info.rb +3 -0
  29. data/lib/datadog/profiling/encoded_profile.rb +11 -0
  30. data/lib/datadog/profiling/exporter.rb +2 -3
  31. data/lib/datadog/profiling/ext.rb +0 -1
  32. data/lib/datadog/profiling/flush.rb +4 -7
  33. data/lib/datadog/profiling/http_transport.rb +10 -59
  34. data/lib/datadog/profiling/stack_recorder.rb +4 -4
  35. data/lib/datadog/profiling.rb +1 -0
  36. data/lib/datadog/tracing/contrib/active_record/integration.rb +1 -1
  37. data/lib/datadog/tracing/contrib/opensearch/configuration/settings.rb +17 -0
  38. data/lib/datadog/tracing/contrib/opensearch/ext.rb +9 -0
  39. data/lib/datadog/tracing/contrib/opensearch/patcher.rb +5 -1
  40. data/lib/datadog/tracing/contrib/rack/request_queue.rb +1 -1
  41. data/lib/datadog/tracing/contrib/sidekiq/server_tracer.rb +1 -1
  42. data/lib/datadog/tracing/span_event.rb +1 -1
  43. data/lib/datadog/version.rb +1 -1
  44. metadata +10 -6
@@ -1745,1349 +1745,5 @@
1745
1745
  ],
1746
1746
  "transformers": []
1747
1747
  }
1748
- ],
1749
- "processors": [
1750
- {
1751
- "id": "http-endpoint-fingerprint",
1752
- "generator": "http_endpoint_fingerprint",
1753
- "conditions": [
1754
- {
1755
- "operator": "exists",
1756
- "parameters": {
1757
- "inputs": [
1758
- {
1759
- "address": "waf.context.event"
1760
- },
1761
- {
1762
- "address": "server.business_logic.users.login.failure"
1763
- },
1764
- {
1765
- "address": "server.business_logic.users.login.success"
1766
- }
1767
- ]
1768
- }
1769
- }
1770
- ],
1771
- "parameters": {
1772
- "mappings": [
1773
- {
1774
- "method": [
1775
- {
1776
- "address": "server.request.method"
1777
- }
1778
- ],
1779
- "uri_raw": [
1780
- {
1781
- "address": "server.request.uri.raw"
1782
- }
1783
- ],
1784
- "body": [
1785
- {
1786
- "address": "server.request.body"
1787
- }
1788
- ],
1789
- "query": [
1790
- {
1791
- "address": "server.request.query"
1792
- }
1793
- ],
1794
- "output": "_dd.appsec.fp.http.endpoint"
1795
- }
1796
- ]
1797
- },
1798
- "evaluate": false,
1799
- "output": true
1800
- },
1801
- {
1802
- "id": "extract-content",
1803
- "generator": "extract_schema",
1804
- "conditions": [
1805
- {
1806
- "operator": "equals",
1807
- "parameters": {
1808
- "inputs": [
1809
- {
1810
- "address": "waf.context.processor",
1811
- "key_path": [
1812
- "extract-schema"
1813
- ]
1814
- }
1815
- ],
1816
- "type": "boolean",
1817
- "value": true
1818
- }
1819
- }
1820
- ],
1821
- "parameters": {
1822
- "mappings": [
1823
- {
1824
- "inputs": [
1825
- {
1826
- "address": "server.request.body"
1827
- }
1828
- ],
1829
- "output": "_dd.appsec.s.req.body"
1830
- },
1831
- {
1832
- "inputs": [
1833
- {
1834
- "address": "server.request.cookies"
1835
- }
1836
- ],
1837
- "output": "_dd.appsec.s.req.cookies"
1838
- },
1839
- {
1840
- "inputs": [
1841
- {
1842
- "address": "server.request.query"
1843
- }
1844
- ],
1845
- "output": "_dd.appsec.s.req.query"
1846
- },
1847
- {
1848
- "inputs": [
1849
- {
1850
- "address": "server.request.path_params"
1851
- }
1852
- ],
1853
- "output": "_dd.appsec.s.req.params"
1854
- },
1855
- {
1856
- "inputs": [
1857
- {
1858
- "address": "server.response.body"
1859
- }
1860
- ],
1861
- "output": "_dd.appsec.s.res.body"
1862
- },
1863
- {
1864
- "inputs": [
1865
- {
1866
- "address": "graphql.server.all_resolvers"
1867
- }
1868
- ],
1869
- "output": "_dd.appsec.s.graphql.all_resolvers"
1870
- },
1871
- {
1872
- "inputs": [
1873
- {
1874
- "address": "graphql.server.resolver"
1875
- }
1876
- ],
1877
- "output": "_dd.appsec.s.graphql.resolver"
1878
- }
1879
- ],
1880
- "scanners": [
1881
- {
1882
- "tags": {
1883
- "category": "payment"
1884
- }
1885
- },
1886
- {
1887
- "tags": {
1888
- "category": "pii"
1889
- }
1890
- }
1891
- ]
1892
- },
1893
- "evaluate": false,
1894
- "output": true
1895
- },
1896
- {
1897
- "id": "extract-headers",
1898
- "generator": "extract_schema",
1899
- "conditions": [
1900
- {
1901
- "operator": "equals",
1902
- "parameters": {
1903
- "inputs": [
1904
- {
1905
- "address": "waf.context.processor",
1906
- "key_path": [
1907
- "extract-schema"
1908
- ]
1909
- }
1910
- ],
1911
- "type": "boolean",
1912
- "value": true
1913
- }
1914
- }
1915
- ],
1916
- "parameters": {
1917
- "mappings": [
1918
- {
1919
- "inputs": [
1920
- {
1921
- "address": "server.request.headers.no_cookies"
1922
- }
1923
- ],
1924
- "output": "_dd.appsec.s.req.headers"
1925
- },
1926
- {
1927
- "inputs": [
1928
- {
1929
- "address": "server.response.headers.no_cookies"
1930
- }
1931
- ],
1932
- "output": "_dd.appsec.s.res.headers"
1933
- }
1934
- ],
1935
- "scanners": [
1936
- {
1937
- "tags": {
1938
- "category": "credentials"
1939
- }
1940
- },
1941
- {
1942
- "tags": {
1943
- "category": "pii"
1944
- }
1945
- }
1946
- ]
1947
- },
1948
- "evaluate": false,
1949
- "output": true
1950
- },
1951
- {
1952
- "id": "http-header-fingerprint",
1953
- "generator": "http_header_fingerprint",
1954
- "conditions": [
1955
- {
1956
- "operator": "exists",
1957
- "parameters": {
1958
- "inputs": [
1959
- {
1960
- "address": "waf.context.event"
1961
- },
1962
- {
1963
- "address": "server.business_logic.users.login.failure"
1964
- },
1965
- {
1966
- "address": "server.business_logic.users.login.success"
1967
- }
1968
- ]
1969
- }
1970
- }
1971
- ],
1972
- "parameters": {
1973
- "mappings": [
1974
- {
1975
- "headers": [
1976
- {
1977
- "address": "server.request.headers.no_cookies"
1978
- }
1979
- ],
1980
- "output": "_dd.appsec.fp.http.header"
1981
- }
1982
- ]
1983
- },
1984
- "evaluate": false,
1985
- "output": true
1986
- },
1987
- {
1988
- "id": "http-network-fingerprint",
1989
- "generator": "http_network_fingerprint",
1990
- "conditions": [
1991
- {
1992
- "operator": "exists",
1993
- "parameters": {
1994
- "inputs": [
1995
- {
1996
- "address": "waf.context.event"
1997
- },
1998
- {
1999
- "address": "server.business_logic.users.login.failure"
2000
- },
2001
- {
2002
- "address": "server.business_logic.users.login.success"
2003
- }
2004
- ]
2005
- }
2006
- }
2007
- ],
2008
- "parameters": {
2009
- "mappings": [
2010
- {
2011
- "headers": [
2012
- {
2013
- "address": "server.request.headers.no_cookies"
2014
- }
2015
- ],
2016
- "output": "_dd.appsec.fp.http.network"
2017
- }
2018
- ]
2019
- },
2020
- "evaluate": false,
2021
- "output": true
2022
- },
2023
- {
2024
- "id": "session-fingerprint",
2025
- "generator": "session_fingerprint",
2026
- "conditions": [
2027
- {
2028
- "operator": "exists",
2029
- "parameters": {
2030
- "inputs": [
2031
- {
2032
- "address": "waf.context.event"
2033
- },
2034
- {
2035
- "address": "server.business_logic.users.login.failure"
2036
- },
2037
- {
2038
- "address": "server.business_logic.users.login.success"
2039
- }
2040
- ]
2041
- }
2042
- }
2043
- ],
2044
- "parameters": {
2045
- "mappings": [
2046
- {
2047
- "cookies": [
2048
- {
2049
- "address": "server.request.cookies"
2050
- }
2051
- ],
2052
- "session_id": [
2053
- {
2054
- "address": "usr.session_id"
2055
- }
2056
- ],
2057
- "user_id": [
2058
- {
2059
- "address": "usr.id"
2060
- }
2061
- ],
2062
- "output": "_dd.appsec.fp.session"
2063
- }
2064
- ]
2065
- },
2066
- "evaluate": false,
2067
- "output": true
2068
- }
2069
- ],
2070
- "scanners": [
2071
- {
2072
- "id": "406f8606-52c4-4663-8db9-df70f9e8766c",
2073
- "name": "ZIP Code",
2074
- "key": {
2075
- "operator": "match_regex",
2076
- "parameters": {
2077
- "regex": "\\b(?:zip|postal)\\b",
2078
- "options": {
2079
- "case_sensitive": false,
2080
- "min_length": 3
2081
- }
2082
- }
2083
- },
2084
- "value": {
2085
- "operator": "match_regex",
2086
- "parameters": {
2087
- "regex": "^[0-9]{5}(?:-[0-9]{4})?$",
2088
- "options": {
2089
- "case_sensitive": true,
2090
- "min_length": 5
2091
- }
2092
- }
2093
- },
2094
- "tags": {
2095
- "type": "zipcode",
2096
- "category": "address"
2097
- }
2098
- },
2099
- {
2100
- "id": "JU1sRk3mSzqSUJn6GrVn7g",
2101
- "name": "American Express Card Scanner (4+4+4+3 digits)",
2102
- "key": {
2103
- "operator": "match_regex",
2104
- "parameters": {
2105
- "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
2106
- "options": {
2107
- "case_sensitive": false,
2108
- "min_length": 3
2109
- }
2110
- }
2111
- },
2112
- "value": {
2113
- "operator": "match_regex",
2114
- "parameters": {
2115
- "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",
2116
- "options": {
2117
- "case_sensitive": false,
2118
- "min_length": 16
2119
- }
2120
- }
2121
- },
2122
- "tags": {
2123
- "type": "card",
2124
- "card_type": "amex",
2125
- "category": "payment"
2126
- }
2127
- },
2128
- {
2129
- "id": "edmH513UTQWcRiQ9UnzHlw-mod",
2130
- "name": "American Express Card Scanner (4+6|5+5|6 digits)",
2131
- "key": {
2132
- "operator": "match_regex",
2133
- "parameters": {
2134
- "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
2135
- "options": {
2136
- "case_sensitive": false,
2137
- "min_length": 3
2138
- }
2139
- }
2140
- },
2141
- "value": {
2142
- "operator": "match_regex",
2143
- "parameters": {
2144
- "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",
2145
- "options": {
2146
- "case_sensitive": false,
2147
- "min_length": 17
2148
- }
2149
- }
2150
- },
2151
- "tags": {
2152
- "type": "card",
2153
- "card_type": "amex",
2154
- "category": "payment"
2155
- }
2156
- },
2157
- {
2158
- "id": "e6K4h_7qTLaMiAbaNXoSZA",
2159
- "name": "American Express Card Scanner (8+7 digits)",
2160
- "key": {
2161
- "operator": "match_regex",
2162
- "parameters": {
2163
- "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
2164
- "options": {
2165
- "case_sensitive": false,
2166
- "min_length": 3
2167
- }
2168
- }
2169
- },
2170
- "value": {
2171
- "operator": "match_regex",
2172
- "parameters": {
2173
- "regex": "\\b3[47]\\d{6}(?:(?:\\s\\d{7})|(?:\\,\\d{7})|(?:-\\d{7})|(?:\\.\\d{7}))\\b",
2174
- "options": {
2175
- "case_sensitive": false,
2176
- "min_length": 16
2177
- }
2178
- }
2179
- },
2180
- "tags": {
2181
- "type": "card",
2182
- "card_type": "amex",
2183
- "category": "payment"
2184
- }
2185
- },
2186
- {
2187
- "id": "K2rZflWzRhGM9HiTc6whyQ",
2188
- "name": "American Express Card Scanner (1x15 digits)",
2189
- "key": {
2190
- "operator": "match_regex",
2191
- "parameters": {
2192
- "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
2193
- "options": {
2194
- "case_sensitive": false,
2195
- "min_length": 3
2196
- }
2197
- }
2198
- },
2199
- "value": {
2200
- "operator": "match_regex",
2201
- "parameters": {
2202
- "regex": "\\b3[47]\\d{13}\\b",
2203
- "options": {
2204
- "case_sensitive": false,
2205
- "min_length": 15
2206
- }
2207
- }
2208
- },
2209
- "tags": {
2210
- "type": "card",
2211
- "card_type": "amex",
2212
- "category": "payment"
2213
- }
2214
- },
2215
- {
2216
- "id": "9d7756e343cefa22a5c098e1092590f806eb5446",
2217
- "name": "Basic Authentication Scanner",
2218
- "key": {
2219
- "operator": "match_regex",
2220
- "parameters": {
2221
- "regex": "\\bauthorization\\b",
2222
- "options": {
2223
- "case_sensitive": false,
2224
- "min_length": 13
2225
- }
2226
- }
2227
- },
2228
- "value": {
2229
- "operator": "match_regex",
2230
- "parameters": {
2231
- "regex": "^basic\\s+[A-Za-z0-9+/=]+",
2232
- "options": {
2233
- "case_sensitive": false,
2234
- "min_length": 7
2235
- }
2236
- }
2237
- },
2238
- "tags": {
2239
- "type": "basic_auth",
2240
- "category": "credentials"
2241
- }
2242
- },
2243
- {
2244
- "id": "mZy8XjZLReC9smpERXWnnw",
2245
- "name": "Bearer Authentication Scanner",
2246
- "key": {
2247
- "operator": "match_regex",
2248
- "parameters": {
2249
- "regex": "\\bauthorization\\b",
2250
- "options": {
2251
- "case_sensitive": false,
2252
- "min_length": 13
2253
- }
2254
- }
2255
- },
2256
- "value": {
2257
- "operator": "match_regex",
2258
- "parameters": {
2259
- "regex": "^bearer\\s+[-a-z0-9._~+/]{4,}",
2260
- "options": {
2261
- "case_sensitive": false,
2262
- "min_length": 11
2263
- }
2264
- }
2265
- },
2266
- "tags": {
2267
- "type": "bearer_token",
2268
- "category": "credentials"
2269
- }
2270
- },
2271
- {
2272
- "id": "450239afc250a19799b6c03dc0e16fd6a4b2a1af",
2273
- "name": "Canadian Social Insurance Number Scanner",
2274
- "key": {
2275
- "operator": "match_regex",
2276
- "parameters": {
2277
- "regex": "\\b(?:social[\\s_]?(?:insurance(?:\\s+number)?)?|SIN|Canadian[\\s_]?(?:social[\\s_]?(?:insurance)?|insurance[\\s_]?number)?)\\b",
2278
- "options": {
2279
- "case_sensitive": false,
2280
- "min_length": 3
2281
- }
2282
- }
2283
- },
2284
- "value": {
2285
- "operator": "match_regex",
2286
- "parameters": {
2287
- "regex": "\\b\\d{3}-\\d{3}-\\d{3}\\b",
2288
- "options": {
2289
- "case_sensitive": false,
2290
- "min_length": 11
2291
- }
2292
- }
2293
- },
2294
- "tags": {
2295
- "type": "canadian_sin",
2296
- "category": "pii"
2297
- }
2298
- },
2299
- {
2300
- "id": "87a879ff33693b46c8a614d8211f5a2c289beca0",
2301
- "name": "Digest Authentication Scanner",
2302
- "key": {
2303
- "operator": "match_regex",
2304
- "parameters": {
2305
- "regex": "\\bauthorization\\b",
2306
- "options": {
2307
- "case_sensitive": false,
2308
- "min_length": 13
2309
- }
2310
- }
2311
- },
2312
- "value": {
2313
- "operator": "match_regex",
2314
- "parameters": {
2315
- "regex": "^digest\\s+",
2316
- "options": {
2317
- "case_sensitive": false,
2318
- "min_length": 7
2319
- }
2320
- }
2321
- },
2322
- "tags": {
2323
- "type": "digest_auth",
2324
- "category": "credentials"
2325
- }
2326
- },
2327
- {
2328
- "id": "qWumeP1GQUa_E4ffAnT-Yg",
2329
- "name": "American Express Card Scanner (1x14 digits)",
2330
- "key": {
2331
- "operator": "match_regex",
2332
- "parameters": {
2333
- "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
2334
- "options": {
2335
- "case_sensitive": false,
2336
- "min_length": 3
2337
- }
2338
- }
2339
- },
2340
- "value": {
2341
- "operator": "match_regex",
2342
- "parameters": {
2343
- "regex": "(?:30[0-59]\\d|3[689]\\d{2})(?:\\d{10})",
2344
- "options": {
2345
- "case_sensitive": false,
2346
- "min_length": 14
2347
- }
2348
- }
2349
- },
2350
- "tags": {
2351
- "type": "card",
2352
- "card_type": "diners",
2353
- "category": "payment"
2354
- }
2355
- },
2356
- {
2357
- "id": "NlTWWM5LS6W0GSqBLuvtRw",
2358
- "name": "Diners Card Scanner (4+4+4+2 digits)",
2359
- "key": {
2360
- "operator": "match_regex",
2361
- "parameters": {
2362
- "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
2363
- "options": {
2364
- "case_sensitive": false,
2365
- "min_length": 3
2366
- }
2367
- }
2368
- },
2369
- "value": {
2370
- "operator": "match_regex",
2371
- "parameters": {
2372
- "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",
2373
- "options": {
2374
- "case_sensitive": false,
2375
- "min_length": 17
2376
- }
2377
- }
2378
- },
2379
- "tags": {
2380
- "type": "card",
2381
- "card_type": "diners",
2382
- "category": "payment"
2383
- }
2384
- },
2385
- {
2386
- "id": "Xr5VdbQSTXitYGGiTfxBpw",
2387
- "name": "Diners Card Scanner (4+6+4 digits)",
2388
- "key": {
2389
- "operator": "match_regex",
2390
- "parameters": {
2391
- "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
2392
- "options": {
2393
- "case_sensitive": false,
2394
- "min_length": 3
2395
- }
2396
- }
2397
- },
2398
- "value": {
2399
- "operator": "match_regex",
2400
- "parameters": {
2401
- "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",
2402
- "options": {
2403
- "case_sensitive": false,
2404
- "min_length": 16
2405
- }
2406
- }
2407
- },
2408
- "tags": {
2409
- "type": "card",
2410
- "card_type": "diners",
2411
- "category": "payment"
2412
- }
2413
- },
2414
- {
2415
- "id": "gAbunN_WQNytxu54DjcbAA-mod",
2416
- "name": "Diners Card Scanner (8+6 digits)",
2417
- "key": {
2418
- "operator": "match_regex",
2419
- "parameters": {
2420
- "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
2421
- "options": {
2422
- "case_sensitive": false,
2423
- "min_length": 3
2424
- }
2425
- }
2426
- },
2427
- "value": {
2428
- "operator": "match_regex",
2429
- "parameters": {
2430
- "regex": "\\b(?:30[0-59]\\d{5}|3[689]\\d{6})\\s?(?:(?:\\s\\d{6})|(?:\\,\\d{6})|(?:-\\d{6})|(?:\\.\\d{6}))\\b",
2431
- "options": {
2432
- "case_sensitive": false,
2433
- "min_length": 14
2434
- }
2435
- }
2436
- },
2437
- "tags": {
2438
- "type": "card",
2439
- "card_type": "diners",
2440
- "category": "payment"
2441
- }
2442
- },
2443
- {
2444
- "id": "9cs4qCfEQBeX17U7AepOvQ",
2445
- "name": "MasterCard Scanner (2x8 digits)",
2446
- "key": {
2447
- "operator": "match_regex",
2448
- "parameters": {
2449
- "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
2450
- "options": {
2451
- "case_sensitive": false,
2452
- "min_length": 3
2453
- }
2454
- }
2455
- },
2456
- "value": {
2457
- "operator": "match_regex",
2458
- "parameters": {
2459
- "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",
2460
- "options": {
2461
- "case_sensitive": false,
2462
- "min_length": 16
2463
- }
2464
- }
2465
- },
2466
- "tags": {
2467
- "type": "card",
2468
- "card_type": "discover",
2469
- "category": "payment"
2470
- }
2471
- },
2472
- {
2473
- "id": "YBIDWJIvQWW_TFOyU0CGJg",
2474
- "name": "Discover Card Scanner (4x4 digits)",
2475
- "key": {
2476
- "operator": "match_regex",
2477
- "parameters": {
2478
- "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
2479
- "options": {
2480
- "case_sensitive": false,
2481
- "min_length": 3
2482
- }
2483
- }
2484
- },
2485
- "value": {
2486
- "operator": "match_regex",
2487
- "parameters": {
2488
- "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",
2489
- "options": {
2490
- "case_sensitive": false,
2491
- "min_length": 16
2492
- }
2493
- }
2494
- },
2495
- "tags": {
2496
- "type": "card",
2497
- "card_type": "discover",
2498
- "category": "payment"
2499
- }
2500
- },
2501
- {
2502
- "id": "12cpbjtVTMaMutFhh9sojQ",
2503
- "name": "Discover Card Scanner (1x16 digits)",
2504
- "key": {
2505
- "operator": "match_regex",
2506
- "parameters": {
2507
- "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
2508
- "options": {
2509
- "case_sensitive": false,
2510
- "min_length": 3
2511
- }
2512
- }
2513
- },
2514
- "value": {
2515
- "operator": "match_regex",
2516
- "parameters": {
2517
- "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",
2518
- "options": {
2519
- "case_sensitive": false,
2520
- "min_length": 16
2521
- }
2522
- }
2523
- },
2524
- "tags": {
2525
- "type": "card",
2526
- "card_type": "discover",
2527
- "category": "payment"
2528
- }
2529
- },
2530
- {
2531
- "id": "PuXiVTCkTHOtj0Yad1ppsw",
2532
- "name": "Standard E-mail Address",
2533
- "key": {
2534
- "operator": "match_regex",
2535
- "parameters": {
2536
- "regex": "\\b(?:(?:e[-\\s]?)?mail|address|sender|\\bto\\b|from|recipient)\\b",
2537
- "options": {
2538
- "case_sensitive": false,
2539
- "min_length": 2
2540
- }
2541
- }
2542
- },
2543
- "value": {
2544
- "operator": "match_regex",
2545
- "parameters": {
2546
- "regex": "\\b[\\w!#$%&'*+/=?`{|}~^-]+(?:\\.[\\w!#$%&'*+/=?`{|}~^-]+)*(%40|@)(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,6}\\b",
2547
- "options": {
2548
- "case_sensitive": false,
2549
- "min_length": 5
2550
- }
2551
- }
2552
- },
2553
- "tags": {
2554
- "type": "email",
2555
- "category": "pii"
2556
- }
2557
- },
2558
- {
2559
- "id": "8VS2RKxzR8a_95L5fuwaXQ",
2560
- "name": "IBAN",
2561
- "key": {
2562
- "operator": "match_regex",
2563
- "parameters": {
2564
- "regex": "\\b(?:iban|account|sender|receiver)\\b",
2565
- "options": {
2566
- "case_sensitive": false,
2567
- "min_length": 3
2568
- }
2569
- }
2570
- },
2571
- "value": {
2572
- "operator": "match_regex",
2573
- "parameters": {
2574
- "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",
2575
- "options": {
2576
- "case_sensitive": false,
2577
- "min_length": 15
2578
- }
2579
- }
2580
- },
2581
- "tags": {
2582
- "type": "iban",
2583
- "category": "payment"
2584
- }
2585
- },
2586
- {
2587
- "id": "h6WJcecQTwqvN9KeEtwDvg",
2588
- "name": "JCB Card Scanner (1x16 digits)",
2589
- "key": {
2590
- "operator": "match_regex",
2591
- "parameters": {
2592
- "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
2593
- "options": {
2594
- "case_sensitive": false,
2595
- "min_length": 3
2596
- }
2597
- }
2598
- },
2599
- "value": {
2600
- "operator": "match_regex",
2601
- "parameters": {
2602
- "regex": "\\b35(?:2[89]|[3-9][0-9])(?:\\d{12})\\b",
2603
- "options": {
2604
- "case_sensitive": false,
2605
- "min_length": 16
2606
- }
2607
- }
2608
- },
2609
- "tags": {
2610
- "type": "card",
2611
- "card_type": "jcb",
2612
- "category": "payment"
2613
- }
2614
- },
2615
- {
2616
- "id": "gcEaMu_VSJ2-bGCEkgyC0w",
2617
- "name": "JCB Card Scanner (2x8 digits)",
2618
- "key": {
2619
- "operator": "match_regex",
2620
- "parameters": {
2621
- "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
2622
- "options": {
2623
- "case_sensitive": false,
2624
- "min_length": 3
2625
- }
2626
- }
2627
- },
2628
- "value": {
2629
- "operator": "match_regex",
2630
- "parameters": {
2631
- "regex": "\\b35(?:2[89]|[3-9][0-9])\\d{4}(?:(?:,\\d{8})|(?:-\\d{8})|(?:\\s\\d{8})|(?:\\.\\d{8}))\\b",
2632
- "options": {
2633
- "case_sensitive": false,
2634
- "min_length": 17
2635
- }
2636
- }
2637
- },
2638
- "tags": {
2639
- "type": "card",
2640
- "card_type": "jcb",
2641
- "category": "payment"
2642
- }
2643
- },
2644
- {
2645
- "id": "imTliuhXT5GAeRNhqChXQQ",
2646
- "name": "JCB Card Scanner (4x4 digits)",
2647
- "key": {
2648
- "operator": "match_regex",
2649
- "parameters": {
2650
- "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
2651
- "options": {
2652
- "case_sensitive": false,
2653
- "min_length": 3
2654
- }
2655
- }
2656
- },
2657
- "value": {
2658
- "operator": "match_regex",
2659
- "parameters": {
2660
- "regex": "\\b35(?:2[89]|[3-9][0-9])(?:(?:\\s\\d{4}){3}|(?:\\.\\d{4}){3}|(?:-\\d{4}){3}|(?:,\\d{4}){3})\\b",
2661
- "options": {
2662
- "case_sensitive": false,
2663
- "min_length": 16
2664
- }
2665
- }
2666
- },
2667
- "tags": {
2668
- "type": "card",
2669
- "card_type": "jcb",
2670
- "category": "payment"
2671
- }
2672
- },
2673
- {
2674
- "id": "9osY3xc9Q7ONAV0zw9Uz4A",
2675
- "name": "JSON Web Token",
2676
- "value": {
2677
- "operator": "match_regex",
2678
- "parameters": {
2679
- "regex": "\\bey[I-L][\\w=-]+\\.ey[I-L][\\w=-]+(\\.[\\w.+\\/=-]+)?\\b",
2680
- "options": {
2681
- "case_sensitive": false,
2682
- "min_length": 20
2683
- }
2684
- }
2685
- },
2686
- "tags": {
2687
- "type": "json_web_token",
2688
- "category": "credentials"
2689
- }
2690
- },
2691
- {
2692
- "id": "d1Q9D3YMRxuVKf6CZInJPw",
2693
- "name": "Maestro Card Scanner (1x16 digits)",
2694
- "key": {
2695
- "operator": "match_regex",
2696
- "parameters": {
2697
- "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
2698
- "options": {
2699
- "case_sensitive": false,
2700
- "min_length": 3
2701
- }
2702
- }
2703
- },
2704
- "value": {
2705
- "operator": "match_regex",
2706
- "parameters": {
2707
- "regex": "\\b(?:5[06-9]\\d{2}|6\\d{3})(?:\\d{12})\\b",
2708
- "options": {
2709
- "case_sensitive": false,
2710
- "min_length": 16
2711
- }
2712
- }
2713
- },
2714
- "tags": {
2715
- "type": "card",
2716
- "card_type": "maestro",
2717
- "category": "payment"
2718
- }
2719
- },
2720
- {
2721
- "id": "M3YIQKKjRVmoeQuM3pjzrw",
2722
- "name": "Maestro Card Scanner (2x8 digits)",
2723
- "key": {
2724
- "operator": "match_regex",
2725
- "parameters": {
2726
- "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
2727
- "options": {
2728
- "case_sensitive": false,
2729
- "min_length": 3
2730
- }
2731
- }
2732
- },
2733
- "value": {
2734
- "operator": "match_regex",
2735
- "parameters": {
2736
- "regex": "\\b(?:5[06-9]\\d{6}|6\\d{7})(?:\\s\\d{8}|\\.\\d{8}|-\\d{8}|,\\d{8})\\b",
2737
- "options": {
2738
- "case_sensitive": false,
2739
- "min_length": 17
2740
- }
2741
- }
2742
- },
2743
- "tags": {
2744
- "type": "card",
2745
- "card_type": "maestro",
2746
- "category": "payment"
2747
- }
2748
- },
2749
- {
2750
- "id": "hRxiQBlSSVKcjh5U7LZYLA",
2751
- "name": "Maestro Card Scanner (4x4 digits)",
2752
- "key": {
2753
- "operator": "match_regex",
2754
- "parameters": {
2755
- "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
2756
- "options": {
2757
- "case_sensitive": false,
2758
- "min_length": 3
2759
- }
2760
- }
2761
- },
2762
- "value": {
2763
- "operator": "match_regex",
2764
- "parameters": {
2765
- "regex": "\\b(?:5[06-9]\\d{2}|6\\d{3})(?:(?:\\s\\d{4}){3}|(?:\\.\\d{4}){3}|(?:-\\d{4}){3}|(?:,\\d{4}){3})\\b",
2766
- "options": {
2767
- "case_sensitive": false,
2768
- "min_length": 16
2769
- }
2770
- }
2771
- },
2772
- "tags": {
2773
- "type": "card",
2774
- "card_type": "maestro",
2775
- "category": "payment"
2776
- }
2777
- },
2778
- {
2779
- "id": "NwhIYNS4STqZys37WlaIKA",
2780
- "name": "MasterCard Scanner (2x8 digits)",
2781
- "key": {
2782
- "operator": "match_regex",
2783
- "parameters": {
2784
- "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
2785
- "options": {
2786
- "case_sensitive": false,
2787
- "min_length": 3
2788
- }
2789
- }
2790
- },
2791
- "value": {
2792
- "operator": "match_regex",
2793
- "parameters": {
2794
- "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",
2795
- "options": {
2796
- "case_sensitive": false,
2797
- "min_length": 16
2798
- }
2799
- }
2800
- },
2801
- "tags": {
2802
- "type": "card",
2803
- "card_type": "mastercard",
2804
- "category": "payment"
2805
- }
2806
- },
2807
- {
2808
- "id": "axxJkyjhRTOuhjwlsA35Vw",
2809
- "name": "MasterCard Scanner (4x4 digits)",
2810
- "key": {
2811
- "operator": "match_regex",
2812
- "parameters": {
2813
- "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
2814
- "options": {
2815
- "case_sensitive": false,
2816
- "min_length": 3
2817
- }
2818
- }
2819
- },
2820
- "value": {
2821
- "operator": "match_regex",
2822
- "parameters": {
2823
- "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",
2824
- "options": {
2825
- "case_sensitive": false,
2826
- "min_length": 16
2827
- }
2828
- }
2829
- },
2830
- "tags": {
2831
- "type": "card",
2832
- "card_type": "mastercard",
2833
- "category": "payment"
2834
- }
2835
- },
2836
- {
2837
- "id": "76EhmoK3TPqJcpM-fK0pLw",
2838
- "name": "MasterCard Scanner (1x16 digits)",
2839
- "key": {
2840
- "operator": "match_regex",
2841
- "parameters": {
2842
- "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
2843
- "options": {
2844
- "case_sensitive": false,
2845
- "min_length": 3
2846
- }
2847
- }
2848
- },
2849
- "value": {
2850
- "operator": "match_regex",
2851
- "parameters": {
2852
- "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",
2853
- "options": {
2854
- "case_sensitive": false,
2855
- "min_length": 16
2856
- }
2857
- }
2858
- },
2859
- "tags": {
2860
- "type": "card",
2861
- "card_type": "mastercard",
2862
- "category": "payment"
2863
- }
2864
- },
2865
- {
2866
- "id": "18b608bd7a764bff5b2344c0",
2867
- "name": "Phone number",
2868
- "key": {
2869
- "operator": "match_regex",
2870
- "parameters": {
2871
- "regex": "\\bphone|number|mobile\\b",
2872
- "options": {
2873
- "case_sensitive": false,
2874
- "min_length": 3
2875
- }
2876
- }
2877
- },
2878
- "value": {
2879
- "operator": "match_regex",
2880
- "parameters": {
2881
- "regex": "^(?:\\(\\+\\d{1,3}\\)|\\+\\d{1,3}|00\\d{1,3})?[-\\s\\.]?(?:\\(\\d{3}\\)[-\\s\\.]?)?(?:\\d[-\\s\\.]?){6,10}$",
2882
- "options": {
2883
- "case_sensitive": false,
2884
- "min_length": 6
2885
- }
2886
- }
2887
- },
2888
- "tags": {
2889
- "type": "phone",
2890
- "category": "pii"
2891
- }
2892
- },
2893
- {
2894
- "id": "de0899e0cbaaa812bb624cf04c912071012f616d-mod",
2895
- "name": "UK National Insurance Number Scanner",
2896
- "key": {
2897
- "operator": "match_regex",
2898
- "parameters": {
2899
- "regex": "^nin$|\\binsurance\\b",
2900
- "options": {
2901
- "case_sensitive": false,
2902
- "min_length": 3
2903
- }
2904
- }
2905
- },
2906
- "value": {
2907
- "operator": "match_regex",
2908
- "parameters": {
2909
- "regex": "\\b[A-Z]{2}[\\s-]?\\d{6}[\\s-]?[A-Z]?\\b",
2910
- "options": {
2911
- "case_sensitive": false,
2912
- "min_length": 8
2913
- }
2914
- }
2915
- },
2916
- "tags": {
2917
- "type": "uk_nin",
2918
- "category": "pii"
2919
- }
2920
- },
2921
- {
2922
- "id": "d962f7ddb3f55041e39195a60ff79d4814a7c331",
2923
- "name": "US Passport Scanner",
2924
- "key": {
2925
- "operator": "match_regex",
2926
- "parameters": {
2927
- "regex": "\\bpassport\\b",
2928
- "options": {
2929
- "case_sensitive": false,
2930
- "min_length": 8
2931
- }
2932
- }
2933
- },
2934
- "value": {
2935
- "operator": "match_regex",
2936
- "parameters": {
2937
- "regex": "\\b[0-9A-Z]{9}\\b|\\b[0-9]{6}[A-Z][0-9]{2}\\b",
2938
- "options": {
2939
- "case_sensitive": false,
2940
- "min_length": 8
2941
- }
2942
- }
2943
- },
2944
- "tags": {
2945
- "type": "passport_number",
2946
- "category": "pii"
2947
- }
2948
- },
2949
- {
2950
- "id": "7771fc3b-b205-4b93-bcef-28608c5c1b54",
2951
- "name": "United States Social Security Number Scanner",
2952
- "key": {
2953
- "operator": "match_regex",
2954
- "parameters": {
2955
- "regex": "\\b(?:SSN|(?:(?:social)?[\\s_]?(?:security)?[\\s_]?(?:number)?)?)\\b",
2956
- "options": {
2957
- "case_sensitive": false,
2958
- "min_length": 3
2959
- }
2960
- }
2961
- },
2962
- "value": {
2963
- "operator": "match_regex",
2964
- "parameters": {
2965
- "regex": "\\b\\d{3}[-\\s\\.]{1}\\d{2}[-\\s\\.]{1}\\d{4}\\b",
2966
- "options": {
2967
- "case_sensitive": false,
2968
- "min_length": 11
2969
- }
2970
- }
2971
- },
2972
- "tags": {
2973
- "type": "us_ssn",
2974
- "category": "pii"
2975
- }
2976
- },
2977
- {
2978
- "id": "ac6d683cbac77f6e399a14990793dd8fd0fca333",
2979
- "name": "US Vehicle Identification Number Scanner",
2980
- "key": {
2981
- "operator": "match_regex",
2982
- "parameters": {
2983
- "regex": "\\b(?:vehicle[_\\s-]*identification[_\\s-]*number|vin)\\b",
2984
- "options": {
2985
- "case_sensitive": false,
2986
- "min_length": 3
2987
- }
2988
- }
2989
- },
2990
- "value": {
2991
- "operator": "match_regex",
2992
- "parameters": {
2993
- "regex": "\\b[A-HJ-NPR-Z0-9]{17}\\b",
2994
- "options": {
2995
- "case_sensitive": false,
2996
- "min_length": 17
2997
- }
2998
- }
2999
- },
3000
- "tags": {
3001
- "type": "vin",
3002
- "category": "pii"
3003
- }
3004
- },
3005
- {
3006
- "id": "wJIgOygRQhKkR69b_9XbRQ",
3007
- "name": "Visa Card Scanner (2x8 digits)",
3008
- "key": {
3009
- "operator": "match_regex",
3010
- "parameters": {
3011
- "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
3012
- "options": {
3013
- "case_sensitive": false,
3014
- "min_length": 3
3015
- }
3016
- }
3017
- },
3018
- "value": {
3019
- "operator": "match_regex",
3020
- "parameters": {
3021
- "regex": "\\b4\\d{3}(?:(?:\\d{4}(?:(?:,\\d{8})|(?:-\\d{8})|(?:\\s\\d{8})|(?:\\.\\d{8}))))\\b",
3022
- "options": {
3023
- "case_sensitive": false,
3024
- "min_length": 16
3025
- }
3026
- }
3027
- },
3028
- "tags": {
3029
- "type": "card",
3030
- "card_type": "visa",
3031
- "category": "payment"
3032
- }
3033
- },
3034
- {
3035
- "id": "0o71SJxXQNK7Q6gMbBesFQ",
3036
- "name": "Visa Card Scanner (4x4 digits)",
3037
- "key": {
3038
- "operator": "match_regex",
3039
- "parameters": {
3040
- "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
3041
- "options": {
3042
- "case_sensitive": false,
3043
- "min_length": 3
3044
- }
3045
- }
3046
- },
3047
- "value": {
3048
- "operator": "match_regex",
3049
- "parameters": {
3050
- "regex": "\\b4\\d{3}(?:(?:,\\d{4}){3}|(?:\\s\\d{4}){3}|(?:\\.\\d{4}){3}|(?:-\\d{4}){3})\\b",
3051
- "options": {
3052
- "case_sensitive": false,
3053
- "min_length": 16
3054
- }
3055
- }
3056
- },
3057
- "tags": {
3058
- "type": "card",
3059
- "card_type": "visa",
3060
- "category": "payment"
3061
- }
3062
- },
3063
- {
3064
- "id": "QrHD6AfgQm6z-j0wStxTvA",
3065
- "name": "Visa Card Scanner (1x15 & 1x16 & 1x19 digits)",
3066
- "key": {
3067
- "operator": "match_regex",
3068
- "parameters": {
3069
- "regex": "\\b(?:card|cc|credit|debit|payment|amex|visa|mastercard|maestro|discover|jcb|diner)\\b",
3070
- "options": {
3071
- "case_sensitive": false,
3072
- "min_length": 3
3073
- }
3074
- }
3075
- },
3076
- "value": {
3077
- "operator": "match_regex",
3078
- "parameters": {
3079
- "regex": "4[0-9]{12}(?:[0-9]{3})?",
3080
- "options": {
3081
- "case_sensitive": false,
3082
- "min_length": 13
3083
- }
3084
- }
3085
- },
3086
- "tags": {
3087
- "type": "card",
3088
- "card_type": "visa",
3089
- "category": "payment"
3090
- }
3091
- }
3092
1748
  ]
3093
1749
  }