从携程事件给咱们警示(转)

 你准备好了吗? 若是携程事件发生在你身上,这个问题怎么处理?有无应对方案?怎样快速找出***的方式,方法? 有句话说的好,常在河边走,哪有不湿鞋。
php

从携程事件给咱们警示

你准备好了吗? 若是携程事件发生在你身上,这个问题怎么处理?有无应对方案?怎样快速找出***的方式,方法? 有句话说的好,常在河边走,哪有不湿鞋。html

程序是一波人一波人开发的

国内软件行业人员流动仍是很频繁的,程序是一波人一波人开发的,有如击鼓传球,谁最后接手烂在谁手里谁倒霉。 咱们发现国内的软件业在重复作着一样的工做,一次一次推倒重来,本身开发的,内心才有底,对于上一波人开发的系统,谁也不能保证安全性。mysql

我看到不少QQ群在转发携程事件,还有携程内部聊天纪录以及电子邮件,都在幸灾乐祸,我想问若是发生在你身上呢?git

运维不能靠天吃饭

你不能指望运维不出事情,不出事,必有因果关系,种下因获得果。 不少企业的运维,不出事就不会出事,出事必定会出大事。 要你拿出预案,将事故消灭在萌芽状态。你的准备工做作得多少决定了你故障的大小以及范围。 出这样的事故必定是平时积累,爆发只是个时间问题。github

应对方案

从年从业我也被***过,遇到各类各样的***,经常是被挖到新公司,首先面临的挑战就是安全问题。 我也总结一些经验,这里篇幅有限,不可能依依详解,仅仅给你提供一个思路一个启发。详细请看个人网站相关文章http://netkiller.github.io/。web

携程代码被删除解决方案

WEB 服务器运行用户不能与代码全部者用户相同,由于一旦WEB服务器被攻陷将具备删除权限。 因此代码部署使用AAA用户,WEB服务器运行使用BBB用户。一旦WEB服务器被攻陷,用户拥有BBB权限,而没法删除AAA权限的文件。 这样的设置,除了防止删除文件,还能避免代码注入。***着更可能是注入代码,下载数据库,而非破坏性***。 这样设置给***值制造了必定门槛,继续***,***者须要提高权限才能获得修改与删除权限。sql

携程数据被删除解决方案

  1. 在APP应用与数据库间增长了API服务器,应用程序经过API访问数据库,API主要采用ORM关系对象映射技术为用户提供接口。而不是让APP经过SQL直接操做数据库。APP须要提供用户认证,ACL控制(精确到方法),简单的说AAA用户只能从指定IP地址,访问指定类与方法,甚至可能精确到方法参数限制。shell

  2. 去掉Delete权限,只能经过更新状态删除,这样的缺点是会产生大量的脏数据。及时清理也问题不大。数据库

  3. 控制恶意修改,经过触发器控制某些字段被恶意专改。参考 数据库记录安全解决方案》http://netkiller.github.io/journal/mysql.security.html安全

自动化运维

  1. 自动化安装,快速将标准的服务器,部署为指定功能的服务器,参考 https://github.com/oscm/shell

  2. 自动化发布,这个很是重要,目前国内不少代码发布仍然采用人工方式(处在时期时代)。自动化发布能瞬间部署,这点对快速抢修很是重要。参考 https://github.com/oscm/devops

Active-Active 灾备

异地灾备是很是奢侈的,不是每一个企业都能承担的起,可是双活灾备系统是必须的。

怎样快速找出***的方式

以PHP为例,若是代码被删除。我会第一时间在php.ini中禁用删除函数,而后 grep -r unlink /www/example.com/xxx.example.com 找出具有删除功能程序。而后在web日志中找到该程序调用的url被什么时间什么IP地址调用过,最后禁用该IP地址。 若是Java被二进制植入就比较麻烦,没法直接找出,首要作的是修改代码全部者,不能与Tomcat启动用户相同。 另外个人自动发布程序可以每次发布时,看到那些文件被修改,那些文件是新增,发布程序与版本库为基准,删除新增的文件。经过观看那些文件被删除,瞬间找到恶意脚本。

延伸阅读 《PHP 安全与性能》http://netkiller.github.io/journal/security.php.html

文件与代码监控

代码被植入,删除修改,怎样能第一时间知道。而不是亡羊补牢。延伸阅读 《植入式******检测解决方案》http://netkiller.github.io/journal/security.implants.html

就谈到此吧!

做者:netkiller(Neo) 时间:2015-05-28
-----------转自姜糖水的博客,地址:http://www.cnphp6.com/archives/90438#rd?sukey=cbbc36a2500a2e6c153d3f0da2b713640e8c021c8e3e32425ec3be65d6d8b9d73c5e34abe20c54313954928aefae1844

相关文章
相关标签/搜索