本文转载自微信公众号「虞大胆的叽叽喳喳」,作者虞大胆 。转载本文请联系虞大胆的叽叽喳喳公众号。
成都创新互联公司是一家集网站建设,东阳企业网站建设,东阳品牌网站建设,网站定制,东阳网站建设报价,网络营销,网络优化,东阳网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
今天回忆下web开发安全问题,以前在新浪博客时,遇到最多的攻击是XSS和SQL注入攻击。
博客最核心的功能就是富文本发文,允许执行html语义标签,如果处理不当,就能执行js语句,导致各种的xss攻击。
那时候解析文章内容没有很好的dom解析库,堵住漏洞非常辛苦和被动。
另外攻击就是sql注入,破坏过一些表数据,但大范围的故障没有出现过。
这二个攻击在互联网刚开始的时候非常流行,最重要的原因就是它们的宿主环境是浏览器,浏览器能够执行html和js。SQL攻击同样如此,如果宿主环境不能打印sql执行结果,攻击力度会小很多。
而现在是APP时代,都是接口调用,即使接口中含有html字符,APP也不会去执行;同时API接口的鉴权也非常严格,很少出现SQL注入攻击。
当然HTTPS的推广和普及也让http服务安全提高了不少,至少很难出现残暴的篡改攻击了。
所以现在攻击的土壤就是企业内部网站了,因为它们大多数运行在浏览器之下,那如何解决呢?
从Web安全的角度看,cookie和session的设计本身就是有问题的,以前写过一篇文章,后面可以发到公众号中。
xss攻击本质上也是结合cookie一起形成危害的,今天同事提了个方法,现在很多cookie不会校验它的出处,如果能够绑定cookie和设备(比如设备号或者IP),那么攻击就小了很多,比如发现攻击者附带的cookie值和IP与存储在redis中的cookie和IP不一致,就拒绝访问。
对于内部系统,可以采取二次auth验证,比如nginx就有http basic auth验证;或者登陆才能访问内部系统。
攻击分为主动攻击和被动攻击,主动攻击不可怕,总能找到方法解决,而被动攻击就非常危险,在关键时刻可以给人致命一击。
在出现安全问题的时候,首先要判断服务器有没有被人控制,如果被控制了,危险非常大;如果仅仅是利用应用程序漏洞,那么危险性就会小很多。
服务器一旦被攻击,那么数据库密码等关键信息就会泄露,数据库就相当于裸奔了,就算数据库隔离的好,还是抵挡不住别人一条DELETE语句;为了减少损失,有两个建议。
第一就是数据库用户授权要做的更精细一点;另外使用proxy代理数据库,通过proxy来抵挡一些攻击。
应用层的攻击主要利用软件的漏洞,或者考验编程人员的能力。所以经常升级系统和软件,使用相对成熟的代码框架,严谨编程,能够减少很多问题,大概90%的安全问题还是由于代码的原因。
当然口令安全也非常重要,有很多理论知识,但只要掌握几点就能解决大部分问题,口令一定要是强口令,避免暴力破解;另外就是口令存储要使用更严格的密码学算法,不要简单的sha1然后存储到数据库中,很容易字典攻击;最后在应用层的防攻击也很重要,不过现在很少直接口令登陆了,都是验证码或者微信授权。
当然很重要的一个习惯就是经常性变更口令,能够解决很多问题,其实有的时候出现一个安全问题,最后才发现,口令泄露了,根本不是技术问题。
对于服务器本身安全,就是尽量少装软件;少开外网端口(比如mongodb,es一定不要绑定外网端口),即使开了,也要做白名单;使用防火墙做更细颗粒度的控制;服务之间做隔离,比如web服务器被攻击了,但web服务器访问的数据库密码由更安全的硬件存储,这样危险性就少了很多。
有的时候大家很注意外部安全,但内网之间的隔离也非常重要,不能畅通无阻。
隔离还有个好处就是出现问题后,可以快速在其他机房复制服务,从而减少故障的影响。授权也很重要,服务之间的授权方式一定要在云端,不能依赖本地。
当然核心安全还是数据库资源,数据是一切之本。
最后没有绝对的安全,都是博弈,如果网站规模不大,可能没人愿意黑你。而如果规模化了,那么就树大招风了。提前做好准备,以便应对,不至于出现问题的时候手足无措。
网页标题:聊一聊Web开发安全
浏览地址:http://www.shufengxianlan.com/qtweb/news31/505281.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联