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
oni-framework — Software C2 per sistemi embedded scritto in C/C# | Kitploit
Strumenti/GitHubGitHub/kiwidoggie/oni-framework
Sicurezza Sistemi EmbeddedDebuggerCommand and ControlSicurezza HardwareStrumento di Accesso RemotoAnalisi del FirmwareArchived
GitHubkiwidoggie/oni-framework

oni-framework

Software C2 per sistemi embedded scritto in C/C#

Vedi Repository
19127 anni faNon ancora revisionato

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

Oni-Framework

Oni framework è una piattaforma per lo sviluppo di software per dispositivi embedded. Viene utilizzato per eseguire il debug remoto/aggiungere funzionalità a un dispositivo embedded. Al momento, i concetti principali sono un sistema di plugin completamente modulare, con RPC locale e remota. È stato progettato per funzionare a livello di privilegio ring-0, ma con alcune modifiche può essere utilizzato anche a livelli ring-3. Attenzione: questo NON è per l'uso in produzione, è solo per sviluppatori che vogliono una piattaforma di facile costruzione per la ricerca.

  • Attualmente questo progetto è in fase di sviluppo e potrebbe non essere completamente testato
  • Sarà necessaria una buona conoscenza di C/C#
  • Magia

Nuove funzionalità!

Funzionalità attualmente supportate

  • Sistema RPC locale e remoto completamente robusto
  • Tutte le funzioni utilizzate sono predisposte (stub) per facilitare il porting su piattaforme diverse
  • Utilità di trasferimento file
  • Sistema di logging a colori (funziona su UART con PUTTY)

Funzionalità pianificate:

  • Framework di debugging
  • Gestione e installazione remota dei pacchetti
  • Comunicazione tra dispositivi
  • Caricamento e scaricamento a caldo dei moduli plugin
  • Auto-elevazione da ring-3 a ring-0 (BYO-EntryPoint)

Build e installazione

Oni-Framework richiede solo che tu faccia il checkout di questa directory e implementi il file oni/utils/kdlsym/default.h con tutte le implementazioni necessarie. Dopo questo, dovrebbe compilare senza problemi con gcc o clang e produrre un file eseguibile. Dovrai portare il tuo metodo di esecuzione (BYO-execution), ma per la maggior parte dei dispositivi embedded questo può essere fatto tramite una shell ssh, o una shell su telnet, o qualsiasi shell. Altri dispositivi potrebbero dover caricare nel contesto di memoria in esecuzione e poi saltare a main, che dovrebbe gestire tutti i problemi di inizializzazione.

  1. Clona il repository git clone https://github.com/kiwidoggie/oni-framework.git a. Opzionale: imposta la posizione degli header FreeBSD export BSD_INC="/path/to/freebsd/headers/include"
  2. Se stai compilando per la prima volta devi eseguire make create che creerà la struttura delle cartelle
  3. Compila usando make a. Se non hai impostato la variabile d'ambiente puoi compilare con make BSD_INC=/path/to/freebsd/headers/include

Porting su piattaforme diverse

Oni-Framework non dipende da una libc completamente funzionante, ed è progettato per essere compilato ed eseguito in modo completamente autonomo (a condizione che tutti i prerequisiti siano soddisfatti). Invece, la funzionalità necessaria è assemblata dal minimo indispensabile di funzioni esistenti, sia nel contesto di un processo in esecuzione, sia nel contesto del kernel (quest'ultimo è l'unico testato).

  1. Crea un nuovo target kdlsym (kernel dynamic symbol resolution) creando un nuovo header in include/oni/utils/kdlsym/my_platform.h
  2. Copia e incolla i contenuti di include/oni/utils/kdlsym/default.h nel tuo nuovo file header
  3. Aggiungi il tuo nuovo target a include/oni/utils/kdlsym.h
root@kitploit:~
#if ONI_PLATFORM==ONI_UNKNOWN_PLATFORM
#include "kdlsym/default.h"
#elif ...
#elif ONI_PLATFORM==ONI_MY_PLATFORM
#include "kdlsym/my_platform.h"
#endif
  1. Aggiungi il tuo target al file di configurazione che si trova in include/oni/config.h
root@kitploit:~
// Unknown device
#define ONI_UNKNOWN_PLATFORM		-1
#define ONI_MY_PLATFORM		5
  1. Cambia il target di build corrente modificando #define ONI_PLATFORM ONI_UNKNOWN_PLATFORM in #define ONI_PLATFORM ONI_MY_PLATFORM

Sviluppatori

Se vuoi contribuire, invia semplicemente una pull request. Altrimenti, non c'è un supporto vero e proprio per questo al momento. Questo potrebbe cambiare in futuro

twitter @diwidog

Layout del messaggio

Scarica lo strumento
Bit OffsetBit LengthNameDescriptionUsage
03MagicQuesta è una semplice intestazione magica del pacchetto per garantire che i messaggi vengano elaborati correttamenteOBBLIGATORIO: Deve essere impostata a 0101b o 5 (dec)
34Message CategoryDescrive a quale categoria instradare il messaggio sul lato oni-frameworkOBBLIGATORIO: Massimo 14 categorie (5 attualmente in uso)
732Error/MessageTypeQuesto campo contiene il codice di errore, o il tipo di messaggioRICHIESTE: Deve essere impostato al tipo di messaggio, calcolato attualmente da CRC32(MessageName), RISPOSTA: Viene impostato al codice di errore/valore di ritorno
3916Payload SizeQuesta è la lunghezza dei dati che seguono l'intestazione del messaggioOPZIONALE: Impostare a 0 se non c'è payload, altrimenti verranno attesi dati
551RequestQuesto flag sarà impostato a 1 se il messaggio è una richiesta, o a 0 se è una rispostaOBBLIGATORIO
567ReservedRiservatoIGNORATO: Impostare a 0