Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
cve-2018-1335 — CENG 325 - Принципы информационной безопасности и конфиденциальности | Kitploit
Инструменты/GitHubGitHub/canumay/cve-2018-1335
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеКомандование и УправлениеОбучение и Образование
GitHubcanumay/cve-2018-1335

cve-2018-1335

CENG 325 - Принципы информационной безопасности и конфиденциальности

Репозиторий
145 лет назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Университет Анкары Йылдырым Бейазыт, кафедра компьютерной инженерии

CENG 325 - Основы информационной безопасности и конфиденциальности

CENG201 OOP Project

Участники группы

@canumay @aslihann @ezgigucuyener @mburakdonmez

Ссылки

NVD - CVE-2018-1335

Exploit DB - Apache Tika-server < 1.18 - Внедрение команд

Rhino Security Labs - Эксплуатация CVE-2018-1335: Внедрение команд в Apache Tika

Metasploit

Отказ от ответственности

Эксплойт-код написан исследователем в области кибербезопасности David Yesland @Daveysec и должен использоваться только в образовательных целях.

Этап 1 – Исследование уязвимости

a. Краткое описание уязвимости

  • Тип: Внедрение команд
  • Коэффициент воздействия: Оценка воздействия уязвимости составляет 5.9 по метрикам воздействия CVSS. Все три аспекта — конфиденциальность, целостность и доступность — имеют высокий уровень.
  • Оценка серьезности: Оценка серьезности уязвимости составляет 8.1 по базовым метрикам CVSS. (CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H)
  • Затронутые версии уязвимого приложения: от Apache Tika версий 1.7 до 1.17
  • Что означает тип уязвимости
    • Опишите тип уязвимости и обсудите, чем он отличается от других типов уязвимостей Тип уязвимости — внедрение команд. Это связано с тем, что уязвимые приложения передают неочищенные пользовательские данные в системную оболочку, что позволяет выполнять вредоносный код. Если сравнить эту уязвимость с внедрением кода, можно выделить некоторые различия. Например, внедрение кода позволяет атакующему использовать свой собственный код, который выполняется приложением. При внедрении команд атакующий изменяет функциональность приложения, что позволяет пользователям выполнять системные команды.

b. Способ эксплуатации уязвимости

  • Какие типы атак можно реализовать после срабатывания уязвимости: После срабатывания уязвимости мы можем легко создать обратную оболочку, и с помощью этой оболочки мы можем выполнять все команды, доступные пользователю, запустившему сервер Apache Tika.
  • Как атакующий эксплуатирует уязвимые системы с помощью данной уязвимости: Сначала атакующий должен определить, работает ли сервер с уязвимой версией Apache Tika. Затем атакующий генерирует вредоносный HTTP-заголовок и код на JScript перед отправкой PUT-запроса к уязвимой HTTP-конечной точке, что заставляет сервер Apache Tika выполнить вредоносный код, используя свою собственную функциональность.
  • Используется ли уязвимость в эксплойт-китах: Да, эта уязвимость доступна в эксплойт-ките Metasploit.

Этап 2 – Код эксплойта

a. Найдите или создайте код эксплойта, использующий уязвимость

b. Выделите уязвимые фрагменты кода и объясните, почему они уязвимы

