Come testare il mio sito web per la vulnerabilità YAML delle rotaie

1

Sono abbastanza perplesso su come testare la mia app per le rotaie per la vulnerabilità YAML

per prima cosa, ho eseguito l'aggiornamento alle ultime versioni 3.2.11 e ho provato questo

Mi ha dato not likely to be vulnerable or URIPATH must be set che dovrebbe essere ragionevole dal momento che ho aggiornato alle ultime binari.

Ma ho controllato un'altra app di rotaie che ho abbandonato molto tempo fa, che so che non è stata riparata. Ho ottenuto lo stesso risultato. Nota che entrambe le mie app funzionano su heroku.

Qual è la differenza tra RHOSTS e VHOST e URI? Dovrebbe essere RPORT la porta http o dovrebbe essere la porta che il server web è in esecuzione?

    
posta Nick Ginanto 02.02.2013 - 09:31
fonte

2 risposte

2

Ci scusiamo per una breve risposta, ma sono sicuro che gli altri si completeranno alla fine.

RPORT molto probabilmente significa la porta su cui è in esecuzione il server web.

Non ho ancora usato metasploit per questo, a meno che Tinfoil Security non usi lo stesso concetto, vedi: link

-k0nsl

    
risposta data 02.02.2013 - 13:03
fonte
2

Dichiarazione di non responsabilità: sono uno degli sviluppatori di Tinfoil Security. Abbiamo un controllo gratuito e rapido all'indirizzo link .

Il controllo di Tinfoil era basato sulla sonda originale di Metasploit. Sono curioso di sapere perché siamo diventati vulnerabili quando Metasploit non lo ha fatto - sentiti libero di inviare un'e-mail a [email protected] o visitare il link e saremo felici di esaminarlo. Detto questo, abbiamo avuto casi di persone che hanno aggiornato Rails ma che avevano ancora middleware vulnerabili che ancora deserializzavano i payload in modo improprio, quindi è ancora importante controllare manualmente e essere assolutamente sicuri. In Rails 3.2.11 questo è indicato da un'eccezione Hash::DisallowedType che viene sollevata.

Se i log includono parametri (comportamento predefinito), è possibile utilizzarli per vedere se i payload vengono deserializzati in modo non sicuro. Parameters: {"tinfoil_probe"=>1970-01-01 00:00:00 +0000} indica che un oggetto Time è stato istanziato tramite YAML. Psych::SyntaxError ((<unknown>): control characters are not allowed at line 1 column 1) indica che il framework ha tentato di deserializzare lo YAML ma era malformato, il che indica che il framework è ancora vulnerabile.

    
risposta data 05.02.2013 - 03:34
fonte

Leggi altre domande sui tag