转载

程显峰:保障双11不掉“底裤”的5种安全武器

一年一度的“双11”即将到来了!各家电商网站已经使出“浑身解数”来刷屏做广告,不断刺激那些“剁手党”的脑神经。毕竟前期投入了巨额的资金,所以电商网站最怕网站因流量猛增导致宕机或者遭遇DDos攻击。如果系统存在安全漏洞,导致用户数据泄露,那就更要命了。

在当今时代,IT技术更新迭代的速度很快,攻击的方式也变得越来越隐蔽和致命,系统的安全问题被越来越多的企业所重视。如果电商网站“双11”当天出现安全问题,就会导致前期所有的资金都“打水漂”了。所以,我们需要给网站加上“保护盾”。以下列举了5种安全问题的解决策略:

1. 全站上SSL,并且做SSL安全检查

相信很多人都听说过SSL和HTTPS。SSL是目前最常用的的一种安全解决方案,是为网络通信提供安全及数据完整性的一种安全协议,其中HTTPS中的“S”指的就是SSL。但是SSL也分三六九等,不是所有的SSL都是安全的。

如果实施SSL来加强网站的安全性,可以首先访问 https://www.ssllabs.com ,在线检查一下网站的安全等级。这也是国际上比较权威的一家认证机构,当然,不是所有的电商网站,都能够达到A的评级。读者感兴趣的话,可以自己去动手去查询一下,你可能会发现有几个非常知名电商网站的安全等级并不是很高。

程显峰:保障双11不掉“底裤”的5种安全武器

为什么SSL这么重要呢?因为SSL证书不仅可以显示网站的真实性,还可以在网站用户输入密码与用户名时对信息进行加密,而不被黑客截取。即使能够截取到也是密文,也看不到真实的用户名与密码。同时SSL还能够有效抵御中间人工具。所以,如果我们访问一个带有SSL安全认证的网站,从安全性考虑,对我们自己的数据安全是一种很好的保护策略。

如果想使用这种安全策略,那么就需要进行SSL认证。通过SSL认证后,可以实现数据信息在客户端和服务器之间的加密传输,可以防止数据信息的泄露。保证了双方传递信息的安全性,而且用户可以通过服务器证书验证他所访问的网站是否是真实可靠。对于电商网站来说,高安全的加密技术及严格的身份验证机制可以确保部署SSL证书的网站安全可靠,所以建议电商网站在全站使用HTTPS,不要再用HTTP了。

这里也多补充一点,就是谷歌2014年8月份,在其官方博客上就宣布他们将HTTPS/SSL纳入其搜索算法机制中,采用HTTPS/SSL安全认证的网站将会被谷歌给予更多的信任,从而有利于网站在谷歌搜索结果中的排名提升。

当然,SLL证书也是国际通用的,目前主要国际上比较知名的有 GlobalSign 、 VeriSign 、 GeoTrust 这三家,笔者也发现了几个新的认证网站,包括 Instant SSL 、 RapidSSL 等等。

 2. WAF:可以有效抵抗DDos攻击,保障高可用

Web Application Firewall(WAF)也称网站应用级入侵防御系统,利用国际上公认的一种说法:Web应用防火墙是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品。

当然,WAF也代表了一类新兴的信息安全技术,用以解决诸如防火墙一类传统设备束手无策的Web应用安全问题。因为WAF工作在应用层,因此对Web应用防护具有先天的技术优势。基于对Web应用业务和逻辑的深刻理解,WAF对来自Web应用程序客户端的各类请求进行内容检测和验证,确保其安全性与合法性,对非法的请求予以实时阻断,从而对各类网站站点进行有效防护。WAF的特点主要包括异常检测协议、增强的输入验证、及时补丁、状态管理等等,当然WAF还有一些安全增强的功能,可以用来解决WEB程序员过分信任输入数据带来的问题。

目前国内主要采用WAF这种解决方案的厂商有安全宝(已被百度收购)和加速乐(知道创宇系腾讯所投)。这两家公司一个有了“亲爹”,一个认了“干爹”;,在行业内的知名度也比较高。当然,他们提供的产品也很类似,都能够帮助企业客户防范黑客入侵和DDoS攻击,以及其他一系列针对Web系统的安全威胁。在保障网站的可用性方面,WAF的解决方案还是比较强的。

 3. 保护数据安全:动态防御的安全解决方案RASP(实时应用自我防护) 

RASP(Runtime Application Self-Protection)工作原理如下图所示,这种安全策略在可疑行为进入应用程序时并不拦截,而是先对其进行标记,在输出时再检查是否为危险行为,所以能够大大减少误报和漏报的概率。

程显峰:保障双11不掉“底裤”的5种安全武器

RASP也是目前业界已知的对SQL注入防护最高的一种手段,而且识别率非常高,它能够有效地解决电商网站的数据安全和泄露问题。众所周知,对电商的而言,最重要的资产就是“数据”,如果数据篡改或者泄露,就会导致灾难性的后果。

