1
几年前,我在ColdFusion中编写了一个杂志风格的网站。它具有对全文搜索(使用SQL Server)文章和博客帖子的网站搜索功能。它运行良好,但后来我们被SQL注入攻击(我的错误)击中。网站所有者决定取消搜索,直到最近才让我重新开始搜索。网站搜索的安全措施
我知道我需要使用CFQUERYPARAM来停止SQL注入,并且我已经修复了代码的这方面。我的问题是,我应该做些什么来使网站搜索合理安全?我不是在谈论英雄的措施,只是我不应该忘记的基本东西。谢谢。
好的列表。此外,不要忘记有关诸如
除了使用参数,可以你可以检查奇怪的文字输入(HTML代码,'标签等...) 限制它的长度(它是合理的搜索将不超过一定数额的char)
搜索网络文本消毒
来源
2009-12-03 17:04:18 Dani
您可以开始避免使用CFQUERYPARAM sql注入。
你应该小心的另一件事是避免拒绝服务atack。 我曾经看到过一个基于向网站发送愚蠢查询的atack,类似于“包含一封信的所有文本”以及这类内容。
限制每页结果的数量是避免这类问题的一个很好的选择。
来源
2009-12-03 17:06:11
我能想到的是还要检查由搜索结果访问的所有链接(可cffunctions,fuseactions等),要么是安全的是公共或受保护必要的水平,如:
来源
2009-12-03 17:34:48
只能使用存储过程来更改数据。 将数据库用户帐户限制为只能使用视图(您可以在该视图上拥有只读权限) 将数据源设置为仅允许选择并执行(特效) 始终使用cfqueryparam 将查询放入cfc中并始终使用正确参数类型。 使用输入消毒器检查注射的字符串。
当然#1备份您的数据库或定期!
来源
2009-12-06 07:12:28 SNeiland
您还可以添加验证码到搜索中,以确保它是人为驱动的。然后,你不会磨损你的服务器或分贝,试图找到自动查询的答案。
来源
2009-12-22 01:56:47 crosenblum