网络安全类面试题如何保障 Web 服务器安全 你甚至会考虑双重认证,例如 RSA SecurID,来确保认证系统的高信任度,但是这对所有网站用户来说也许不有用,或者不划算
尽管存在这样相冲突的目标,仍有六个有助 Web 服务器安全的步骤
对内部和外部应用分别使用单独的服务器 假设组织有两类独立的网络应用,面对外部用户的服务和面对内部用户的服务,要谨慎地将这些应用部署在不同的服务器上
这样做可以减少恶意用户突破外部服务器来获得对敏感的内部信息地访问
假如你没有可用的部署工具,你至少应该考虑使用技术控制(例如处理隔离),使内部和外部应用不会互相牵涉
使用单独的开发服务器测试和调试应用软件 在单独的 Web 服务器上测试应用软件听起来像是常识的确是
不幸的是,许多组织没有遵循这个基本规则,相反允许开发者在生产服务器上调试代码甚至开发新软件
这对安全和可靠性来说都很可怕
在生产服务器上测试代码会使用户遇到故障,当开发者提交未经测试易受攻击的代码时,引入安全漏洞
大多数现代版本控制系统(例如微软的 Visual SourceSafe)有助于编码/测试/调试过程自动化
审查网站活动,安全存储日志 每一个安全专业人员都知道维护服务器活动日志的重要性
由于大多数 Web 服务器是公开的,对所有互联网服务进行审核是很重要的
审核有助你检测和打击攻击,并且使你可以检修服务器性能故障
在高级安全环境中,确保你的日志存储在物理安全的地点最安全的(但是最不方便的)技巧是日志一产生就打印出来,建立不能被入侵者修改的
纸记录,前提是入侵者没有物理访问权限
你也许想要使用电子备份,例如登录进安全主机,用数字签名进行加密,来阻止日志被窃取和修改
培训开发者进行可靠的安全编码 软件开发者致力于创建满足商业需求的应用软件,却常常忽略了信息安全也是重要的商业需求
作为安全专业人员,你有责任对开发者进行影响