【发布时间】:2010-03-08 21:16:12
【问题描述】:
我有一些正则表达式,看起来像这样:
string regexForDrop = @"^((%27)|'|(\-\-))\s*(d|%64|%44)(r|%72|%52)(o|%6F|%4F)(p|%70|%50)$";
当我写到输入“--drop”时它工作正常,但当我写“drop table users”或类似的东西时它不起作用。我需要它能够正常工作,无论“--drop”之后发生什么。我该如何实现呢?
谢谢
【问题讨论】:
-
你是不是想在这里阻止 SQL 注入攻击?
-
我强烈建议不要使用正则表达式作为 SQL 注入的安全方法。这是被黑客入侵的秘诀
-
即使它适用于“--drop”,“--truncate”或任何其他人可以做的坏事又如何呢?
-
-1 是有史以来最愚蠢的想法之一。
-
是的,我知道SP,我只是对正则表达式的研究做了一些研究。
标签: c# sql-server regex winforms sql-injection