由于RASP对技术的要求很高,目前国内外真正做这个方面的公司极少。国外的厂商有Waratek,国内也有一家公司 OneASP 在做此类的产品。他们主要提供了基于云的应用程序自我保护服务,能够为软件产品提供实时保护,使其免受安全漏洞所累。

4. 使用静态检查工具,在上线之前检查代码问题

静态检查工具就是在代码上线之前,进行充分的静态检查,也应该把静态检查成为系统持续集成的一部分。比如数组越界或者空指针问题都可以使用静态检查工具来搞定。商业级的静态检查工具包括惠普的Fortify、IBM Security AppScan Source Edition、BugScout、Insight、Contrast from Contrast Security、Parasoft Test、Seeker等等。也有一家新兴的公司 Coverity ,他们的产品能够解决影响源代码分析有效性的很多关键问题,诸如构建集成、编译兼容性、高误报率、有效的错误根源分析等等。

其实大多数商业产品的功能上也很类似,只是支持的语言有所差别。当然,这些产品有一个共同的特点就是“贵”,如果不想投入太多的话,也可以使用开源的产品。以下简单介绍几款比较知名的开源工具:

PMD :是一种开源分析Java代码错误的工具,它附带了许多可以直接使用的规则,利用这些规则可以找出源程序的许多问题。目前它支持 Java、JavaScript、PLSQL、Apache Velocity、XML、XSL等多种语言。

FindBugs:FindBugs是一个开源的静态代码分析工具,主要寻找java中的bug。它检查类或者 JAR 文件,将字节码与一组缺陷模式进行对比以发现可能的问题。 FindBugs 的当前版本是3.0.1,需要在JRE(或JDK)1.7.0或更高版本上才能运行。

SonarQube :是一个用于代码质量管理的开源平台,用于管理源代码的质量,可以从七个维度检测代码质量;通过插件形式,可以支持包括java、C#、C/C++、PL/SQL、Cobo、JavaScrip、Groovy等等二十几种编程语言的代码质量管理与检测。

程显峰:保障双11不掉“底裤”的5种安全武器

限于篇幅的原因,本文不再一一列举,大家可以访问维基百科中的Source Code Analysis Tools (源代码分析工具)可以进行详细的了解。其中开源工具还包括谷歌的CodeSearchDiggity、微软的PreFast和FxCop、RATS、 OWASP SWAAT Project、Flawfinder、Brakeman、RIPS、Codesake Dawn、VCG等等。

不过,整体而言,由于静态检查工作无法在程序运行时进行检查,所以存在一些“先天性”的不足,而且商业级的产品费用过于昂贵,如果使用开源的产品,误报率也很高。所以建议电商网站,可以作为一个安全策略的补充。如果电商网站“不差钱”的话,完全也可以部署使用商业级的解决方案。

5. 在主机上安装“安全审计”,并且定期执行

最后介绍一个“鲜为人知”的安全策略,就是在主机上安装“安全审计”的组件。这种方式的好处在于:一旦发生变动,对系统进行非法访问的话,就会发生报警。对电商网站的系统管理员来说,为了保证系统的安全,每天都需要进行软件补丁管理、恶意软件扫描、文件完整性检查、安全审查、配置错误检查等等工作。为了帮他们在“双11”能够稍微轻松一点,这里推荐一款开源的安全审计工具 Lynis 。

Lynis能够帮助系统管理员和安全顾问来评估Linux / Unix系统的安全等级。因为它本身直接运行在主机之上,所以它的性能要远超过一般的漏洞扫描功能。Lynis能够运行在几乎所有的Unix版本上,包括AIX、FreeBSD、HP-UX、Linux、Mac OS、NetBSD、OpenBSD、Solaris等等。甚至还可以运行在Raspberry Pi(树莓派)或者QNAP的存储设备上。

程显峰:保障双11不掉“底裤”的5种安全武器

一旦lynis开始扫描系统,它就会执行许多类别的审查工作:包括系统工具,内核,内存和进程,用户、用户组和验证,同时还有文件系统、存储、数据库、日志和文件等等。因为lynis有一个检查列表,所以它执行的非常详细,就像政府部门的审计工作一样,非常的细致。但是需要定期执行,并及时修补指出的问题,才能保证网站的高安全性。

关于作者

程显峰 ,OneAPM公司首席运营官,之前曾任积木盒子技术VP,擅长软件研发团队的管理。作为知名技术顾问,曾服务于花旗银行、蓝色光标、国家电网等多家大型集团。致力于推动开源软件在国内的发展,是MongoDB和Docker技术在国内早期的推动者,并翻译有《MongoDB权威指南》和《深入学习MongoDB》等书籍。经常在技术会议发表演讲或担任出品人,拥有悉尼大学硕士学位和哈尔滨工业大学学士学位。(责编/仲浩)

正文到此结束
Loading...