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

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

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

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

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

Категории

Все категории
Loading categories
zkar — Анализатор протокола сериализации Java на Go, который анализирует, выгружает и создает полезные нагрузки десериализации с поддержкой гаджетов ysoserial и библиотекой для манипуляции данными. | Kitploit
Инструменты/GitHubGitHub/phith0n/zkar
Генерация полезной нагрузкиАнализ уязвимостейЭксплуатацияАнализ Бинарных Файлов
GitHubphith0n/zkar

zkar

Анализатор протокола сериализации Java на Go, который анализирует, выгружает и создает полезные нагрузки десериализации с поддержкой гаджетов ysoserial и библиотекой для манипуляции данными.

Репозиторий
653544 месяцев назадПроверено Kitploit

Популярное

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

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

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

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

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

ZKar

ZKar — это инструмент анализа протокола сериализации Java, реализованный на Go. Этот инструмент всё ещё в разработке, поэтому полной документации по API и руководства по внесению вклада пока нет.

ZKar предоставляет:

  • Парсер и просмотрщик полезных нагрузок сериализации Java на чистом Go, не требует CGO или JDK
  • Преобразование протокола сериализации Java в структуру Go
  • Библиотека Go для манипуляции данными сериализации Java
  • В разработке: реализация ysoserial на Go
  • В разработке: парсер, просмотрщик и манипуляция байт-кодами классов Java
  • В разработке: реализация RMI/LDAP на Go

📦 Установка

Использовать ZKar просто. Используйте go get для установки ZKar вместе с библиотекой и её зависимостями:

root@kitploit:~
go get -u github.com/phith0n/zkar

Далее используйте github.com/phith0n/zkar/* в вашем приложении:

root@kitploit:~
package main

import (
  "fmt"
  "github.com/phith0n/zkar/serz"
  "log"
  "os"
)

func main() {
  fs, _ := os.Open("./testcases/ysoserial/CommonsCollections6.ser")
  defer fs.Close()
  serialization, err := serz.FromReader(fs)
  if err != nil {
    log.Fatal("parse error")
  }

  fmt.Println(serialization.ToString())
}

Здесь приведён пример того, как прочитать существующую полезную нагрузку и изменить её на полезную нагрузку с избыточным кодированием UTF-8.

💻 Утилита командной строки

ZKar также предоставляет утилиту командной строки, которую можно использовать напрямую:

root@kitploit:~
$ go run main.go
NAME:
   zkar - A Java serz tool

USAGE:
   main [global options] command [command options] [arguments...]

COMMANDS:
   generate  generate Java serz attack payloads
   dump      parse the Java serz streams and dump the struct
   help, h   Shows a list of commands or help for one command

GLOBAL OPTIONS:
   --help, -h  show help (default: false)

Например, вы можете дампнуть полезную нагрузку CommonsBeanutils3 из ysoserial следующим образом:

root@kitploit:~
$ go run main.go dump -f "$(pwd)/testcases/ysoserial/CommonsBeanutils3.ser"

asciicast

🛠 Тесты

ZKar — это хорошо протестированный инструмент, прошедший все тесты разбора и перестройки гаджетов, сгенерированных ysoserial. Это означает, что гаджет, сгенерированный ysoserial, может быть разобран ZKar, а разобранные структуры могут быть преобразованы обратно в байтовую строку, равную исходной.

Примечание: Для разбора полезной нагрузки JDK8u20 необходимо добавить флаг --jdk8u20 к команде dump. Поскольку полезная нагрузка не является допустимым потоком сериализованных данных, необходимо сообщить ZKar о патче данных через этот флаг.

📝 Планы

  • Парсер и генератор байт-кодов Java
  • Поддержка гаджета JDK/JRE 8u20
  • Генератор полезных нагрузок сериализации
  • Реализация RMI/LDAP на Go
  • Поддержка чтения/записи функции избыточного кодирования UTF-8

⚖️ Лицензия

ZKar распространяется под лицензией MIT. См. LICENSE

👀 См. также

  • SerializationDumper: Инструмент для дампа и перестройки потоков сериализации Java и содержимого пакетов Java RMI в более удобной для чтения форме.
  • ysoserial: Инструмент для создания полезных нагрузок, эксплуатирующих небезопасную десериализацию объектов Java.
  • Java-Deserialization-Cheat-Sheet: Шпаргалка по уязвимостям десериализации Java.
Скачать инструмент
ГаджетПакетРазборПерестройкаВремя разбора
AspectJWeaverysoserial✅✅80.334µs
BeanShell1ysoserial✅✅782.613µs
C3P0ysoserial✅✅98.321µs
Click1ysoserial✅✅573.298µs
Clojureysoserial✅✅72.415µs
CommonsBeanutils1ysoserial✅✅461.15µs
CommonsCollections1ysoserial✅✅64.484µs
CommonsCollections2ysoserial✅✅508.918µs
CommonsCollections3ysoserial✅✅564.071µs
CommonsCollections4ysoserial✅✅535.449µs
CommonsCollections5ysoserial✅✅137.609µs
CommonsCollections6ysoserial✅✅68.753µs
CommonsCollections7ysoserial✅✅178.549µs
FileUpload1ysoserial✅✅35.39µs
Groovy1ysoserial✅✅150.991µs
Hibernate1ysoserial✅✅789.674µs
Hibernate2ysoserial✅✅168.624µs
JBossInterceptors1ysoserial✅✅632.581µs
JRMPClientysoserial✅✅32.967µs
JRMPListenerysoserial✅✅38.263µs
JSON1ysoserial✅✅2.157225ms
JavassistWeld1ysoserial✅✅468.596µs
Jdk7u21ysoserial✅✅355.01µs
Jython1ysoserial✅✅216.862µs
MozillaRhino1ysoserial✅✅1.775193ms
MozillaRhino2ysoserial✅✅409.124µs
Myfaces1ysoserial✅✅22.997µs
Myfaces2ysoserial✅✅38.131µs
ROMEysoserial✅✅485.804µs
Spring1ysoserial✅✅797.469µs
Spring2ysoserial✅✅358.041µs
URLDNSysoserial✅✅21.502µs
Vaadin1ysoserial✅✅438.729µs
Wicket1ysoserial✅✅23.509µs
JDK8u20*pwntester✅✅529.3µs