Esegue il codice nativo dalla shell su un filesystem di sola lettura

6

Sto facendo ricerche su un dispositivo incorporato che esegue Linux, busybox e alcuni servizi personalizzati. Ho trovato un modo per ottenere l'accesso alla shell senza privilegi e provare a vedere se è possibile scalare i privilegi.

Il kernel è vecchio e sembra vulnerabile, tuttavia il più grande ostacolo è che l'intero filesystem è di sola lettura (incluso /tmp e /dev/shm ), cioè 644/755 e tutto è di proprietà di root.

Quali sono alcuni modi possibili per eseguire codice nativo personalizzato su un filesystem di sola lettura, avendo solo accesso alla shell?

Alcune possibili strade che ho provato:

  • Ottieni il sistema per montare il tuo filesystem (richiede accesso root o fisico)
  • Ottieni il sistema per salvare un file binario ELF da qualche parte sul filesystem, quindi esegui /lib/ld-linux.so.2 con esso (non è stato possibile trovare un modo per farlo)
  • Esegui /lib/ld-linux.so.2 con una pipe o /proc/self/environ (non funziona, ld-linux richiede che il file sia mmap -able)
  • Usa dd of=/proc/self/mem nello stack di clobber dd (il kernel è pre-2.6.39, dove la scrittura su /proc/self/mem è disabilitata)
  • Trova un programma con una vulnerabilità nella gestione degli argomenti della riga di comando o dell'ambiente (nulla fino ad ora)
  • Trova un linguaggio di scripting in grado di creare syscalls (l'unica possibilità di scripting è la shell di busybox)
  • Scrivi su un socket UNIX e ascolta il servizio su di esso per fare qualcosa (non esistono utility sul filesystem che permettano l'invio di dati arbitrari ai socket UNIX)

Ho trascurato qualcosa?

    
posta J. Doe 13.04.2017 - 20:13
fonte

1 risposta

2

Find a program with a vulnerability in handling command-line or environment arguments (nothing so far)

Questa è probabilmente la strada più promettente.

Nel mio caso, sono finalmente riuscito a trovare un buffer overflow nella gestione di un parametro non documentato di un'utilità proprietaria personalizzata.

    
risposta data 14.04.2017 - 06:08
fonte

Leggi altre domande sui tag