yform
yform copied to clipboard
ModSecurity Issue
https://github.com/redaxo/redaxo/issues/1275
Hallo zusammen,
wir hatten gestern bei einem Projekt folgende Problematik.
Im Addon Yform:
Diese URL funktioniert: redaxo/index.php?page=yform/manager/table_edit&start=0&table_id=1&func=edit&list=cd00b92b4ac64d74bfa7bff1230da6dd
Diese URL funktioniert nicht: redaxo/index.php?page=yform/manager/table_field&start=0&table_name=rex_center_category&list=cd00b92b4ac64d74bfa7bff1230da6dd
Die zweite URL Funktioniert nicht, da wohl ein Access denied pattern vom ModSecurity Apache Modul greifft. Auslöser ist der Parameter table_name.
ModSecurity: Access denied with code 403 (phase 2). Pattern match "(?i:(?:\b(?:(?:s(?:ys\.(?:user_(?:(?:t(?:ab(?:_column|le)|rigger)|object|view)s|c(?:onstraints|atalog))|all_tables|tab)|elect\b.{0,40}\b(?:substring|users?|ascii))|m(?:sys(?:(?:queri|ac)e|relationship|column|object)s|ysql\.(db|user))|c(?:onstraint ..." at ARGS_NAMES:table_name. [file "/etc/modsecurity/base_rules/modsecurity_crs_41_sql_injection_attacks.conf"] [line "116"] [id "950007"] [rev "2"] [msg "Blind SQL Injection Attack"] [data "Matched Data: table_name found within ARGS_NAMES:table_name: table_name"] [severity "CRITICAL"] [ver "OWASP_CRS/2.2.6"] [maturity "9"] [accuracy "8"] [tag "OWASP_CRS/WEB_ATTACK/SQL_INJECTION"] [tag "WASCTC/WASC-19"] [tag "OWASP_TOP_10/A1"] [tag "OWASP_AppSensor/CIE1"] [tag "PCI/6.5.2"] [hostname "domain.tld"] [uri "/redaxo/index.php"] [unique_id "WZ0yw9RN6EcAAAFPAsIAAABD"]
Viele Grüße Ronny
Es ging um table_name und kam zuletzt mal wieder vor, als IONOS das aktiviert hatte.
Das Issue kann zu in meinen Augen.
Ich habe nicht wahrgenommen, dass dieses Problem in den letzten 2 Jahren eine Rolle gespielt hat.
Das spielt ziemlich sicher noch eine Rolle. Man kann aber diese Regel auch deaktivieren. Das Umbenennen würde was helfen, aber löst letztendlich auch nicht wirklich allgemein das Problem. Diese OWASP Rulesets ändern sich auch immer wieder und irgendwas wird immer auftauchen. Ich würde das Issue noch offen lassen, um daran zu denken.
und jetzt schliesse ich es. Da kommen Aspekte als der table_name als Parameter zusammen und lässt sich ganzheitlich nicht über die yform lösen.
Problem trat gerade in Slack mal wieder auf: https://friendsofredaxo.slack.com/archives/C1BAXLN2F/p1718633585951909
Ich fände immer noch sinnvoll, wenn yform den Param-Namen ändern würde. Klar ist es irgendwie auch absurd, aber es würde nun mal zumindest in yform die Probleme oftmals vermeiden.
Danke .. @gharlan
vllt macht es sinn im redaxo setup einen .htaccess check laufen zu lassen mit einem solchen parameter um mod_security zu erkennen?