我正在制作一个项目,其中我有一个登录页面.
我限制用户进入
AND OR NOT XOR&| ^
这足以阻止我的应用程序从SQL注入?
一点都不.
例如,我仍然可以输入我的用户名:
; DELETE FROM Users --
根据您的数据库结构和应用程序代码,仍然可以擦除整个Users表.
为了充分保护自己免受SQL注入攻击,您应该转义任何用户输入并使用参数化查询或存储过程(如果您使用存储过程,请确保您没有在存储过程中动态生成的SQL)与之交互数据库.
你不应该在他们的用户名/密码中寻找特殊的单词/字符.因为你总会错过一些东西.
相反,如果您有嵌入式SQL,则应该使用参数化查询.如果你为所有查询都这样做,那么你将安全地从sql注入.现在,XSS完全是另一回事..;)
这已在本网站上深入介绍,只需搜索sql注入.