Skip to content
This repository was archived by the owner on May 14, 2020. It is now read-only.

Commit 864f8cf

Browse files
authored
Merge pull request #1675 from franbuehler/create-942360
Fix FP with create with 942360
2 parents e7b8856 + 8ba7159 commit 864f8cf

File tree

3 files changed

+41
-3
lines changed

3 files changed

+41
-3
lines changed

rules/REQUEST-942-APPLICATION-ATTACK-SQLI.conf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -461,7 +461,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME
461461
# to the Regexp::Assemble output:
462462
# (?i:ASSEMBLE_OUTPUT)
463463
#
464-
SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAMES|ARGS|XML:/* "@rx (?i:(?:^[\W\d]+\s*?(?:alter\s*(?:a(?:(?:pplication\s*rol|ggregat)e|s(?:ymmetric\s*ke|sembl)y|u(?:thorization|dit)|vailability\s*group)|c(?:r(?:yptographic\s*provider|edential)|o(?:l(?:latio|um)|nversio)n|ertificate|luster)|s(?:e(?:rv(?:ice|er)|curity|quence|ssion|arch)|y(?:mmetric\s*key|nonym)|togroup|chema)|m(?:a(?:s(?:ter\s*key|k)|terialized)|e(?:ssage\s*type|thod)|odule)|l(?:o(?:g(?:file\s*group|in)|ckdown)|a(?:ngua|r)ge|ibrary)|t(?:(?:abl(?:espac)?|yp)e|r(?:igger|usted)|hreshold|ext)|p(?:a(?:rtition|ckage)|ro(?:cedur|fil)e|ermission)|d(?:i(?:mension|skgroup)|atabase|efault|omain)|r(?:o(?:l(?:lback|e)|ute)|e(?:sourc|mot)e)|f(?:u(?:lltext|nction)|lashback|oreign)|e(?:xte(?:nsion|rnal)|(?:ndpoi|ve)nt)|in(?:dex(?:type)?|memory|stance)|b(?:roker\s*priority|ufferpool)|x(?:ml\s*schema|srobject)|w(?:ork(?:load)?|rapper)|hi(?:erarchy|stogram)|o(?:perator|utline)|(?:nicknam|queu)e|us(?:age|er)|group|java|view)|u(?:nion\s*(?:(?:distin|sele)ct|all)|pdate)|(?:(?:trunc|cre)at|renam)e|(?:inser|selec)t|de(?:lete|sc)|load)\b|(?:(?:(?:trunc|cre|upd)at|renam)e|(?:inser|selec)t|de(?:lete|sc)|alter|load)\s+(?:group_concat|load_file|char)\s?\(?|[\d\W]\s+as\b\s*[\"'`\w]+\s*\bfrom|[\s(]load_file\s*?\(|[\"'`]\s+regexp\W|end\s*?\);))" \
464+
SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAMES|ARGS|XML:/* "@rx (?i:(?:^[\W\d]+\s*?(?:(?:alter\s*(?:a(?:(?:pplication\s*rol|ggregat)e|s(?:ymmetric\s*ke|sembl)y|u(?:thorization|dit)|vailability\s*group)|c(?:r(?:yptographic\s*provider|edential)|o(?:l(?:latio|um)|nversio)n|ertificate|luster)|s(?:e(?:rv(?:ice|er)|curity|quence|ssion|arch)|y(?:mmetric\s*key|nonym)|togroup|chema)|m(?:a(?:s(?:ter\s*key|k)|terialized)|e(?:ssage\s*type|thod)|odule)|l(?:o(?:g(?:file\s*group|in)|ckdown)|a(?:ngua|r)ge|ibrary)|t(?:(?:abl(?:espac)?|yp)e|r(?:igger|usted)|hreshold|ext)|p(?:a(?:rtition|ckage)|ro(?:cedur|fil)e|ermission)|d(?:i(?:mension|skgroup)|atabase|efault|omain)|r(?:o(?:l(?:lback|e)|ute)|e(?:sourc|mot)e)|f(?:u(?:lltext|nction)|lashback|oreign)|e(?:xte(?:nsion|rnal)|(?:ndpoi|ve)nt)|in(?:dex(?:type)?|memory|stance)|b(?:roker\s*priority|ufferpool)|x(?:ml\s*schema|srobject)|w(?:ork(?:load)?|rapper)|hi(?:erarchy|stogram)|o(?:perator|utline)|(?:nicknam|queu)e|us(?:age|er)|group|java|view)|u(?:nion\s*(?:(?:distin|sele)ct|all)|pdate)|(?:truncat|renam)e|(?:inser|selec)t|de(?:lete|sc)|load)\b|create\s+\w+)|(?:(?:(?:trunc|cre|upd)at|renam)e|(?:inser|selec)t|de(?:lete|sc)|alter|load)\s+(?:group_concat|load_file|char)\s?\(?|[\d\W]\s+as\b\s*[\"'`\w]+\s*\bfrom|[\s(]load_file\s*?\(|[\"'`]\s+regexp\W|end\s*?\);))" \
465465
"id:942360,\
466466
phase:2,\
467467
block,\

tests/regression/tests/REQUEST-942-APPLICATION-ATTACK-SQLI/942360.yaml

Lines changed: 39 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
meta:
3-
author: "Christian S.J. Peron, Christoph Hansen"
3+
author: "Christian S.J. Peron, Christoph Hansen, Franziska Buehler"
44
description: None
55
enabled: true
66
name: 942360.yaml
@@ -517,3 +517,41 @@
517517
version: HTTP/1.0
518518
output:
519519
no_log_contains: id "942360"
520+
-
521+
test_title: 942360-31
522+
desc: GH issue 1605
523+
stages:
524+
-
525+
stage:
526+
input:
527+
dest_addr: 127.0.0.1
528+
headers:
529+
Accept: "*/*"
530+
Host: localhost
531+
User-Agent: ModSecurity CRS 3 Tests
532+
method: POST
533+
port: 80
534+
uri: /
535+
data: "a=/create"
536+
version: HTTP/1.0
537+
output:
538+
no_log_contains: id "942360"
539+
-
540+
test_title: 942360-32
541+
desc: GH issue 1605
542+
stages:
543+
-
544+
stage:
545+
input:
546+
dest_addr: 127.0.0.1
547+
headers:
548+
Accept: "*/*"
549+
Host: localhost
550+
User-Agent: ModSecurity CRS 3 Tests
551+
method: POST
552+
port: 80
553+
uri: /
554+
data: "a=/CREATE TABLE Persons"
555+
version: HTTP/1.0
556+
output:
557+
log_contains: id "942360"

util/regexp-assemble/regexp-942360.data

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ end\s*?\);
3232
[\s(]load_file\s*?\(
3333
[\"'`]\s+regexp\W
3434
[\d\W]\s+as\b\s*[\"'`\w]+\s*\bfrom
35-
^[\W\d]+\s*?create\b
35+
^[\W\d]+\s*?create\s+\w+
3636
^[\W\d]+\s*?delete\b
3737
^[\W\d]+\s*?desc\b
3838
^[\W\d]+\s*?insert\b

0 commit comments

Comments
 (0)