监视ASP.NET和SQL Server以确保安全性

时间:2011-04-21 14:09:58

标签: asp.net sql-server security iis monitoring

监视ASP.NET应用程序以确保其安全并快速检测入侵的最佳(或任何良好)方法是什么?我们如何确定,到目前为止,我们的申请完全没有妥协?

我们即将推出一个ASP.NET 4 Web应用程序,其数据存储在SQL Server上。 Web服务器在Windows Server 2008实例上的IIS中运行,数据库服务器在单独的Win 2008实例上的SQL Server 2008上运行。

我们已经审核了Microsoft的安全建议,我认为我们的应用程序非常安全。我们实施了“纵深防御”,并考虑了一系列攻击媒介。

所以我们“感到”自信,但对我们系统的安全性还没有真正的了解。如果有人渗透,我们怎么能立刻知道?我们怎么知道我们的某个服务器上是否存有某种包裹?我们怎么知道数据泄漏是否正在进行中?

有哪些概念,工具,最佳实践等?

提前致谢, 布赖恩

其他想法4/22/11

克里斯,感谢下面非常有用的个人观察和提示。

有什么好的,全面的方法来监控当前的安全应用程序活动?除了在应用最佳实践,补丁等方面保持警惕之外,我想知道我的系统内部到底发生了什么。我希望能够以清楚地向我显示哪些流量是可疑的,哪些不是流量的方式来观察和分析其活动。最后,我希望这些信息完全准确,易于消化。

我们如何有效地接近这一点?除了线路上的数据包之外,一个好的解决方案是否包括监控登录,数据库活动,ASP.NET活动等?如何采取强有力的安全态势有哪些例子?

布赖恩

3 个答案:

答案 0 :(得分:3)

答案 1 :(得分:2)

我可以说有些人认为 - 但我很乐意听到更多的想法。

  

如果有人穿透,我们怎么能立刻知道?

这不是那么容易,在我看来,**一个想法是在你的后台内部制作一些陷阱,以及监视来自不同ips的双重登录

陷阱可以是您能想到的任何内容,例如非真实网页,说“创建新管理员”,或“更改管理员密码”,在后台,任何人都可以进入并试图让一个新的管理员肯定是一个穿透者 - 当然这个陷阱必须只在你身上知道,否则没有意义。

为了更加安全,对管理员的任何更改都必须使用第二个密码,如果有人尝试对管理员帐户进行真正的更改,或者尝试添加任何新的管理员,并且在第二个密码上失败,则必须将其视为穿透器。

  

监视ASP.NET应用程序的方法

我认为任何监视页面以进行某些文本更改的工具都可以提供帮助。例如,此Network Monitor可以监控您页面上的特定文本并提醒您,或者如果找不到此文本则执行某些操作,这意味着某人更改了该页面。

所以你可以添加一些特殊的hiden文本,如果你没找到,那么你可以肯定地知道有些人改变了你的页面的核心,可能是更改文件。

  

我们如何知道某个包裹是否存放在我们的某个服务器上

这可以是服务器上加载的任何aspx页面,就像文件浏览器一样。为此,我建议将web.config文件添加到用于上传数据的目录中,并且在此web.config上不允许运行任何内容。

<configuration>
    <system.web>
      <authorization>
        <deny users="*" />
      </authorization>
    </system.web>
</configuration>

答案 2 :(得分:1)

我还没有尝试过,但Lenny Zeltser将我引导到OSSEC,OSSEC是一个基于主机的入侵检测系统,可持续监控整个服务器以检测任何可疑活动。这看起来就像我想要的那样!

一旦我有机会对其进行全面测试,我会添加更多信息。

可以在http://www.ossec.net/

找到OSSEC