Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
zkar — Analizzatore di protocollo di serializzazione Java basato su Go che analizza, scarica e genera payload di diserializzazione con supporto per i gadget di ysoserial e una libreria per la manipolazione dei dati. | Kitploit
Strumenti/GitHubGitHub/phith0n/zkar
Generazione di PayloadAnalisi delle VulnerabilitàExploitAnalisi di Binari
GitHubphith0n/zkar

zkar

Analizzatore di protocollo di serializzazione Java basato su Go che analizza, scarica e genera payload di diserializzazione con supporto per i gadget di ysoserial e una libreria per la manipolazione dei dati.

Vedi Repository
653544 mesi faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

ZKar

ZKar è uno strumento di analisi del protocollo di serializzazione Java implementato in Go. Questo strumento è ancora work in progress, quindi non esiste una documentazione API completa né una guida ai contributi.

ZKar fornisce:

  • Un parser e visualizzatore di payload di serializzazione Java in Go puro, senza bisogno di CGO o JDK
  • Dal protocollo di serializzazione Java a una struct Go
  • Una libreria Go in grado di manipolare i dati di serializzazione Java
  • WIP: Implementazione di ysoserial in Go
  • WIP: Parser, visualizzatore e manipolazione di bytecode Java
  • WIP: Un'implementazione di RMI/LDAP in Go

📦 Installazione

Usare ZKar è facile. Usa go get per installare ZKar insieme alla libreria e alle sue dipendenze:

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

Successivamente, usa github.com/phith0n/zkar/* nella tua applicazione:

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())
}

Qui c'è un esempio che mostra come leggere un payload esistente e modificarlo in un payload con codifica UTF-8 overlong.

💻 Strumento da riga di comando

ZKar fornisce anche uno strumento da riga di comando che puoi usare direttamente:

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)

Ad esempio, puoi dumpare il payload CommonsBeanutils3 da ysoserial in questo modo:

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

asciicast

🛠 Test

ZKar è uno strumento ben testato che ha superato tutti i test di parsing e ricostruzione dei gadget generati da ysoserial. Ciò significa che i gadget generati da ysoserial possono essere analizzati da ZKar, e le strutture analizzate possono essere riconvertite in stringhe di byte uguali a quelle originali.

Nota: Per analizzare il payload JDK8u20, è necessario aggiungere il flag --jdk8u20 al comando dump. Poiché il payload non è un flusso di dati serializzato valido, è necessario informare ZKar di applicare le correzioni ai dati tramite questo flag.

📝 TODO

  • Parser e generatore di bytecode Java
  • Supporto per gadget JDK/JRE 8u20
  • Generatore di payload di serializzazione
  • Un'implementazione di RMI/LDAP in Go
  • Supporto per la funzionalità di lettura/scrittura con codifica UTF-8 overlong

⚖️ Licenza

ZKar è rilasciato sotto licenza MIT. Vedi LICENSE

👀 Vedi anche

  • SerializationDumper: Uno strumento per dumpare e ricostruire flussi di serializzazione Java e contenuti di pacchetti RMI Java in una forma più leggibile.
  • ysoserial: Uno strumento proof-of-concept per generare payload che sfruttano la deserializzazione non sicura di oggetti Java.
  • Java-Deserialization-Cheat-Sheet: Un cheat sheet sulle vulnerabilità di deserializzazione Java.
Scarica lo strumento
GadgetPacchettoAnalisiRicostruzioneTempo di analisi
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