首页 > 代码库 > 常见Web应用攻击原理与威胁分析

常见Web应用攻击原理与威胁分析


目前常用的针对应用漏洞的攻击已经多达几百种,最为常见的攻击为下表列出的十种。

十大攻击手段
应用威胁负面影响后果
跨网站脚本攻击标识盗窃,敏感数据丢失…黑客可以模拟合法用户,控制其帐户。
注入攻击通过构造查询对数据库、LDAP 和其他系统进行非法查询。黑客可以访问后端数据库信息,修改、盗窃。
恶意文件执行在服务器上执行 Shell 命令 Execute,获取控制权。被修改的站点将所有交易传送给黑客
不安全对象引用黑客访问敏感文件和资源Web 应用返回敏感文件内容
伪造跨站点请求黑客调用 Blind 动作,模拟合法用户黑客发起 Blind 请求,要求进行转帐
信息泻露和不正确的错误处理黑客得到详细系统信息恶意的系统检测可能有助于更深入的攻击
被破坏的认证和 Session 管理Session token 没有被很好的保护在用户推出系统后,黑客能够盗窃 session。
不安全的木马存储过于简单的加密技术导致黑客破解编密码隐秘信息被黑客解密盗窃
不安全的通讯敏感信息在不安全通道中以非加密方式传送黑客可以通过嗅探器嗅探敏感信息,模拟合法用户。
URL 访问限制失效黑客可以访问非授权的资源连接黑客可以强行访问一些登陆网页、历史网页。




攻击一:代码执行攻击

  描述

  当输出或者触发服务器端代码时,漏洞植入到代码中。在有些不严密的Web应用程序中,用户可以通过修改应用程序发布到留言板或留言簿,有时可能是注入的应用程序本身的脚本语言代码的服务器端文件。

  危害

  用户可能会执行与Web服务器权限外的任意系统命令。

  

攻击二:Cookie操作攻击

  描述

  Cookie信息很容易被攻击者解密。由于Cookie是利用了网页代码中的HTTP或者META的头信息进行传递的,因此可以改变存储在客户浏览器中的设置。攻击者修改Cookie信息,以欺诈的手段进行输入验证。

  危害

  通过利用此漏洞,攻击者可以进行固定会话攻击。在一个固定会话攻击中,攻击者使用他人的信息进行会话,然后以用户身份登录到目标服务器,最后再消除登陆会话的ID。

  

攻击三:CRLF注入/ HTTP响应拆分攻击

  描述

  该脚本很容易被将CRLF命令注入到系统中。HTTP头的定义就是基于"Key: Value"的结构,用CRLF命令表示一行的结尾。这就意味着攻击者可以通过CRLF注入自定义HTTP 头,导致其可以不经过应用层直接与服务器对话。HTTP响应拆分漏洞是一种新型的Web攻击方案,它重新产生了很多安全漏洞包括:Web缓存感染、用户信息涂改、窃取敏感用户页面、跨站脚本漏洞。攻击者可以发送一个或几个HTTP指令迫使漏洞服务器产生一个攻击者构想好的输出。它可以让服务器误把几条HTTP请求看成一次完整的HTTP请求来解释。

  危害

  一个远程攻击者可以注入自定义的HTTP头。例如,攻击者可以注入会话Cookie或HTML代码。这种行为可能导致跨站脚本攻击固定会话攻击。

 

攻击四:跨站脚本攻击

  描述

  跨站脚本(也称为XSS攻击)是一个漏洞,攻击者可以发送恶意脚本(通常以JavaScript的形式)到另一个用户。由于浏览器无法分辨此信息是否可信,入侵者运用脚本将Cookie保存了完整的用户名和密码资料保存到记录页面中。

  危害

  XSS可使用的技术有JavaScript、VBScript、 ActiveX、 或 Flash, 且通常通过页面表单提交注入到web应用中并最终在用户的浏览器客户端执行。

 

攻击五:目录穿越攻击

  描述

  目录穿越漏洞允许攻击者访问受限制的目录可以访问Web服务器的根目录。

  危害

  通过利用目录穿越漏洞,攻击者在一个Web服务器上使用这个软件除了可以访问服务器的根目录外还可以访问目录里面的数据,导致Web服务器完全妥协。

  

