0xSIGILL/CVE-2017-14187_PoC_ARMv7

GitHub: 0xSIGILL/CVE-2017-14187_PoC_ARMv7

针对FortiOS特定版本的CVE-2017-14187本地权限提升漏洞的概念验证代码,通过USB物理接触和LD_PRELOAD注入技术实现受限shell逃逸并获取root权限。

Stars: 1 | Forks: 0

# CVE-2017-14187 PoC 针对 FortiOS 5.6.0 至 5.6.2、5.4.0 至 5.4.8 以及 5.2 以下版本的本地权限提升概念验证
由 fnsysctl 和 USB 触发(因此需要物理访问权限)。
此 PoC 通过利用 CVE-2017-14187 拉起本地 root shell。
## 分析文章 [韩语](https://velog.io/@roskomnadzor/CVE-2017-14187-%EC%B7%A8%EC%95%BD%EC%A0%90-%EB%B6%84%EC%84%9D%EA%B3%BC-PoC)
[英语](https://velog.io/@roskomnadzor/Write-up-for-CVE-2017-14187-Jailbreak-FortiGate-with-a-USB-drive)
TL;DR
1. fnsysctl cp /usb/payload_path_file /etc/ld.so.preload
2. fnsysctl ls -> LD_PRELOAD 注入 -> 任意代码执行 -> LPE(受限 shell 逃逸)
## 从源码构建 ``` git clone https://github.com/0xSIGILL/CVE-2017-14187_PoC_ARMv7.git cd CVE-2017-14187_PoC_ARMv7 make ``` 然后按照说明操作即可。

[...或者您可以直接在 github release 上获取预编译版本!](https://github.com/0xSIGILL/CVE-2017-14187_PoC_ARMv7/releases/tag/initial) ## 使用方法 1. 准备一个 USB 闪存盘。该 USB 闪存盘必须具有 MBR 分区以及 FAT32 或 FAT16 文件系统。 2. 将下载的预编译版本解压到 USB 闪存盘,或者将 build 目录中的内容复制到您的 USB 闪存盘。 3. 将其插入存在漏洞的 FortiGate 设备。 4. 通过 admin webui 打开控制台。 5. 获取 system_admin 权限。如果您不知道这是什么,请查阅官方 Fortinet 文档 ["config system admin"](https://help.fortinet.com/fadc/4-4-0/cli/Content/FortiADC/cli-ref/config_system_admin.htm) 6. 输入 "fnsysctl cp /usb/ld.so.preload /etc",然后输入您的 super_admin 账户凭据。 7. 输入 "fnsysctl ls" 或任何您想要的命令。它将安装一些用于 Busybox shell 的符号链接。再试一次。然后您将获得一个 shell。 此 PoC 安装了许多用于调试的实用工具。 Dropbear、GDB、neofetch 等等! ## 免责声明 면책 조항 本项目出于教育目的,旨在演示 FortiOS 中的 CVE-2017-14187 漏洞。严禁用于非法活动、违反规则或未经授权的有害活动。
이 프로젝트는 FortiOS에 존재하는 CVE-2017-14187 취약점을 시연하기 위한 교육적 목적으로 만들어졌으며, 불법적 활동이나 규칙을 위반하는 행위, 또는 기타 허가받지 않은 유해한 활동에 사용하는 것을 금지합니다.
本项目按“原样”提供。我不承担任何明示或暗示的法律责任及任何形式的保证。
이 코드는 그 자체로만 제공되며, 어떠한 종류의 명시적, 또는 묵시적인 보증이나 법적 책임이 제공되지 않음을 명시합니다.
在 GNU General Public License v3.0 (GPLv3) 下分发。
GPLv3 라이선스 하에 배포됩니다.
有关更多详细信息,请查看 LICENSE。
세부 사항을 보려면 LICENSE를 참조하세요.
FortiOS®、FortiGate® 是 Fortinet, Inc. 的注册商标。
FortiOS®, FortiGate®는 Fortinet, Inc.의 상표입니다.
本项目与 Fortinet, Inc. 无关。
이 프로젝트는 Fortinet, Inc.와 연계되지 않았습니다.

해당 프로젝트는 대한민국 법률을 준수합니다. 이 코드는 공격이나 전산 침해를 위하여 설계된 것이 아니며 개인이 직접 소유한 기기에 물리적 접근을 통해 보안 연구를 위한 디버깅 환경을 구축하는 것에 목적이 있습니다.
标签:ARMv7, CVE-2017-14187, Exploit, fnsysctl, FortiGate, FortiOS, LD_PRELOAD注入, LPE, PoC, USB攻击, Web报告查看器, 任意代码执行, 受限Shell逃逸, 嵌入式安全, 暴力破解, 本地提权, 漏洞分析, 物理安全, 网络安全, 路径探测, 防火墙安全, 隐私保护, 验证代码