【发布时间】:2010-09-05 17:29:59
【问题描述】:
通过查看我们的DB's 错误日志,我们发现几乎成功的 SQL 注入攻击源源不断。一些快速编码避免了这种情况,但我如何为 DB 和 Web 服务器(包括 POST 请求)设置一个监视器来检查这个?我的意思是,如果有针对脚本小子的现成工具,是否有现成的工具会提醒您他们突然对您的网站产生的随机兴趣?
【问题讨论】:
通过查看我们的DB's 错误日志,我们发现几乎成功的 SQL 注入攻击源源不断。一些快速编码避免了这种情况,但我如何为 DB 和 Web 服务器(包括 POST 请求)设置一个监视器来检查这个?我的意思是,如果有针对脚本小子的现成工具,是否有现成的工具会提醒您他们突然对您的网站产生的随机兴趣?
【问题讨论】:
有趣的是,Scott Hanselman 今天收到了post on UrlScan,这是您可以做的一件事,以帮助监控和最大限度地减少潜在威胁。读起来很有趣。
【讨论】:
UrlScan 确实是 iis6 和 7 的不错选择;我还发现:dotDefender for pay,也涵盖 Apache 或 IIS 5-7,我找到了SQL Injection sanitation ISAPI
还值得注意的是,鉴于最近广泛传播的 SQL 注入尝试,不允许您的 webapp 的 db 用户帐户查询系统表(在 MS SQL Server 中它是 sysobjects 和 syscolumns)是一个好主意。
我认为这个线程保证 Apache 和其他网络服务器有更多免费的解决方案。
不幸的是,入侵检测不是我的想法,所以 sgfree 并不是一个网站攻击监控器,除非我不明白它是如何工作的。
【讨论】:
如果您可以返回并修改您的应用程序代码,我建议您将 log4j/log4net 集成到应用程序中。从那里您可以编写代码来检查表单字段或 URL(例如在 .NET 应用程序的 global.asax 级别)并在检测到恶意代码时创建日志条目。
log4j/log4net 的好处是您可以配置一个电子邮件/寻呼机/SMS 类型的附加程序,以便一旦发现恶意尝试,您就会收到通知。
我正在将一些 log4net 代码合并到我们拥有的 CMS 系统中,并且鉴于不断涌入的 ASPROx 攻击,我正在寻求这样做。
【讨论】:
监控网络和数据库访问日志应该会提醒您此类事情,但如果您想要功能更全面的警报系统,我建议您使用某种 IDS/IPS。不过,您需要一台备用机器和一个可以进行端口镜像的交换机。 如果你有这些,那么 IDS 是一种廉价的方式来监控你的流量以进行许多入侵尝试(会有很多)。基于 Snort (www.snort.org) 的 IDS 非常出色,并且有一些免费的完整打包版本可用。我使用的是 StrataGuard (http://sgfree.stillsecure.com/),它可以配置为 IDS(入侵检测系统)或 IPS(入侵防御系统)。如果您的流量不超过 5Mbps,则可以免费使用。 如果你确实使用 IDS/IPS,我建议你让它作为一个简单的 IDS 运行一个月左右,然后再让它防止攻击。
这可能有点矫枉过正,但如果您周围有备用机器,那么让 IDS 被动运行也无妨。
【讨论】:
您可以将您的系统设置为踢出一些错误消息,然后向系统发出 JSON 或 http 调用,该系统将监控、报告(记录)并发送任何类型的警报,例如 SMS/电子邮件或电话.
查看 developer.alertcaster.com
特别是如果您需要监视多个同时发生的事件,这听起来像是在进行,这可能是一个很好的解决方案。
【讨论】: