UPYUN 邵海杨:高危时代的互联网系统安全

浏览:
字体:
发布时间:2015-08-07 09:49:39
来源:

2015年互联网行业安全问题频发,诸多P2P、O2O及云服务等平台都成了DDOS流量攻击等黑客行为的受害者,安全因此再次成为行业最热的议题。而互联网企业,尤其是创业企业,在层出不穷的攻击手段面前显得十分力不从心。高危环伺,我们如何保护自身?在由UPYUN、同盾科技、漏洞盒子& Freebuf联合主办的“互联网平台的黑客和欺诈防御”沙龙上,UPYUN运维总监邵海杨分享了自己的经验和见解。

UPYUN运维总监邵海杨

安全隐患“祸首”都有哪些?

一、硬件:常见的比如打印机驱动、各种硬盘固件里面也会有病毒。

二、系统级别:这个是可控的。如果用Windows的话,就要小心一点,因为漏洞比较多,而且很多机房人员都掌握了服务器的口令,本身就不安全了。而linux服务器就好得多了,比如说取消明文密钥,用密钥+口令,最小化安装,md5篡改扫描。端口越少越好,而弱口令是肯定不能有的。

三、基础软件:比如说Kernel或者OpenSSL,看它们是否存在漏洞。在UPYUN,我们会自己裁剪操作系统、自己编译内核,对OpenSSL我们会单独进行编译。这点的原因是系统的SSL版本过低。当然,像SSH这种依赖原来的SSL的程序,我们也会将它一起升级。

四、应用程序:这就五花八门了,各种语言的都会有。比如说PHP 5.3最近曝光了一个漏洞,再比如Tomcat,它是个漏洞大王,更像是个业务程序,像注入攻击,跨界攻击这种,直接就能把服务器和数据库搞爆掉了。为预防这种情况,可以请专业的白帽团队帮忙做渗透测试。

五、利益驱动:这种比较狠,黑客压根不会和你打招呼,都是直接黑数据库的。因为他们获得的数据可以卖钱,直接就是脱库。还可能是为了报复,这种就更危险了。

UPYUN高可用系统安全防范措施

面对这么多的威胁和隐患,UPYUN采用什么样的应对策略呢?

一、精简系统。linux版本建议用红帽系统或Ubuntu LTS版本。UPYUN会在红帽的大版本基础上再做裁剪。其实很多漏洞都是因为安装了不必要的程序才出现的。真正关键的像Kernal级别的,比如SSH,如果缺了它,linux就用不了了,这些都是久经考验的。最怕的就是像samba、CUPS这些,很不常用,既然UPYUN是做服务器的,那就干脆砍掉它们。

UPYUN精简系统上是没有编译环境的,也没有gcc,make之类,而是通过公司内部一台母系统编译成二进制,这就是精简系统。当然,精简系统并不是容易做到的,它里面有很多窍门。总之,系统要做的越小越好,越快越好。

二、定制内核。内核一般来说要越新越好,越新的内核越可以享受到一些先进的软件设置、硬件驱动、新的特性等,就比如说文件系统的改进、驱动程序的升级。但话说回来,太新的也不能用,可能引火自焚。所以,做什么样的选择要靠自己权衡。举个例子,UPYUN前段时间在做网络的拥塞算法的改进,通过升级内核提升了15%,使用Hybal又可以提升5%,这就是新内核带来的软件红利。但是对于Kernal的选择有一定的技巧,比如你一定要选择偶数版本,它的小版本最好是30、40或50级的,这说明它是一个长期在支持的版本,如果你追求稳定的话就应该使用它。

三、及时更新。为什么UPYUN的系统没有基于LFS,而是在Red Hat的大版本上做?这是因为需要依赖Red Hat的更新,它在安全方面以及软件开发方面的实力是不容小觑的,可以帮助我们节省很多精力。比如说上一次的OpenSSL“心脏出血”,甚至不用等到第二天,它就出了升级补丁。后来UPYUN全部改成了静态编译,不再依赖系统本身了。

四、内外隔离。UPYUN有自己做的防火墙EasyFirewall。而UPYUN的云存储,就是用的纯内网,和外面的CDN是有隔离的,使用的是物理交换机隔离。UPYUN运维的跳转机,都是通过VPN拨入到内网。

此外,还有一些架构设计,主要是对付DDoS或者是CC攻击。首先是了解负载均衡的策略,可以通过用各种各样的Proxy。这个最主要的目的就是把源站隐藏起来,因为一旦源站被攻击,将必死无疑。不管是100M、1个G、甚至10个G的源站带宽,拉下来的线只有一根,无非是这根线粗还是细。但是对黑客来说,由于利益驱动分分钟打你10多个G。这样只有一根线是防不住的,必须要在上一层进行防御。这个上一层就是路由器,它类似四通八达的高架,因为可以让你直接从这一条到另一条,只有路由器有这个能力把数据引入黑洞。但是路由器很昂贵,你也没有那么多线路资源,更不要指望运营商为你这样的小公司在路由器上添加规则了,他们封你IP的时候,就已经是放弃你了。如果用不起路由器,可以多准备几条路,就像UPYUN的CDN现在已经有127个节点,相当于有127个“洞”,被攻击一个就丢掉一个,反正带宽足够多。对于一般的小公司来说,是不会有足够的资源来做这个的,解决之道就是找专业的CDN公司帮你做,比如说UPYUN。

UPYUN自建防火墙EasyFirewall

五、系统监控&脚本监控。以CC攻击为例:一般互联网上的请求incoming比较小,比如说一个request要一个图片,这样的请求头是很小的,但从服务器端吐出去的数据比较大。而一旦攻击到来,incoming会突然飚上去,incoming的请求是模拟海量请求,这种是有素质的黑客,可以去跟他较量一下,和他拼响应时间。这是因为他的CC进来时,你的网卡不会马上卡死,但必须第一时间去做出反应。

第一,利用Nginx的C模块,去统计1~3分钟的连接数,计算这个连接数的频率。如果是超标的,就马上启动分析程序,抓他的IP、链接之类的特征,做名单的过滤。这样可以保证你的主机在被攻击到无响应之前快速反应。第二,检是测到这种变化后,可以发一个求救信号出来给UPYUN,UPYUN会在DNS把你的点摘掉,进行DNS解析后调用到其他节点上。所以脚本系统监控一定要做到位,这非常重要。第三,是沙箱运行。比如说虚拟主机,有泄漏也不会去影响其他东西的安全,可以把危害降低到最小,典型的例子像Docker。

代理软件UPYUN用的很多,早期是Squid,现是Nginx。但是UPYUN在做防WAF和CC攻击的时候用HAProxy多一点。这些都是偏重于Web容器,这意味着它的整个软件设计要对HTTP做完整的支持。

大家都知道,在互联网领域HTTP是最重要的一个协议。HAProxy是支持HTTP头语法解析的,只分析HTTP头的效率就很高了,因此它的转发速度是最快的。但HAProxy不支持存储,像Squid,Varnish,ATS都是支持存储的,可以挂几个T的硬盘做存储,但是HAProxy没有。

如果是偏防御的,就要把HAProxy放在前面,后面跟上这些软件;如果容量不是很大,建议用Varnish,直接上几十个G的内存做缓存就可以了。对UPYUN来说,一个单节点至少要承载40个T以上,这时Varnish就不能用了,所以UPYUN用ATS做内存,SSD,磁盘的三介质缓存。不同的软件是有不同偏重的,可以搭配组合适用于不同场景。

专业的事,给专业的人去做

UPYUN的主营业务主要是在CDN云分发,云存储和云处理上。UPYUN现在的安全工作是跟乌云平台合作,乌云相当于UPYUN的安全顾问,会帮UPYUN做一些漏洞检测,并且一年做一次体检。

UPYUN以前都是单打独斗,碰到黑客也做过一些防御的方案,做的心力交瘁。之后发现,做了那么多工作,还不如黑客打一次赚的钱多。不如放弃掉一些灰色产业链的客户,集中精力做好我们的业务模型,使用多节点架构设计来引流分散攻击,以不变应万变。此外,这也是因为互联网最终会是一个细分市场,大家都投入精力去做最有价值的事情。

声明:东方联盟网站刊登/转载此文出于传递更多信息之目的,并不意味着赞同其观点或论证其描述。

>更多相关文章
24小时热门资讯
24小时回复排行
资讯 | QQ | 安全 | 编程 | 数据库 | 系统 | 网络 | 考试 | 站长 | 关于东联 | 安全雇佣 | 搞笑视频大全 | 微信学院 | 视频课程 |
关于我们 | 联系我们 | 广告服务 | 免责申明 | 作品发布 | 网站地图 | 官方微博 | 技术培训
Copyright © 2007 - 2024 Vm888.Com. All Rights Reserved
粤公网安备 44060402001498号 粤ICP备19097316号 请遵循相关法律法规
');})();