Skip to content

Commit c021b31

Browse files
CarlesDDrochdev
authored andcommitted
Update WAF rules to v1.15.0 (#6082)
1 parent b0c3816 commit c021b31

File tree

1 file changed

+88
-2
lines changed

1 file changed

+88
-2
lines changed

packages/dd-trace/src/appsec/recommended.json

Lines changed: 88 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"version": "2.2",
33
"metadata": {
4-
"rules_version": "1.14.2"
4+
"rules_version": "1.15.0"
55
},
66
"rules": [
77
{
@@ -2985,7 +2985,7 @@
29852985
"address": "graphql.server.resolver"
29862986
}
29872987
],
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*\\[)",
29892989
"options": {
29902990
"case_sensitive": true,
29912991
"min_length": 3
@@ -5656,6 +5656,52 @@
56565656
],
56575657
"transformers": []
56585658
},
5659+
{
5660+
"id": "dog-932-110",
5661+
"name": "Python: Subprocess-based command injection",
5662+
"tags": {
5663+
"type": "command_injection",
5664+
"category": "attack_attempt",
5665+
"confidence": "0",
5666+
"module": "waf"
5667+
},
5668+
"conditions": [
5669+
{
5670+
"parameters": {
5671+
"inputs": [
5672+
{
5673+
"address": "server.request.query"
5674+
},
5675+
{
5676+
"address": "server.request.body"
5677+
},
5678+
{
5679+
"address": "server.request.path_params"
5680+
},
5681+
{
5682+
"address": "server.request.headers.no_cookies"
5683+
},
5684+
{
5685+
"address": "grpc.server.request.message"
5686+
},
5687+
{
5688+
"address": "graphql.server.all_resolvers"
5689+
},
5690+
{
5691+
"address": "graphql.server.resolver"
5692+
}
5693+
],
5694+
"regex": "(?s)\\bsubprocess\\b.*\\b(?:check_output|run|Popen|call|check_call)\\b",
5695+
"options": {
5696+
"case_sensitive": true,
5697+
"min_length": 14
5698+
}
5699+
},
5700+
"operator": "match_regex"
5701+
}
5702+
],
5703+
"transformers": []
5704+
},
56595705
{
56605706
"id": "dog-934-001",
56615707
"name": "XXE - XML file loads external entity",
@@ -9074,6 +9120,28 @@
90749120
"evaluate": true,
90759121
"output": true
90769122
},
9123+
{
9124+
"id": "decode-auth-jwt",
9125+
"generator": "jwt_decode",
9126+
"min_version": "1.25.0",
9127+
"parameters": {
9128+
"mappings": [
9129+
{
9130+
"inputs": [
9131+
{
9132+
"address": "server.request.headers.no_cookies",
9133+
"key_path": [
9134+
"authorization"
9135+
]
9136+
}
9137+
],
9138+
"output": "server.request.jwt"
9139+
}
9140+
]
9141+
},
9142+
"evaluate": true,
9143+
"output": false
9144+
},
90779145
{
90789146
"id": "http-network-fingerprint",
90799147
"generator": "http_network_fingerprint",
@@ -9918,6 +9986,24 @@
99189986
"category": "payment"
99199987
}
99209988
},
9989+
{
9990+
"id": "c542c147-3883-43d6-a067-178e4a7bd65d",
9991+
"name": "Password",
9992+
"key": {
9993+
"operator": "match_regex",
9994+
"parameters": {
9995+
"regex": "\\bpass(?:[_-]?word|wd)?\\b|\\bpwd\\b",
9996+
"options": {
9997+
"case_sensitive": false,
9998+
"min_length": 3
9999+
}
10000+
}
10001+
},
10002+
"tags": {
10003+
"type": "password",
10004+
"category": "credentials"
10005+
}
10006+
},
992110007
{
992210008
"id": "18b608bd7a764bff5b2344c0",
992310009
"name": "Phone number",

0 commit comments

Comments
 (0)