登录   |   注册
    准考证打印   论文投票   报考指南   论文辅导   软考培训   郑重申明  
您现在的位置:  首页 > 软考学苑 > 信息安全工程师 > 信安上午综合知识 > 信安考点梳理 >> 正文
正文
信息安全工程师教程:Web安全威胁分类-注入
来源: 作者: 时间;2018-02-01 16:54:13 点击数: 尚大软考交流群:376154208
分类
国际权威机构Forrester 的统计数据表明, 67%的攻击是通过应用层的攻击。即是,最简单的网页浏览也有可能造成威胁,比如,单击含有病毒的网址、隐秘的图片,或者,单击下载某些免费的
<尚大教育,教育至上,人才为大:sdedu.cc>
分类
国际权威机构Forrester 的统计数据表明, 67%的攻击是通过应用层的攻击。即是,最简单的网页浏览也有可能造成威胁,比如,单击含有病毒的网址、隐秘的图片,或者,单击下载某些免费的软件、文件等,由于下载的软件或者文件中含有未知的恶意代码,当用户在运行程序或者打开这些文件时,恶意代码被启动就有可能造成用户个人信息丢失,甚至后台服务器系统出现漏洞给恶意攻击者窃取信息提供方便的大门。
开源Web 应用安全项目(OWASP) 是一个开放的社区组织。专注于讨论应用程序,代码开发的威胁讨论。TOP lO项目的目标是通过找出企业组织所面临的最严重的十大风险来提高人们对应用程序安全的关注度。其中罗列的是十大最有可能发生的应用漏洞,并不是具体的某一种攻击行为,了解它们可以更好地规避Web 应用安全风险。
注入
(1)应用描述
随着Web 技术的发展,协助程序员来开发应用程序的Web 应用程序也是越来越多,这样程序员不需要太强的代码能力,就可以很轻松地制作出功能和页面都比较完美的动态网站、数据库。由于程序员的编码能力不一样,很多程序员在开发程序的时候存在漏洞,这就给攻击者提供了便利的条件。系统在对用户输入的参数不进行检查和过滤,不
对用户输入数据的合法性进行判断,或者程序本身的变量处理不当,使得应用程序存在安全隐患。
攻击者通过在应用程序预先定义好的查询语句结尾加上额外的查询语句元素,欺骗数据库服务器执行非授权的任意查询。当应用程序视同输入内容来构造动态查询语句以访问数据库时,会发生注入攻击。
注入攻击漏洞,例如SQL, OS 以及LDAP 注入。这些攻击发生在当不可信的数据作为命令或者查询语句的一部分,被发送给解释器的时候。攻击者发送的恶意数据可以欺骗解释器,以执行计划外的命令或者在未被恰当授权时访问数据。
注入漏洞主要是提交数据库查询请求的攻击,与正常的用户访问没有什么区别,所以能够轻易地绕过防火墙直接访问数据库,甚至获得数据库所在服务器的访问权限。这就导致了任何能够向系统发送不信任数据的人,包括外部用户和管理员,都可能通过注入漏洞对系统进行访问,从而获得想要的数据。
(2) 可利用性
攻击者利用有针对性的解释器语法发送简单的、基于文本样式的攻击。几乎任何数据源都能成为注入的载体,包括内部来源。
(3)普遍性和可检测性
注入漏洞发生在应用程序将不可信的数据发送到解释器时。注入漏洞十分普遍,尤其是在遗留代码中。通常能在SQL 查询语句、LDAP 查淘语句、Xpath 查询语句、OS命令等中找到。其很容易通过查询代码发现,但是不容易通过测试代码发现。
(4) 影响
注入能导致数据丢失或数据破坏。未经授权状况下操作数据库中的数据,比如管理员口令,用户口令等信息;恶意篡改数据库内容,导入虚假错误信息;私自添加系统账号后者是数据库使用账号,使得没有授权的用户拥有授权的权限。
缺乏可审计性或是拒绝服务。在网页上植入水马、病毒,随意挂广告等造成网络通道堵塞。
注入漏洞优势甚至能导致完全主机接管。
(5) SQL 注入例子
目前常见的针对数据库的一种攻击方式。在这种攻击方式中,攻击者会将一些恶意代码插入到字符串中。然后通过各种手段一一比如,在查询语旬的末尾加上字符串一一将字符串传递到数据库的实例中进行分析和执行。只要这个恶意代码符合查询语旬的规则,在代码编译执行的时候,就不会被系统发现。
我们接触最多的注入漏洞就是SQL 注入攻击,以SQL 注入攻击为例来说明其危害性。SQL 注入技术在我国是从2002 年后开始大量出现,目前没有对SQL 注入技术的标准定义,微软中国技术中心从以下两个方面对其进行了描述:
·脚本注入式的攻击
·恶意用户输入用来影响被执行的SQL 脚本
SQL 注入就是攻击者通过把SQL 的命令插入到Web 表单递交或输入域名或页面请求的查询字符串中,最终达到让后台数据库执行恶意SQL 命令的目的,并根据程序返回的结果,获得某些攻击者想得到的数据。
Statement: = "SELECT * FROM Users WHERE Value = "'a_variable + '"
这条语句是一条很普遍的SQL 查询语旬,主要作用是实现用户输入一个员工编号然后查询出这个员工的信息。但是这条语句被改装之后呢,我们看看下面这条语句
SELECT * FROM Users WHERE Value = 'SAOOl '; drop table c_order--
这条语句中的SAOOl 后面的分号表示一个查询的结束和另一条语旬的开始。c_order后面的两个连字符,指示当前行余下的部分指示一个注释,可以忽略。如果修改后的代码语法正确,那么服务器将执行这段代码。系统在处理这条语旬的时候,将首先执行查询语旬,查到用户编号为SAOOl 的信息,然后数据将删除表c_order (如果没有其他主键等相关约束,这个操作就会成功)。


<尚大教育,教育至上,人才为大:sdedu.cc>
 
   各省软考办 
 
来顶一下
返回首页
返回首页
上一篇:信息安全技术知识:PGP鉴别与机密性
下一篇:信息安全技术知识:PGP机密性
 相关文章
 
 
跟贴共
笔 名 :   验证码:
网友评论仅供其表达个人看法,并不表明尚大教育同意其观点或证实其描述
距离2023年05月27-28日软考考试还有
尚大软考交流群:376154208
软考各地考务机构
历年真题汇总




各省市软考报名简章