ajax教程:Ajax 让网页木马“悄悄的执行”来源: 发布时间:星期四, 2008年6月19日 浏览:258次 评论:0
关于Ajax的执行,开发人员是这样想的“Ajax要做到,在用户浏览网页时应该感觉不到的它的执行(异步),不需要等待页面刷新就可以自动完成验证数据”,比如用户名是否可以注册等……关于Ajax的执行,开发人员是这样想的“Ajax要做到,在用户浏览网页时应该感觉不到的它的执行(异步),不需要等待页面刷新就可以自动完成验证数据”,比如用户名是否可以注册等。每当我想到“感觉不到的它的执行”这句话,就会联想到还有很多网络安全相关的东西(比如木马)都希望可以做到在用户感觉不到执行,或者可以在用户感觉不到的时候做些什么。 许多“研究网络安全的朋友”都应该感觉到,微软的操作系统已经很久没有像以前那样可以“ms05039.exe www.microsoft.com 7758”拿到SYSTEM权限了。于是大家都把目光放到了浏览器上,希望用户一旦浏览某个网页就能自动下载真正的木马服务端文件,然后在后台执行,这样的网页被成为“网页木马”。这样做有几点明显的好处:
于是各种各样的IE漏洞出现了,从刚开始想办法在用户浏览网页时“56K猫的网速竟然要在后台下载300K左右的木马服务端”,到各类“11k下载者”的出现,大家唯一的目的就是想做到“让用户感觉不到的时候执行”。也是出于这个目的,我决定再研究下把Ajax融入网页木马,让木马“悄悄的进庄,打枪的不要”。 研究Ajax首先要研究“XmlHttp”,来自MSDN的解释:XmlHttp提供客户端同http服务器通讯的协议。客户端可以通过XmlHttp对象(MSXML2.XMLHTTP.3.0)向http服务器发送请求并使用微软XML文档对象模型Microsoft? XML Document Object Model (DOM)处理回应。通常一个简单的Ajax是这样写的: 从第四步开始,浏览器就不再等待服务器返回的结果,而是继续处理“其他的事情”,这就是“用户感觉不到的时候(异步执行)”,等服务器返回结果时,才开始处理服务器返回的信息,所以这个时候最适合去服务器下载木马。关于异步执行,有个比较形象的比方,小李和女朋友上街,看到一家女士专卖店,小李不愿意进去,就在门口等,这个时候,他可以选择两种方式:1、在门口一直等着女朋友出来(同步执行),之后继续逛街;2、两个人事先商量好,然后闪人,等女朋友出来时会打电话叫他回来,之后继续逛街。 Xmlhttp对象有4个属性,用来描述服务器返回的不同数据类型,让JAVASCRIPT的变量接收。开始研究时,我有个思路: Javascript语言的变量是弱类型的,变量被定义后,初始化为什么类型,就是什么类型的变量。其中有一个属性“responseStream”,返回“Ado Stream” 对象,该对象有个方法用来把返回的数据保存为文件,可以完成“下载木马”这个过程。于是写了个脚本,把返回的对象alert出来,竟然没有返回object,而是发生错误,提示类型不支持。于是搜索“responseStream”的资料, MSDN里没有详细信息,使用“.Net2005”编译器调试时看不到返回类型,code.google.com里也找不到相关代码(哪位大侠有相关可以操作responseStream的资料,麻烦给一份)。
0
相关文章
读者评论发表评论 |
|