分类 ‘技术文章’ 下的日志

Anehta -- hook任意javascript函数

作者: 刺

其实,JS中最简单的hook是直接重载目标函数。在之前提到的“JSON Hijacking”中就是使用的这种方法。

简单来说,就是把目标函数重新定义一遍,这样就会覆盖掉原来的函数,当函数执行时,就会跑去执行新的函数了。

但是这种方法效率不高,且通用性不好,所以我在Anehta 中重新实现了一次通用的hook函数。

Anehta 中的hook方法包括三个:hook、unhook、injectFn

Alexander Sotirov逆出来的MS08-067问题函数伪代码

作者: tombkeeper

这个Biu漏洞分配给了小四。小四说,不必着急,一定会有人指着这个扬名立万,可以稍微等等。果不其然,吃完午饭上来,就有人放PoC出来了。

昨天晚上,“Father of China PT”又问我想不想写ms08-067的代码。我说这么赶着写这个干嘛呀,咱们也不急着下大雨。“Father of China PT”说:这个漏洞大家都在盯着,写了就流芳百世了。我说:关键是想流芳百世的人那么多,咱们又不急用,等两天,各种代码肯定会乌泱乌泱铺天盖地而来,就 跟当年ms03-026一样,咱们可以捡个现成。

关于MS08-067的一点细节

作者: 刺

这个漏洞就不介绍了,已经沸沸扬扬了。

首先milw0rm上那个exp的编译问题,作者在里面放的些小trick很容易fix,主要麻烦的是midl编译idl文件后,在VC6环境下编译可能出现rcpt库的错误。可能是SDK的版本导致的,云舒用最新的SDK(好像是2008?)编译成功了。

Anehta的水印(Watermark)机制

作者: 刺
Anehta中采用了一种同机识别的技术,我在项目中将其称为“水印”(Watermark).

看过我的录像演示的人应该有印象,效果如下:

如果一个客户端被打上了水印,那么,不管客户端删除了cookie、缓存,抑或是切换了各种不同的浏览器,其水印都不会变化。

换句话来说,就是常规的清除上网痕迹的措施,都无法清除掉anehta给客户端打上的水印。

Anehta -- Boomerang(回旋镖),如何将反射型XSS变成持久型XSS:论跨域获取cookie

作者: 刺
Anehta中有许多的具有创意的设计,Boomerang ,回旋镖模块,正是其中一个。

回旋镖模块的作用,是为了跨域获取本地cookie。

Boomerang模块是专门针对IE设计的,对于Firefox的情况,可以使用xcookie模块,稍后会讨论。

Boomerang的工作原理:我们知道,浏览器被XSS攻击后,攻击者可以用js或其他脚本控制浏览器的行为。这时候如果我们强制浏览器去访问站点B上一个存在XSS漏洞的页面,就可以继续用B站上的XSS_B控制用户的浏览器行为; 那么把整个过程结合起来,简单表示如下: