首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

[TUP第20期]安恒刘志乐:“泄密门”带给我们的警示

[TUP第20期]安恒刘志乐:“泄密门”带给我们的警示

安恒信息安全服务部门经理刘志乐在活动中发表《“泄密门”带给我们的警示》主题演讲。


刘志乐演讲中表示,目前75%的安全隐患来自于Web应用系统所存在的安全漏洞,三分之二的WEB站点都相当脆弱,易受到攻击。Web应用安全严峻的现状。常见Web应用安全漏洞说明主要从两方面来阐述,一方面从权威的OWASP统计显示2010年名列前十的安全漏洞;另一方面,通过从漏洞产生原因、危害以及加固建议三个方面来描述目前常见的高危WEB应用安全漏洞。
从整体的安全产品防护、安全服务两个方面来阐述如何对WEB应用系统进行安全防护。安全产品防护主要是描述WEB应用安全产品的部署防护,安全服务主要是描述Web应用系统的安全服务体系概述、安全服务内容以及安全服务主要实施技术和工具。
以下是演讲实录:
今天跟大家一起交流外部应用方面的安全,以及这些安全的漏洞原因,会展现这些漏洞简单的演示,然后也会说一下怎么样防护这个安全。
用户数据泄露已被重视
首先我们看一看近期一个热点。去年有很多网站的数据都遭到了窃密这一块大家无论是在微博还是在媒体,还是在QQ都能看到。这些充分说明政府开始重视这一块,还有一些行业重视这一块。因为去年出了这个事情以后,我也去了很多地方,包括参加政府部门召开的一些会议,包括一些学术研究会议,给我的感觉就是每个单位当时正在坐领导位置,尤其是主管信息安全的这些领导,他们觉得坐的不扎实,如坐针毡。
同时国家也在这个方面做了一些重视,CSDN董事长曾经发表一个文章,他说80%网站都是存在漏洞问题,过去这个问题都存在,只不过没有人重视它、关注它而已,只不过这次泄密门事件,导致大家把眼球全部吸引到这个上面来,然后大家才知道,原来我们每天生活在如此不安全的社会里面。
作为国家这一块通讯部目前已经对一些站点已经进行了一些防护,包括要求一些搜索引擎,必须把银行的引擎排在第一位,防止一些钓鱼事件的发生,大家也众所周知,我不知道今天有没有百度的人在,只不过有时候排名会影响到使用者,会容易被钓鱼。
互联网安全现状
第二部分讲目前的安全现状。最近每一年都有一些国家的权威机构都会发布一些权威布局,包括一些行业知名的安全公司,也会出现一些安全形式的数据。这一块刚才前面蒋总的文章也提到了,外部的危机从2005年开始,那个时候更多人攻击手段还是基于以前传统的网络层的溜光、去发现断口上有没有问题。但是到了2005年左右开始,因为当时的人、整个社会他们已经认识到我要用防火墙把这些断口防护住。分别把什么东西放在内网里边,通过这个区域网域来控制,这个时候对于黑客来讲,他唯一能入侵的手段就是你对外提供了服务的应用系统。
因为你应用系统掉对外服务,你的断口在防火墙上面必须开启,那么这样攻击者就可以利用你开启了的断口,利用你应用系统自身的弱点,对你的应用系统发起攻击。这是2010年CNCERT的一份统计报表,这份统计报表现实了逐月的篡改。
这一些是网马的情况,我们经常收到一些短信告诉我们推销产品,或者是诈骗的,有时候我们的信息就是因为我们的电脑中了网马,我们自己的信息被人家窃取了等等。
这一块是另外一个统计报告,就是钓鱼。实际上钓鱼这块,从去年上半年中国银行的钓鱼事件出来以后,整个的包括国家大大小小的银行实际上对这一块还是蛮关注的。
漏洞的入侵手段与防范建议
我们目前工作中,整个发现的Web应用产品比较多的、危害比较大的一些漏洞。
第一类——SQL注入。这个SQL注入原理很简单,就是由于客户端的恶意攻击者,他把自己想注入的提交的恶意的参数,到了你的Wed服务器,你的Wed服务器对这个参数没有进行过滤和验证,直接把他的参数就放到了后端的DP服务器做SQL查询,这个时候就产生的注入。
这一块注入,我们看一下注入形式是什么。比如说就像这个地方,本身可以填一个ID,他返回客户端是adimin,我们看源代码原本查询的就要就是这么做的。大家看到这个ID直接从这边就过来了,没有进行过滤措施。这个时候作为我的话,就可以这样的。先加一个大引号,然后提交一下,这个时候就报错了,这个报错并不是应用系统报错了,而是后台的SQL数据库里报错了,报错了以后,应用系统的前台把这个报错直接报到前台给客户看到了。
对于攻击者来讲,这种没闭合或者闭合不闭合对他来讲没有多大意义。我们今天简单演示一下,我们用联合查询,比如说我们查询这张表里所有的信息,这个时候我就会把这张表里所有的数据查出来了,这个只是一个SQL注入的一个最简单的演示,可能SQL注入产生危害有很多。首先他能把数据查出来,能够把数据倒走。
对于这样的漏洞我们有如下一些简单的一些建议。这个建议肯定不完整,也因为本身我们今天只是一个简单的交流,不可能写一个长篇大论,来针对SQL注入说一大篇,我只能说简单的几方面。
第一个,你要检查用户的输入,因为大家都知道HDDP协议是一个纯文本协议,我们有句话讲叫永远不要相信用户的输入,这个输入不管是你他看得见的输入,还是他看不见的输入,这些东西都可以被攻击者作为攻击的参数。因为所有的东西,只要有一个代理工具都可以做到。
第二个,就是要转义用户的输入,把用户的输入进行转义,让他执行不了。
第三个,就是拒绝已经转义过的输入。
第四个,使用参数化的查询。就是JAVA都带这个功能,目前PHP没有怎么研究,这一块可以自动取做的。
第五个,是使用SQL的存储过程。这个方式并不能百分之百避免SQL注入,有一些动态的过程也会触发注入。你完全不能避免,有些地方可能有用你应用的需要,你还真就需要去拼接SQL查询语句,可以不拼接就不要拼接,用这个SQL存储实现。
第六个,SQL的权限。我也是程序员出身,比如说我在开发程序的时候,我肯定愿意数据库的权限用的连接词的权限越大越好,这样我只需要调整源代码,不需要调用权限,你要把你让他干什么活儿给他这个权限,不能给他更高的权限。
最后定期检查网站的安全漏洞,对你的网站进行一个修复。
第二类——跨站脚本。也是一种注入,只不过注入的语句从客户端发出到服务器,然后服务器没进行过滤,又把它的提交过来的参数又返回给客户端,客户端本身注入这些是什么呢?是JAVA的标准语言或者是标记,这样就产生是标记语言,而不是数据语言,这就是跨站。跨站曾经在OWASP2010是排在第一位的。
跨站我们应该怎么防护呢?首先跟注入是一样的,不要相信用户的输入,然后把用户的输入全部过滤掉。尽量在HTML代码中不要插入不可信的一些内容。对于需要插入的内容首先在进来的时候要检查,在输出的时候从服务器返回客户端的时候,要对它进行一个HTML编码,然后给他以后,他到客户端以后,就成了一个数据,就不会是标记。
表单绕过,说白了实际上是一种特殊形式的SQL注入。就是说原本这个地方是登陆的一个表单,输入用户名和密码,而且要输入正确的用户名和密码才能登陆进去。但是由于这个地方存在着漏洞,作为攻击者他就可以绕过这个限制,比如说我们看这边有一个模型。这种方式在过去一两年很多黑客愿意用这个。
针对表单绕过的防护措施,实际上跟前面所说的SQL注入的防护措施是类似的。这样用防护措施基本防护住了表单绕过。接下来是后台管理。后台管理本身这个后台很多情况下是对CMS的系统来讲,作为管理员登陆这个后台,发布一些新闻,这个时候这个后台管理如果说被攻击分子找到的话,他可能通过外来密码,或者说通过社会工程学登陆这个管理后台。这个管理后台还有一种就是危险比较大的,比如说我们这个地方是一个TOMCAT的一个管理后台,这个时候会让你输入用户名和密码,很多以前的只有时候TOMCAT就默认了,进了这个TOMCAT也有这个管理后台,这个时候可以把整个原本发布的程序可以自己发布新的应用。这个相当于是中间件的管理后台。
对于应用程序的管理后台,比如说我这个地方有一个JEECMS,一般一个管理后台如果说他可以直接进去,这些他里面会有一些资源,或者是模板,特就可以直接上传Wed SCL,就可以控制这个服务器。
对于后台的管理,你肯定要做印证,就是权限的策略的一个印证,再有就是把你管理后台不要放在公网上,就不要放在公网上,因为新闻的发布都是在内网里面做到的。这些管理后台不要总是用一些让人一下子能猜到的,你可以起一个比较复杂的名字,也不要上面有连接,让他不容易找到,虽然他也可能用一些字典,或者通过谷歌去查,但是总归这样你能加大他攻击的难度。
返回列表