攻击六:列入攻击(?)

  描述

  这个脚本包含一个用户提供的有确定名字的数据文件。这个数据未经正确验证就被传递。

  危害

  远程攻击者可以通过在本地远程控制文件资源和,或者执行与该Web服务器的权限外的任意脚本代码。

  

攻击七:LDAP注入漏洞攻击

  描述

  LDAP是轻量目录访问协议,它是基于X.500标准的开放式标准协议。当一个Web应用程序没有正确消除用户提供的输入信息,是很有可能被攻击者改变LDAP语句的设置。

  危害

  攻击者能够修改LDAP声明,这一进程将运行与组件执行的命令相同的权限。(如数据库服务器、Web应用服务器、Web服务器等)。这可能会导致严重的安全问题,如可以查询权限外信息的权利,修改或删除LDAP树里面的任何信息。

  

攻击八:PHP代码注入攻击

  描述

  PHP代码注入漏洞,允许攻击者将自定义代码注入到服务器端脚本引擎中。通过此漏洞,攻击者无论在何时都可以控制全部输入的字符串,把一个"eval()"函数调用存储到字符串中,试用版本将执行此代码参数。

  危害

  用户可能在服务器端执行注入的恶意PHP代码。它可以运行系统命令,允许系统读取PHP代码或类似的功能。

  

攻击九:远程XSL攻击

  描述

  该脚本很容易受到远程XSL控制。攻击者可以到XSL文件路径控制此脚本,其中可能包括恶意的XSL文件。

  危害

  远程攻击者可以通过远程来控制本地的XSL文件。攻击者还可以利用XSS(跨站点脚本攻击)来控制本地文件,甚至在某些情况下还可以执行PHP代码。

  

攻击十:脚本代码暴露攻击

  描述

  它可以读通过使用脚本文件名作为参数,这个脚本的源代码。看来,这个脚本包含一个确定的名字是使用用户提供的数据文件。这个数据是不正确验证之前被传递给包括功能。

  影响

  攻击者可以收集敏感信息(数据库连接字符串,应用程序逻辑)通过分析源代码。这些信息可以被用来发动进一步袭击。

  

攻击十一:SQL注入攻击

  描述

  SQL注入攻击是一个漏洞,攻击者可以通过操纵服务器端用户输入的SQL语句。当一个SQL注入接受用户输入的Web应用程序,直接放入一个SQL语句,不正确地筛选出危险的信息。这是目前互联网上应用的一个最常见的应用层攻击。事实上,尽管网络应用相对脆弱,但此漏洞相对容易防范。

  危害

  攻击者可以通过此漏洞来操纵系统上任意的SQL语句。这可能会危害数据库的完整性或者暴露敏感的信息。 根据所使用的后端数据库,SQL注入漏洞导致不同程度的攻击数据或者访问系统。它可能不只是现有的查询操作,或者是任意数据联盟、使用子查询、追加额外的查询。在某些情况下,它可能会读出或写入文件或控制系统执行上层命令。 如Microsoft SQL Server的某些SQL服务器包含存储和扩展程序(数据库服务功能)。如果一个攻击者能够访问这些程序有可能危及整个机器。

  

攻击十二:XPath注入漏洞攻击

  描述

  该脚本很容易受到XPath注入攻击。

  XPath注入攻击是一种通过用户提供的XPath查询语句,利用网络技术来构建网站。

  危害

  未经认证的攻击者可以提取一个完整的XML文档来使用XPath查询。这可能会损害数据库的完整性,泄露敏感信息。

  

攻击十三:盲目SQL注入(定时)攻击

  描述

  攻击十一与攻击十二的混合体。

  危害

  未经认证的攻击者可以执行任意SQL系统及未经保护的XPath语句。这可能会损害数据库和完整性或者泄露敏感信息。



原文出自【比特网】,转载请保留原文链接:http://sec.chinabyte.com/22/11617522.shtml


本文出自 “RichyLu____记录” 博客,请务必保留此出处http://richylu.blog.51cto.com/1481674/1894036

常见Web应用攻击原理与威胁分析