构建Linux系统安全体系的10项原则(下)
极客时间编辑部
讲述:初明明大小:3.55M时长:03:53
在上一篇文章中,我们分享了 Linux 安全专家胥峰所总结的 10 个最关键且有效的安全原则中的前五个,本文继续分享后五项原则,具体如下。
1. 避免通过隐藏来实现安全
通过隐藏来实现安全(Security by obscurity)是指通过试图对外部隐藏一些信息来实现安全。比如把贵重物品放在车里,然后给它盖上一个报纸,我们就认为它安全无比了,这就大错特错了。
在信息安全领域,通过隐藏来实现安全也是不可取的。例如,我们把 WordPress 的版本号隐藏掉就认为 WordPress 安全了也是极其错误的。当前互联网的高连接速度和强大的扫描工具已经让试图通过隐藏来实现安全越来越变得不可能了。
2. 入侵检测
在入侵发生后,如果没有有效的入侵检测系统(Intrusion Detection System,IDS)的支持,系统可能会长时间被黑客利用而无法察觉,导致业务长期受到威胁。
入侵检测系统,按照部署的位置,一般可以分为网络入侵检测系统和主机入侵检测系统。网络入侵检测系统部署在网络边界,分析网络流量,识别出入侵行为。主机系统检测系统部署在服务器上,通过分析文件完整性、网络连接活动、进程行为、日志字符串匹配、文件特征等识别出是否正在发生入侵行为或者判断出是否已经发生入侵行为。
3. 不要信任基础设施
在信息安全领域有一种误解,那就是“我使用了主流的基础设施,因此我不需要额外防护我的应用了,我完全依赖这些基础设施提供的安全措施。”
虽然主流的信息基础设施在设计和实现时会把安全放在重要的位置,但是如果没有健壮的验证机制和安全控制措施,这些应用反而成为基础设施中显而易见的攻击点,使得黑客通过应用漏洞完全控制基础设施。
Weblogic 这样一个广泛使用的 Web 容器平台就曾经爆发过严重的安全漏洞。所以,要时时刻刻关注信息基础设施的安全,及时修正其存在的安全缺陷。
4. 不要信任服务
这里的服务是指任何外部或者内部提供的系统、平台、接口、功能,也包括自研客户端和作为客户端功能的软件,例如浏览器、FTP 上传下载工具等。
在实践中,我们常常见到,对于由外部第三方提供的服务,特别是银行支付接口、短信通道接口,应用一般都是直接信任的,对其返回值或者回调请求缺少校验。同样,对于内部服务,应用一般也是直接信任的。事实上,这种盲目的信任关系会直接导致严重的安全风险。如外部和内部服务被成功控制后,我们的业务也可能会受到直接影响。
来自自研客户端或者作为客户端功能的软件的数据,更是应该进行严格校验的,因为这些数据被恶意篡改的概率是非常大的。
5. 交付时保持默认是安全的
在交付应用时,我们要保证默认情况下的设置是安全的。比如,对于有初始密码的应用,我们要设置较强的初始密码,并且启用密码失效机制来强制用户在第一次使用的时候就必须修改掉默认密码。另一个例子是虚拟机镜像的交付,我们在烧制虚拟机镜像的时候,应该对镜像进行基础的安全设置,这包括删除无用的系统默认账号、默认密码设置、防火墙设置、默认启动的应用剪裁等。在虚拟机镜像交付给用户以后,用户可以按照实际需要再进行优化和完善,以满足业务需求。
以上就是今天的内容,希望对你有所帮助。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论