使用 Reg_Ex 的防火墙阻止文件需要进行调整

使用 Reg_Ex 的防火墙阻止文件需要进行调整

我们的防火墙具有安全措施,可以防止 SQL 注入破坏我们的任何内容:

Name
 Type
 Context
 Severity
 Pattern
 Configure

CS:select_into
 signature
 http-url
 critical
 .*\[select\].*\[into\].*
 Edit
 Remove

CS:select_from
 signature
 http-url
 critical
 .*\[select\].*\[from\].*
 Edit
 Remove

CS:insert_into
 signature
 http-url
 critical
 .*\[insert\].*\[into\].*
 Edit
 Remove

CS:drop_database
 signature
 http-url
 critical
 .*\[drop\].*\[database\].*
 Edit
 Remove

CS:drop_table
 signature
 http-url
 critical
 .*\[drop\].*\[table\].*
 Edit
 Remove

CS:delete_from
 signature
 http-url
 critical
 .*\[delete\].*\[from\].*
 Edit
 Remove

CS:drop_view
 signature
 http-url
 critical
 .*\[drop\].*\[view\].*
 Edit
 Remove

CS:exec
 signature
 http-url
 critical
 .*\[exec\].*(%28|\().*(%29|\)).*
 Edit
 Remove

CS:update_set
 signature
 http-url
 critical
 .*\[update\](%20|\+)(%20|\+|.)*\[set\].*
 Edit
 Remove

我们如何调整它以便可以从我们自己的一个 URL 加载以下文件?

  • 文件DropAreaIconsAndDescriptionsView.css

  • 文件DropAreaIconsHorizo​​ntalView.css

  • 文件DropAreaIconsView.css

  • 文件DropAreaTableView.css

De 文件包含单词“drop”和“view”,这使得 URL 符合要阻止的规则。在这种情况下,我们如何才能更改正则表达式,以便上述文件名能够通过此正则表达式,因此不会被阻止?

答案1

这几乎肯定是保护自己免受 SQL 注入攻击的错误方法。如果您只查看应用程序代码,并将保护机制写入数据库访问例程,或者更好的是,使用数据库抽象层(已经具有注入保护的层),那么您就不必担心这种糟糕的黑客攻击。

说真的,你做错了。

相关内容