我总能在身边看到一桩桩安全事故,不要想多了,这里当然是应用安全事故了(幽默一笑)。
如:有人向我抱怨,他们的系统中多了一些莫名其妙的手机号(这些手机号可能并不真实存在)注册用户;网站应用的首页被替换了(标语就是“我们是害虫,我们是害虫”嘎嘎,这些攻击者也够幽默的);更有甚者网站下多了一堆莫名奇妙的文件;当然我还遇到有不怕死的攻击者公然敲诈勒索的。
软件安全在国内已经提了很长一段时间了,但是更多是组织领导强调,下面适时地做做表面功夫,如进行简单的安全扫描,根据扫描工具给出的建议进行一些补漏。当然,这能解决一大部分最基本的安全问题,但实际你的应用真的安全了吗?只要我们认真,可能就会发现一个个令人心惊的安全问题。我不禁心里狂吼:你娃要遭,应用安全弱的我看起来都害怕。
我们的开发员是伟大的,因为他们从无到有的开发出了一款应用,可能这款应用号称能对公司的发展带来关键性的突破作用。但,突然有天,安全门出现了,迎来了一群神秘的狂徒(后面都以狂徒代表应用攻击者),整个公司的命运被他们所左右。这时,再去重新审视安全性,那造成的损失可能直接就让你滚蛋,没有如果,没有然后,只能黯然离场。
我经常发现,很多应用存在很多令人心惊的安全门,静静地迎接着狂徒们的到来。如下面这些:
1、登录缺乏保护机制,用户可以暴力破解。很多用户密码的复杂性并不高,现在计算机处理能力飞速发展,要暴力破解一些简单的密码并不需要花费多长时间。
2、短信验证码过短,没有安全防卫措施,留待验证失效的时间过长。如4位数字的随机验证码,要进行暴力破解也就几分钟的事情。
3、接口返回敏感信息,如生成的短信验证码、银行口令密码等。这些都是非常低级的错误,但往往依然有人在犯这些错。
4、使用的第三方插件、框架在发布安全漏洞后,没有被及时关注并更新补丁或版本。
5、生产环境上的后台,使用用户admin,默认数字密码也是屡见不鲜。这在一些知名大企业都存在,几年居然没有出现问题,有时我觉得奇迹与我并不遥远。
6、调用重要的接口,不需要任何的安全认证,这真是不忍直视。
上面只罗列出一些浅显,让人心惊的安全门。类似的安全门还非常多,让应用处处充满了安全危机,成为了狂徒们的天堂。
往往这些安全问题不是某一款安全工具能够扫描出来的,而应该在程序设计之初就进行规避。否则,我只能把你所为当成别有用心。