Ajax hacking是什么?与传统的xss有什么区别?
在十期发表《Ajax hacking》后,网友给我的反馈中关于XSS技术方面的问题主要由以下几个。为 什么在Ajax hacking中使用XSS?它与传统的XSS又有什么区别?它们各有怎么样的利弊端?大型网站的所 谓XSS漏洞是否为鸡肋?下面我们一起来详细分析下。
Ajax hacking
Ajax hacking这个名词最先出现在Billy Hoffman的一篇名为《AJAX dangers》报告中,他把samy 和yamanner这种攻击形式定义为AJAX hacking。而在此之前它们只是被说属于web2.0蠕虫(或XSSworm) ,但对这种攻击形式并没有一个明确的定义。这里我们暂以AJax hacking中的XSS进行一些深入的性讨论 。关于Ajax的其他攻击形式请到网上参看文章《Top 10 Ajax Security Holes and Driving Factors》或 者是翻译成中文的《细数Web2.0下的十大安全威胁》。
在传统的XSS攻击中,我们的目的通常是直接提权或者获取Cookies后提权,所以代码执行方式一 般是windows.open、window.location或iframe,于是它的两大弱点就体现出来了,不具有传播性和易暴 露性。在AJax hacking中利用Ajax这一种新技术,攻击方式及对象得以转变。其实绝大部分人在获得管理 员权限又拥有文件更改权限后所能做的也就是挂马,很少设计商业机密之类!而这一攻击则直接把矛头指 向客户端,由于数据全部是使用异步调取方式,所以具有很强的隐蔽能力;通过操纵已登录的用户权限, 可以直接对用户信息进行更改,甚至可以使该代码集合自动传播实现蠕虫功能。
XSS 利用方式
在传播的XSS攻击案例中,代码插入的利用方式一般是在URL和文本区域(textarea)中。但对于 日前大面积利用Ajax技术进行建站的站点来说,利用新形式的Ajax hacking技术可以将利用方式大体扩展 到URL域、input域、textarea域、embed域、css、rss、xml载体七种方式。
URL XSS
可以进行XSS的URL一般为"(域名)/(文件名)(文件格式)?(字段名)=(字段内容)"这种 形式,而且字段内容通常会在页面的某一个位置显示出来或者被调用。由于网站编写者的疏忽,没有把对 应的字段内容进行安全检测和过滤,而直接调用到页面上,使得我们只把字段内容替换成我们想要的XSS 代码即产生跨站。比如:
http://club.sohu.com/joke/1.htm? stra=但是这种方式一般需要诱使用户点击你事先伪造的链接,而链接你可以挂在论坛里或者以E-mail 的方式进行钓鱼性欺骗。
Input和textarea以及css XSS
input和textarea以及css XSS是我们所用到的方式中最广泛的几种,由于css实际上属于Dhtml的 一部分,所以它们的利用方式及绕过过滤特点也大体相同,我们将在后面着重进行相关的解释和实验。
Embed XSS
Embed XSS一般利用在允许插入视频,音乐以及flash的站点上,如果你链接到一个被恶意构造了 含有XSS脚本的flash文件,比如,然后我们构造一个特殊 的.swf文件,并在flash文件的动作里插入以Action Script引到的js或vbs代码。当用户访问该页面时既 产生跨站。
Rss以及Xml XSS
这种攻击一般利用在可以进行rss聚合的站点以及部分本地的rss解释器上(据说对本地的rss解释 器进行XSS,有获得主机权限的可能性,不过本人没有试过这个!),而且由于rss文件一般可以在任何站 点上被引用,所以想进行这类的攻击测试是很简单的事情,效果也相当明显。下面是对一个没有进行任何 过滤设置的本地调用远程rss.xml的实例效果,以及Google调用该rss的过滤效果。
代码插入方式
由于插入的脚本为js或者是vbs,所有一般需要由的关键字JavaScript、VbScript、expression比 如,但当接收鼠标或键盘响应时,这三个关键字可以省略掉,所以有以下利用方法或者等等。而且由于html并 不遵循xhtml的标准,所以可以有以下插入方式:
1、标签属性可以用双引号、可以用单引号、也可以可不用引号;
2、属性值可以大写;可以小写;也可以混合写;
3、可以插入回车、包括段末结尾符和换行符的两种、即char(10)和char(13)、tab空格;
4、如果是style形式还可以插入反斜线“\”、注释符“”;
5、可以将插入的代码转换成10进制、16进制;
6、由于禁止的不确定性,你插入的进制串可以进行一系列转化并可以随意搭配组合;
7、进字符“j”就可以有以下15种编码方法,而且还是不计字符的大小写。
\6A\06A\006A\0006A\00006A //java形式的16进制编码
jjjjj //十 进制编码
jjjjj //十 六进制编码
8、其他的编码方式,如htmlEncode和URLEncode对于html及URL的编码。
至于可以插入代码的html标签嘛……说句近乎疯狂的话——目前几乎所有可以插入属性的标签都 可以插入代码,比如。
在html标签中可以插入代码的属性一般为:src、style、dynsrc(常用于img和input中,用此属 性还可以插入视频等)、lowsrc(预载缩略图)、鼠标属性(如o n m o u s e o v e r )、键盘属性( 如onkeypress)、href属性(常用于a和link)、boby的onload属性、URL属性等。
过滤绕过方式
当然人家网站也不可能傻乎乎地让你输入这些代码,所以它们一般会对你输入的字符进行过滤。 所以我们编写好的代码并一定就能顺利的插入执行,很有可能某些关键的字符被过滤掉了,比 如"JavaScript"。如果只是这种单纯的过滤,那么绕过方法实在太简单,只要每当输入此字符时输 入"javajavascriptscript"之类就可以了。当然网站程序员依然不会这样傻,它们会进行种种过滤来防备 你,所以结合上面的"代码插入方式",你可能会总结出以下的绕过网站过滤系统的方法:
1、用控制字符的ASCII码填充
比如,如果你熟悉ASCII码,你应该 知道系统控制字符一共是33个,这里去掉一个头(null)和一个尾(del),其他31个字符 均可以顺利插入代码头部,对过滤系统进行混淆,并且不影响原代码执行,而且你依然可以用"代码插入 方式"中的"方案7"进行编码的任意转换。七种tab符 、换行符 、回车符 可以插到代码任何地方。
2、插入混淆属性
当我们进行一般的文字录入时会发现,并不是所有带"JavaSceipt"这样的字符都会被过滤掉。而是只有在html标签内的特殊字符会被滤掉,这使得我们有了令一套绕过措施,在插入代码的属性前面插 入另一混淆属性,并在该属性中插入让过滤系统误以为是标签结束符的字符,从而让过滤系统认为执行代码在html标签的外面。比如: //插入混淆的src属 性 //插入混 淆的双引号及 “>”符号//插入混淆的a 属性
3、用注释符分割
由于浏览器会忽略掉每种代码的注释符,因此如果我们在代码中的注释符就可以成功地欺骗过滤 系统并且不影响XSS代码的正常运行。比如: //css的注释符号 为,其中的内容会被忽略//css中忽略的符号还有“\”
exp/* //注释混淆后的样子
cmd下加sql账号和密码的方法 如何入侵IPC$?
这个服务器可以用sql溢出,可惜就是找不到进一步的入侵方法,因而一直也没有拿下来。今天在校盟看到一篇文章,说是在cmd下也可以中入sql账号和密码,方法如下:echo exec master dbo sp_addlogin & 39;rooto&
详情2018-03-04 12:29:47责编:llp 来源:驱动管家什么是私有云?私有云也是不安全的?
公有云私有云的交锋焦点无疑指向了数据安全问题。HyperStratus咨询公司首席执行官伯纳德·戈尔登(Bernard Golden)撰文指出,一个接一个的调查表明,对于公有云计算,安全是潜在用户最担心的问题。戈尔登本人在去
详情2018-01-26 17:05:23责编:llp 来源:驱动管家.net开发人员容易犯哪些安全错误?
微软已经为 Net环境添加了大量的功能,帮助开发人员创建安全的应用程序,例如,身份验证已经成为开发环境集成的一个功能,另外,默认情况下调试消息被禁用掉了。微软对安全的关注程度极大地影响了开发人员,促使
详情2018-01-24 15:38:36责编:llp 来源:驱动管家360浏览器的优点 360浏览器有什么漏洞?
产品官方:360安全浏览器是全球首款采用“沙箱”技术的浏览器,能够彻底避免木马病毒从网页上对你的计算机发起攻击。360安全浏览器完全突破了传统的以查杀、拦截为核心的安全思路,在计算机系统内部构造了一个独
详情2018-01-16 17:30:23责编:llp 来源:驱动管家ntfs文件系统的使用教程 ntfs文件加密文件夹的问题解答
我们知道NTFS文件格式可以实现对文件夹的加密,增强了文件的安全性,但因NTFS涉及的细节内容比较复杂,所以用NTFS加密后的文件由于我们的操作不当经常会出现一些问题,比如用户名丢失后、文件密码丢失了等等,都
详情2018-01-23 18:20:23责编:llp 来源:驱动管家硬件加密锁 u盘如何自制加密锁?
今天通过软硬兼施的方法,将廉价的硬件设备转化为系统的安
详情2018-01-29 13:30:17责编:llp 来源:驱动管家手工注入猜解用语 ascii逐字解码法
猜解表名:and exists (select * from 表名)猜解列名:and exists (select 字段 from 表名)UNION法:联合查询:select name,password,id from user union select user,pwd,uid from爆指定表名内
详情2018-02-06 11:03:54责编:llp 来源:驱动管家雷霆购物系统的安全性如何?存在哪些sql注入漏洞?
雷霆购物系统是国内一个使用比较广泛的购物系统,现在,我们就来看看它的安全性究竟如何吧!从网上下载7 08最新版的雷霆购物系统,现在我们来分析代码!!一、SQL注入漏洞我们先来看看vpro asp文件的部分漏洞代码
详情2018-03-02 14:19:39责编:llp 来源:驱动管家cmos设置的参数被debug毁了怎么办?可以采取编程实现
如果你只想 "15秒绿色环保型 "请直接看方法3:*如果你想对cmos有个深入的了解或揪出本文理解的不足,请看方法0,1,2,3-:)----CMOS (Award)密码简介与破解0--3法----计算机启动时,由存放在主板ROM中的bios将cmos
详情2018-01-28 20:24:45责编:llp 来源:驱动管家动易4.03漏洞在哪里?动易4.03漏洞的原理
动易4 03上传漏洞。2005-1-10 就出来了,一直没有公布。看黑客防线的攻关第3关用的是动易所有公布出来了。影响版本: 动易4 03上面的是动易的上传代码,从上面分析,我们可以看到,它明显存在着上传漏洞。重要的
详情2018-02-26 17:05:57责编:llp 来源:驱动管家
- Linux病毒的危害 Linux病毒如何防范?
- Win10系统显卡不兼容?Win10显卡驱动卸载教程
- 电脑网速不给力怎么解决?用海豚网游加速器给你的电脑加速
- 怎么在几何画板线段上快速构造三等分点
- 人体工程学鼠标键盘有哪些作用?人体工程学鼠标键盘的介绍
- 看完这个你就学会怎么选择电脑intel的cpu了
- AirPods耳机销售意外地火爆 将进军高端耳机市场
- 中国电商为何热衷做会员?看看亚马逊的数据经验
- 怎么在电脑上强制删除我的电脑中腾讯微云的图标
- WinXP硬盘有坏道怎么修复?修复硬盘坏道的方法
- 机箱风扇电源怎么接主板 机箱风扇接主板还是电源?
- 如何查找电脑文件?在电脑上查找不记得文件名的文件的方法教程
- 安装win7激活时应该怎么设置驱动器号呢
- 关于Proe两点间距离标注尺寸技巧方法分享
- 在excel表格中更改公式中定位的单元格更改不了怎么办
- 使用宽屏显示器怎么设置才能达到玩游戏的效果
- 固态硬盘有哪些优点?使用固态硬盘时怎么提升性能
- 三大运营商将会统一进行部署取消流量漫游费
- 特斯拉Model 3采用永磁电机
- 在win8电脑中怎么打开计算机的管理器?