Сервер Apache Tika формирует команду для выполнения, используя значения, предоставленные пользователем в запросе для запуска OCR на изображениях. Это позволяет пользователям манипулировать командой и выполнять вредоносный код. В данном случае config.getTesseractPath() извлекает заголовок X-Tika-OCRTesseractPath и добавляет его в начало команды. Хотя строка tesseract.exe добавляется в конец предоставленного пользователем пути, пользователь может заключить свой путь в двойные кавычки (") чтобы отбросить следующую строку tesseract.exe. Это позволяет пользователю запускать любые исполняемые файлы на сервере.

Сформированная команда:

root@kitploit:~
"calc.exe"tesseract.exe C:\Users\Test\AppData\Local\Temp\apache-tika3299124493942985299.tmp C:\Users\Test\AppData\Local\Temp\apache-tika7317860646082338953.tmp -l eng -psm 1 txt -c preserve_interword_spaces=0

Встроенный в Windows CScript.exe — это язык сценариев, который принимает имя файла сценария, запускает его и игнорирует остальные аргументы. Если мы можем предоставить сценарий, предназначенный для cscript, мы можем выполнить его на сервере. Сервер Apache Tika берет наше изображение, предоставленное в теле запроса, и сохраняет его во временный файл для запуска OCR, поэтому вместо отправки бинарного изображения мы можем напрямую отправить строку, и строка будет сохранена как бинарные данные. Но сервер Tika проверяет, является ли бинарный файл изображением, за исключением типа файла jp2, в этом случае он сохраняется напрямую. Этот файл будет передан как аргумент исполняемому файлу cscript. Но расширение файла все равно будет .tmp, а нам нужно .jscript или .vbs. Чтобы обойти это, мы можем указать cscript запускать JScript независимо от расширения файла. Сервер Tika также передает config.getPageSetMode() в команду, которая отправляется пользователем в заголовке X-Tika-OCRLanguage. Если мы заменим его строкой //E:Jscript, cscript запустит сценарий как JScript независимо от расширения файла. И, наконец, строка, предоставленная в теле запроса, будет полезной нагрузкой для выполнения, которая также может вызвать другую консоль для полного доступа к системной оболочке.

Окончательная сформированная команда:

root@kitploit:~
"cscript.exe"tesseract.exe C:\Users\Test\AppData\Local\Temp\apache-tika3299124493942985299.tmp C:\Users\Test\AppData\Local\Temp\apache-tika7317860646082338953.tmp -l //E:Jscript -psm 1 txt -c preserve_interword_spaces=0

Простая полезная нагрузка для вызова оболочки на JScript:

root@kitploit:~
var oShell = WScript.CreateObject("WScript.Shell");
var oExec = oShell.Exec('cmd /c calc.exe');

Этап 3 – Выполнение

a. Выполните найденный или созданный код эксплойта:

Сервер Apache Tika 1.17 работает внутри целевой виртуальной машины.

Мы можем получить доступ к серверу с нашей хост-машины по IP-адресу 192.168.233.167.

Затем мы выполнили созданный код эксплойта с полезной нагрузкой calc.exe, чтобы запустить калькулятор внутри целевой машины, демонстрируя возможность выполнения любого вредоносного кода внутри целевой машины. Кроме того, с помощью обратной оболочки мы можем создать интерактивный сеанс оболочки на целевой машине.

b. Каковы результаты выполнения кода эксплойта:

Как мы объяснили выше, с помощью этого эксплойта мы, по сути, выполняем программу-калькулятор внутри целевой машины, но, обладая возможностью удаленного выполнения кода, мы можем делать все, что захотим, на целевой машине с привилегиями пользователя, запустившего сервер Apache Tika. Например, мы можем получить доступ к файлам пользователя, отслеживать его активность и даже сделать снимок экрана или сфотографировать с помощью веб-камеры, если она есть.

c. Как можно убедиться, что уязвимость действительно существует:

Эта уязвимость уже сообщена надежными источниками, такими как NIST, а также подтверждена и исправлена самим Apache. Но чтобы доказать это, мы можем провести еще одно PoC-доказательство с использованием metasploit.

Сначала мы подтвердили, что установленная версия является уязвимой.

После подтверждения версии мы можем настроить наш сеанс metasploit с правильным IP-адресом и портом и выполнить команду check, чтобы проверить, уязвима ли цель.

Наконец, мы можем выполнить команду exploit, чтобы запустить эксплойт, и подтвердить, что оболочка активна, введя dir в оболочку. С этого момента единственным ограничением являются привилегии пользователя, запустившего сервер Apache Tika.

Скачать инструмент