XSS Virus 探究

XSS Virus 探究
XSS Virus 探究

XSS Virus 探究
?XSS Virus 探究 viki & 余弦

目录
? ? ? ? 一、关于演讲者 二、一些背景介绍 三、一种XSS Virus攻击模式 四、Q&A

关于今天的演讲者
关于今天的演讲者

一些背景介绍

Web应用的危险变迁
Web客户端安全
9客户端视图:HTML/XHTML/CSS、XML/XSL、Flash、 Flex等 9客户端逻辑:JavaScript、ActionScript等脚本语言 9数据传输:XML、JSON等 9核心技术框架:AJAX、DHTML等

XSS攻击 ?xss攻击越来越多 ?越来越多人意识到xss攻击的危害性 ?毫无夸大的危害性:

XSS攻击的危害性
? 挂马 ? 盗取用户cookie ? DOS客户端浏览器 ? 钓鱼攻击,高级钓鱼技巧 ? 编写针对性的XSS VIRUS,删除目标文章、恶意篡改数 据、嫁祸…… ? 劫持用户web行为 ? 进一步渗透内网 ? 爆发Web2.0蠕虫
? 蠕虫式的DDOS攻击 ? 蠕虫式挂马攻击、刷广告、刷流量、破坏网上数据……
? ……

XSS防御
? 攻防一直在持续 ? 有好的防御方案并不一定能实施的好 ? 程序员安全编码能力参差不齐 ? 大多数用户根本没听说安全界的私密事
? 用户pc平台上的杀毒过程、安全防御完全傻瓜化 ? 可是如何面对web平台上几乎是另一个世界的恶意脚 本——恶意的xss脚本

XSS Worm/Virus概览
? 05年的samy xss worm ? 接连发威6次的twitter xss worm ? 国内这两年开始流行的xss worm/csrf worm
? ? ? ? ? 多个sns社区:https://www.360docs.net/doc/ab402584.html,/https://www.360docs.net/doc/ab402584.html,/https://www.360docs.net/doc/ab402584.html, 多个blog空间:baidu空间/sohu blog/sina blog/网易blog 多个mail系统:qq mail/网易mail/139 mail 一些微博客:fanfou/jiwai ……………………………………

为何细谈XSS Virus ?这不是一个新概念 ?我们认为xss virus与pc virus有很多相似点 值得总结 ?可以不传播,而以更安静的方式去做坏事
? 传播性是xss worm的一个重要特性
?我们要构建xss virus的一种攻击模式
? 很多思想、技巧可以通用 ? 攻击的成败取决于:天时地利与人和!

一种XSS Virus攻击模式
1.Shellcode的存储 2.代码保护 3.自启动方式 4.一些真实的攻击 5.与外域通信 6.自我删除 7.利用web平台的原生态函数

一种XSS Virus攻击模式 ?以SNS这类WEB平台为例

一种XSS Virus攻击模式
? XSS Virus
? ? ? ? ? shellcode存储:留后门、隐藏shellcode代码等 代码保护 自启动方式 一些真实的攻击:盗取用户msn、qq账户信息 与外域通信的能力
? 实时接收外域发来的指令 ? 发送数据到外域
? 自我删除 ? 借用目标web平台各种原生api,精简代码

一种XSS Virus攻击模式
存储隐藏、潜伏,代码保护 程序自启动 盗号,盗取隐私信息,搞破坏,与外域通 信 自我繁殖,自我删除 擅于利用当前环境
PC Virus
XSS Virus
Windows/*nix OS平台
WEB OS平台

一种XSS Virus攻击模式
remote xss virus codz(shellcode) https://www.360docs.net/doc/ab402584.html,/j.js
xss exploit(attacke r page)
查看页面 victim page 注入exploit 植入shellcode 加载
SNS平台 https://www.360docs.net/doc/ab402584.html,
cookie/flash cookie/userData/etc local xss virus codz(shellcode)


ShellCode存储--方案
? 最常见的方式:加载远程域的js文件
?
? 存储在sns平台的数据库中
? 文章内容、个人资料、站内信等,依场景而定 ? 经典的占座网xss worm:通过一句话 eval($('#xxx').html());执行保存在文章内容中的xss shellcode
? 存储在客户端本地域中,重点介绍
? http cookie, userData, localStorage, flash cookie

ShellCode存储--http cookie 1
? 保存shellcode
function setShellCodz(codz){ var exp=new Date(); exp.setTime(exp.getTime()+365*24*60*60*1000); document.cookie='shellcode='+escape(codz)+';'+'expires='+exp.toGMTString(); }
? 执行shellcode
? 使用简单的字符串函数处理document.cookie,获取之前保存的 shellcode,并eval执行
? 删除shellcode
? 设置shellcode的cookie过期即可

ShellCode存储--http cookie 2 ?对于xss点出现在处理cookie的过程中,同 样可以留这类后门
? 只要能找到同域内各种类型的其它xss即可留下后门 ? 相对来说会比较隐蔽
?缺点:
? 每个cookie存储大小上限是4kb ? 用户使用浏览器删除cookie功能时就会清除后门 ? 无法跨浏览器

ShellCode存储--userData 1 ?保存shellcode
function setShellCodz(codz){ var a=document.all.evilDiv; //evilDiv为任意div的id值 a.addBehavior("#default#userdata"); a.setAttribute("value",codz); a.save("xeye");}
?执行shellcode
function getShellCodz(){ var a=document.all.evilDiv; //evilDiv为任意div的id值 a.addBehavior("#default#userdata"); a.load("xeye"); eval(a.getAttribute("value"));}

相关主题
相关文档
最新文档