当前位置:文档之家› web应用攻击技术

web应用攻击技术


Xss攻击方式
跨站攻击有多种方式,由HTML语言允许使用脚本进行简单 交互,入侵者便通过技术手段在某个页面里插入一个恶意 HTML代码——例如记录论坛保存的用户信息(Cookie), 由于Cookie保存了完整的用户名和密码资料,用户就会遭 受安全损失。 • XSS是针对客户端的攻击 • 本质上说,XSS和缓存区溢出,SQL注入攻击是类似的,最 终导致的是输入的数据被当成命令执行。 • 具体说,XSS就是利用各种手段,把数据部分的标签关闭, 然后加入各种类型脚本,使得客户端执行嵌入脚本。
SQL注入式攻击防范技术 ②程序员的防御措施 (2)限制表单或查询字符串输入的长度范围。如果 用户的登录名字范围在6-10个字符,那么不要认 可表单中输入的6个以下和10个以上的字符,从而 增加攻击者在SQL命令中插入有害代码的难度。 (3)检查用户输入的合法性,防止非法数据的输入
SQL注入式攻击防范技术 ②程序员的防御措施 (4)加密保存用户登录名称、密码等数据。加密输 入的数据后,再将它与数据库中保存的数据进行 比较,这就相当于对用户输入的数据进行了‚消 毒‛处理,用户输入的数据不再对数据库有任何 特殊的意义。
十大常见的WEB应用攻击
SQL注入(SQL injection) 跨站脚本攻击 恶意代码 已知弱点和错误配置 隐藏字段 后门和调试漏洞 参数篡改 更改cookie 输入信息控制 缓冲区溢出
一、SQL注入
就攻击技术本质而言,它利用的工具是SQL的语法,针对的是
技术 概述
应用程序开发者编程中的漏洞,当攻击者能操作数据,向应用 程序中插入一些SQL语句时,SQL Injection攻击就发生了。 所谓SQL注入式攻击,就是攻击者把SQL命令插入到表单(如 Web表单)的输入域或页面请求的查询字符串,欺骗服务器执 行恶意的SQL命令。
安全发展趋势——不仅以破坏为目的
过去:破坏
瘫痪
信用卡
泄露
身份信息
现在:窃取 过去的黑客:破坏——技术炫耀 现在的黑客:窃取——经济利益
网页篡改
Web应用攻击特点
攻击目标广泛
门槛低,相比于其他网络攻击难度小。
攻击成功以后经济收益大。 呈现工具化,自动化趋势。
成熟的黑客产业链
简单的SQL Injection攻击
假设的登录查询
SELECT * FROM users
WHERE login = 'victor' AND password = '123‘
假设的ASP代码
var sql = "SELECT * FROM users WHERE login = '" + formusr + "' AND password = '" + formpwd + "'";
简单的SQL Injection攻击
输入字符
formusr = ' or 1=1 – – formpwd = anything
实际的查询代码
--是结束符,后面变成注释,导致 此SQL语句恒成立,可以登陆后台
SELECT * FROM users WHERE username = ' ' or 1=1 – – AND password = 'anything‘
②判断数据库类型及方法:不同的数据库的函数、注入方法 都是有差异的,所以在注入之前,我们还要判断一下数据 库的类型。
③在以上的工作都做完了之后,就应该破解管理员帐号及密 码了。以下就是猜解的方法: 猜表名:加 and exists (select( *) from admin) and exists (select id from admin) *admin表中有个id的字段 and exists (select username from admin) *admin表中是否有username字段 and exists (select password from admin) *admin表中有个密码的字段password and exists (select id from admin where id=2) *admin表中是否有一个id=2的值
安全发展趋势——攻击来自应用层
攻击在网络层
过去
攻击在应用层
现在
Gartner报告:75%的攻击来自应用层 传统安全设备应用层防护功能单一,存在系统防 护短板
安全发展趋势——攻击来自应用层
攻击在网络层
过去
攻击在应用层
现在
Gartner报告:75%的攻击来自应用层 传统安全设备应用层防护功能单一,存在系统防 护短板
图2
CSRF(Cross Site Request Forgery 跨站脚本请求伪造)攻击 • CSRF攻击原理
躲避检测思路
各种编码(%号编码,utf-8编码,html编码) 注释符,空格,回车换行等特殊字符应用 攻击包分片
演示
实验内容:利用xss跨站攻击获得Cookie
三、CSRF(Cross Site Request Forgery 跨站脚本请求伪造)攻击 • CSRF攻击原理
图1
CSRF(Cross Sቤተ መጻሕፍቲ ባይዱte Request Forgery 跨站脚本请求伪造)攻击 • CSRF攻击原理
【演示】
跨站攻击的危害
窃取
Cookie
ActiveX Flash 内容
劫持帐户 执行 执行
强迫您下载软件 对硬盘和数据采取操作 ……
XSS检测和防御
• 开发 – 输入验证,输入编码,长度限制 • WAF检测方法 – 特征方法,特征+script语法方法 • 树立安全意识 – 超长的URL一般都比较可疑,不要随便乱点。 – 使用较安全的浏览器

Xss漏洞攻击原理
(1)脚本标记法 了解XSS的触发条件就先得从HTML(超文本标记语言)开始, 我们浏览的网页全部都是基于超文本标记语言创建的,如显示 一个超链接: <A也就是往HTML中注入脚本,HTML指定了脚本标记 <script></script>.在没有过滤字符的情况下,只需要保持完 整无错的脚本标记即可触发XSS,假如我们在某个资料表单提 交内容,表单提交内容就是某个标记属性所赋的值,我们可以 构造如下值来闭和标记来构造完整无错的脚本标记, "><script>alert('XSS');</script><" 结果形成了 <A HREF=""><script>alert('XSS');</script> <""></A>
影响范围
数据库:MS-Sql
是SQL语法,使得攻击普遍存在; 攻击代码的多样性:由于各种 数据库软件及应用程序有其自 身的特点,实际的攻击代码可 能不尽相同;
Server、 Oracle、Mysql、DB2、 Informix等所有基于SQL语言 标准的数据库软件; 应用程序:ASP、PHP,JSP、 CGI、CFM等所有应用程序;
-
Xss漏洞攻击原理
(2) 标记属性法 假如要在网页里显示一张图片,那么就要使用一个<img>标记 ,示例如下: <img src=" /xss.gif"> img标记并不是真正地把图片给加入到Html文档把两者合二为 一,而是通过src属性赋值。那么浏览器的任务就是解释这个 img标记,访问src属性所赋的值中的URL地址并输出图片。就 是因为浏览器不会检测src属性所赋的值,因此可以在这里大 做文章。javascript有一个URL伪协议,可以使用 ‚javascript:‛这种协议说明符加上任意的javascript代码 ,当浏览器装载这样的URL时,便会执行其中的代码.于是我们 就得出了一个经典的XSS示例: <img src="javascript:alert('XSS');">
-
Xss漏洞攻击原理
(3) 事件触发法 不是所有标记的属性都能用,标记的属性在访问文件才触 发的XSS,离开标记的属性还有事件能帮助我们触发XSS.只有 达到某个条件才会引发事件,img标记有一个可以利用的 onerror()事件,当img标记内含有一个onerror()事件而正好 图片没有正常输出便会触发这个事件,而事件中可以加入任意 的脚本代码,其中的代码也会执行.现在我们又得到了另外一 个经典的XSS示例: <img src=‚ http://xss.jpg‛ onerror=alert(‘XSS’)>
就风险而言,SQL
安全 风险
Injection攻击也是位居前列,和缓冲区溢 出漏洞相比,其优势在于能够轻易的绕过防火墙直接访问数据 库,甚至能够获得数据库所在的服务器的系统权限。 在Web应用漏洞中,SQL Injection 漏洞的风险要高过其他所 有的漏洞。
攻击特点
攻击的广泛性:由于其利用的
SQL注入攻击的具体实现①寻找注入点:尝试有传入参数的页面,测试是否有SQL注入 漏洞。在这里假设http://www.***.com/list.asp?id=258 代表有漏洞的网址。在其ID=258后面加一个’号,如果页 面正常返回,则表示网站程序员在编程时,过滤了单引号 。还可以加比较经典的and 1=1或and 1=2,通过页面返回 是否正常就可以判定是否可以注入。由于这里假设是可以 注入,所以页面返回错误提示: Microsoft OLE DB Provider for ODBC Drivers 错误 ‘80040e14' [Microsoft][ODBC SQL server Driver][SQL server]字符串的语法错误 在查询表达式 'ID=258'' 中。 /list.asp 行9
相关主题