如何保障Web服务器安全


Posted in 面试题 onMay 05, 2014
维护Web服务器安全是信息安全中最不讨好的差事之一。你需要在相冲突的角色中找到平衡,允许对网络资源的合法访问,同时阻止恶意破坏。

你甚至会考虑双重认证,例如RSA SecurID,来确保认证系统的高信任度,但是这对所有网站用户来说也许不实用,或者不划算。尽管存在这样相冲突的目标,仍有六个有助Web服务器安全的步骤。

对内部和外部应用分别使用单独的服务器

假设组织有两类独立的网络应用,面向外部用户的服务和面向内部用户的服务,要谨慎地将这些应用部署在不同的服务器上。这样做可以减少恶意用户突破外部服务器来获得对敏感的内部信息地访问。如果你没有可用的部署工具,你至少应该考虑使用技术控制(例如处理隔离),使内部和外部应用不会互相牵涉。

使用单独的开发服务器测试和调试应用软件

在单独的Web服务器上测试应用软件听起来像是常识——的确是。不幸的是,许多组织没有遵循这个基本规则,相反允许开发者在生产服务器上调试代码甚至开发新软件。这对安全和可靠性来说都很可怕。在生产服务器上测试代码会使用户遇到故障,当开发者提交未经测试易受攻击的代码时,引入安全漏洞。大多数现代版本控制系统(例如微软的Visual SourceSafe)有助于编码/测试/调试过程自动化。

审查网站活动,安全存储日志

每一个安全专业人员都知道维护服务器活动日志的重要性。由于大多数Web服务器是公开的,对所有互联网服务进行审核是很重要的。审核有助你检测和打击攻击,并且使你可以检修服务器性能故障。在高级安全环境中,确保你的日志存储在物理安全的地点——最安全的(但是最不方便的)技巧是日志一产生就打印出来,建立不能被入侵者修改的纸记录,前提是入侵者没有物理访问权限。你也许想要使用电子备份,例如登录进安全主机,用数字签名进行加密,来阻止日志被窃取和修改。

培训开发者进行可靠的安全编码

软件开发者致力于创建满足商业需求的应用软件,却常常忽略了信息安全也是重要的商业需求。作为安全专业人员,你有责任对开发者进行影响到Web服务器的安全问题的培训。你应该让开发者了解网络中的安全机制,确保他们开发的软件不会违背这些机制;还要进行概念的培训,例如内存泄漏攻击和处理隔离——这些对编码和生成安全的应用软件大有帮助。

给操作系统和Web服务器打补丁

这是另一个常识,但是当管理员因为其他任务而不堪重荷时常常忽略这一点。安全公告,像是CERT或者微软发布的公告,提醒人们软件厂商多频繁地发布某些安全漏洞的修补程序。一些工具像是微软的软件升级服务(SUS)和RedHat的升级服务有助于使这项任务自动化。总之,一旦漏洞公布,如果你不修补它,迟早会被人发现并利用。

使用应用软件扫描

如果负担地起,你也许会考虑使用应用软件扫描器来验证内部编码。像是 Watchfire公司的AppScan这样的工具有助于确保编码在生产环境里不会存在漏洞。记住,要有安全意识。设计良好的 Web服务器结构应该基于健全的安全政策。贯彻执行这六个方法会帮助你建立坚固的基础。

Tags in this post...

面试题 相关文章推荐
Yahoo-PHP面试题2
Dec 06 面试题
你所知道的集合类都有哪些?主要方法?
Dec 31 面试题
Java面试中常遇到的问题,也是需要注意的几点
Aug 30 面试题
写一个方法1000的阶乘
Nov 21 面试题
NULL是什么,它是怎么定义的
May 09 面试题
杭州-飞时达软件有限公司.net笔面试
Apr 28 面试题
.NET面试题:什么是反射
Sep 30 面试题
SQL注入攻击的种类有哪些
Dec 30 面试题
英智兴达软件测试笔试题
Oct 12 面试题
MIS软件工程师的面试题
Apr 22 面试题
介绍一下XMLHttpRequest对象
Feb 12 面试题
灵泰克Java笔试题
Jan 09 面试题
介绍一下如何利用路径遍历进行攻击及如何防范
Jan 19 #面试题
SQL注入攻击的种类有哪些
Dec 30 #面试题
渗透攻击的测试步骤
Jun 07 #面试题
介绍一下木马病毒的种类
Jul 26 #面试题
什么叫做SQL注入,如何防止
Oct 04 #面试题
如何查找网页漏洞
Jun 22 #面试题
动态密码技术
Oct 18 #面试题
You might like
PHP脚本的10个技巧(8)
2006/10/09 PHP
php 用checkbox一次性删除多条记录的方法
2010/02/23 PHP
Javascript条件判断使用小技巧总结
2008/09/08 Javascript
Firefox window.close()的使用注意事项
2009/04/11 Javascript
心扬JS分页函数代码
2010/09/10 Javascript
JavaScript聚焦于第一个字段的代码
2010/10/15 Javascript
浅析Prototype的模板类 Template
2011/12/07 Javascript
EditPlus注册码生成器(js代码实现)
2013/03/25 Javascript
判断一个对象是否为jquery对象的方法
2014/03/12 Javascript
jquery默认校验规则整理
2014/03/24 Javascript
javascript实现浏览器窗口传递参数的方法
2014/09/03 Javascript
COM组件中调用JavaScript函数详解及实例
2017/02/23 Javascript
详解JSONObject和JSONArray区别及基本用法
2017/10/25 Javascript
JS实现的集合去重,交集,并集,差集功能示例
2018/03/13 Javascript
vue 解决addRoutes动态添加路由后刷新失效问题
2018/07/02 Javascript
在vue项目中引入高德地图及其UI组件的方法
2018/09/04 Javascript
基于jquery实现九宫格拼图小游戏
2018/11/30 jQuery
Jquery遍历筛选数组的几种方法和遍历解析json对象,Map()方法详解以及数组中查询某值是否存在
2019/01/18 jQuery
python在windows命令行下输出彩色文字的方法
2015/03/19 Python
浅析Python基础-流程控制
2016/03/18 Python
Python序列化基础知识(json/pickle)
2017/10/19 Python
Tensorflow使用tfrecord输入数据格式
2018/06/19 Python
python3利用tcp实现文件夹远程传输
2018/07/28 Python
python实现自动化上线脚本的示例
2019/07/01 Python
Python中zip()函数的简单用法举例
2019/09/02 Python
Linux系统下升级pip的完整步骤
2021/01/31 Python
H5 canvas中width、height和style的宽高区别详解
2018/11/02 HTML / CSS
HTML5的download属性详细介绍和使用实例
2014/04/23 HTML / CSS
澳大利亚设计的婴儿和女孩的衣服:Oobi
2018/12/16 全球购物
《太阳》教学反思
2014/02/21 职场文书
3的组成教学反思
2014/04/30 职场文书
党支部综合考察材料
2014/05/19 职场文书
元旦联欢晚会主持词
2015/07/01 职场文书
2015年董事长秘书工作总结
2015/07/23 职场文书
阳光体育运动标语口号
2015/12/26 职场文书
Nginx 配置 HTTPS的详细过程
2022/05/30 Servers