
Formed in 2009, the Archive Team (not to be confused with the archive.org Archive-It Team) is a rogue archivist collective dedicated to saving copies of rapidly dying or deleted websites for the sake of history and digital heritage. The group is 100% composed of volunteers and interested parties, and has expanded into a large amount of related projects for saving online and digital history.
History is littered with hundreds of conflicts over the future of a community, group, location or business that were "resolved" when one of the parties stepped ahead and destroyed what was there. With the original point of contention destroyed, the debates would fall to the wayside. Archive Team believes that by duplicated condemned data, the conversation and debate can continue, as well as the richness and insight gained by keeping the materials. Our projects have ranged in size from a single volunteer downloading the data to a small-but-critical site, to over 100 volunteers stepping forward to acquire terabytes of user-created data to save for future generations.
The main site for Archive Team is at archiveteam.org and contains up to the date information on various projects, manifestos, plans and walkthroughs.
This collection contains the output of many Archive Team projects, both ongoing and completed. Thanks to the generous providing of disk space by the Internet Archive, multi-terabyte datasets can be made available, as well as in use by the Wayback Machine, providing a path back to lost websites and work.
Our collection has grown to the point of having sub-collections for the type of data we acquire. If you are seeking to browse the contents of these collections, the Wayback Machine is the best first stop. Otherwise, you are free to dig into the stacks to see what you may find.
The Archive Team Panic Downloads are full pulldowns of currently extant websites, meant to serve as emergency backups for needed sites that are in danger of closing, or which will be missed dearly if suddenly lost due to hard drive crashes or server failures.
CVE-2010-2883分析
这个漏洞分析的很迷茫,很蛋疼。漏洞原因用了一天也就熟悉了,但是为了找到从
stacat开始到触发shellcode,用了接近半个月的时间。想了各种各样的方法也没有解决到底是怎么触发的。环境
根据exploitdb
分析
根据exploit-db问题的根源出在
CoolType.dll在解析SING Table时造成溢出,简单的来看一下
CoolType.dll对SING的解析伪码,理解一下原理将
v19的数据附加到v25末尾,很明显,如果v19没有做长度校验就很容易造成溢出。pdf样本分析
具体
SING字体相关的说明可以看一下adobe文档现在来具体分析
msf.pdf看看是如何造成溢出的,利用pdfstreamdumper提取出数据,010查看一下字体文件在具体分析一下
SING Table数据根据github上的解析库afdko可以找到
SING Table的具体定义根据定义,可以发现
uniqueName的偏移位置为16字节exploitdb说是uniqueName造成的溢出,我们在0803DD9F下断点,对照一下数据可以发现
eax指向的就是SING Table偏移
16字节处正好是uniqueName,根据msdn没有经过验证
strcat会直接溢出[ebp],再来看一下ida反汇编代码对应的汇编代码
超过
0x104肯定会出错,具体出错的位置,我始终无法跟踪到!其实这里从9.4.0的修复版本中也能看到其中
sub_813391E,长度肯定不会超过0x104不过可以根据这个确定一下溢出长度
即使不知道具体的出错位置,
+8的位置是将来跳转的位置,这个是可以确定的。其实出错的原因,我能想到的无非就是两种
SEH handler
测试过
SEH handler,在我有限的知识体系里,应该先调用ntdll!KiUserExceptionDispatcher在这里下断点,但是却没有断到虚函数指针
这里在函数
sub_8016BDE中的sub_801BB21看到了,调试了一下,但也不对以上两种方法都尝试了,其中也尝试过用
windbg preview的TTD调试,但是遇到了这个问题,最终都没有确定具体的原因,很伤。再来说一下
shellcode,首先需要利用icucnv36模块,因为其在各个版本中的地址是一样的,可以将+8的位置溢出到该模块,从而绕过DEP,但是有一点需要注意,icucnv36模块中没有常规的直接绕过DEP的函数,可以利用其中的CreateFileA -> CreateFileMapping -> MapViewOfFile -> memcpy这种方法其实在我日常分析恶意代码中比较常见。具体怎么利用就不细说了,网上都有。
到这里,该漏洞就分析完了
参考
SING 结构定义
Brief Analysis On Adobe Reader SING Table Parsing Vulnerability (CVE-2010-2883)
泉哥的书