2010-01-21 58 views
2

我正在编写一个应用程序,其中记录应用程序错误并将其发布到我们服务器上的侦听HTTP端口。我们决定不使用电子邮件,因为许多运行服务器的客户端“无法通过SMTP发送任何东西”(根据老板哥们的说法)通过HTTP记录错误 - 安全隐患

我只是使用log4net和custom-编写HTTPAppender。

我想了解一下使用这种方法的可能的安全问题,或者是否有一个更好的在那里。监听端口当然会受到SQL注入等的保护。

回答

3

这取决于您如何定义安全性,以及如何锁定它。

如果外部攻击者能够访问您的HTTP侦听器,会有什么影响?假设侦听器本身是安全的,他们所能做的就是将伪造的条目附加到日志中。这是一个严重的问题吗?你是否担心可能的拒绝服务,例如,填满所有可用磁盘空间的垃圾日志条目?

如果是这样,那么请尽你所能锁定听众。使用某种形式的HTTP身份验证。将其配置为仅接受来自特定IP地址的流量。更好的是,把它放在一个外部世界根本无法达到的受限制的网络上。

其他唯一的风险是,如果你的听众是从字面上在远程位置,你必须去通过公共互联网来实现它。我不推荐这样做,因为它可能让某些人窥探消息,从而发现有关系统的潜在敏感信息。

2

我会加密签署任何文件发送到监听器 - 而不是保守秘密,但要防止DoS攻击的类型,你不希望它大开,使任何人都可以送什么东西给它。任何未签名的内容都应该被拒绝。

1

如果请求是通过HTTP无SSL/TLS发送,则消息都受到了一系列的人在这方面的中间人,当然攻击。发件人/客户端和服务器之间的任何节点将能够读取和操作消息。

1

如果你的服务器在同一个网络上,并且不能公开访问,应该没有问题。

如果是从Internet访问,那么你会想要签名日志来避免DOS攻击。如果您的应用程序错误中存在任何敏感内容,您可能需要考虑加密以避免信息泄漏。

另一种选择可能是要离开你的服务器在防火墙后面,并用SSH隧道或类似连接。如果客户端机器仅接受来自本地主机的端口转发连接,这将减轻拒绝服务和泄漏问题。