Implicazioni di sicurezza di FileExists () da javascript nel browser

1

Quali sarebbero le implicazioni sulla sicurezza se JavaScript, in un browser, potrebbe eseguire una tipica operazione FileExists () con normali percorsi di file (win e / o mac)? Qualcosa come fs.existsSync(path) del nodo ma da JavaScript in esecuzione nella sandbox di un browser. Supponendo di aver effettuato l'accesso, il browser che esegue le normali autorizzazioni dei file dell'utente viene rispettato. Capisco che questo è un problema di perdita di informazioni.

La mia domanda è: quali sono le conseguenze concrete di questa perdita che un product manager semi-tecnico capirebbe? Gli esempi sarebbero utili. Il JavaScript potrebbe provenire da un sito sicuro o non sicuro, nient'altro di speciale, solo la possibilità di testare l'esistenza (booleana) di file (non di directory) con un percorso assoluto.

    
posta Mike 28.01.2016 - 00:05
fonte

3 risposte

2

In questo modo potresti imparare molte informazioni interessanti sul sistema degli utenti.
Queste informazioni potrebbero essere utilizzate per trovare l'exploit corretto per l'utente o semplicemente essere raccolte o utilizzate come parte di system fingerprint per identificare gli utenti (anche con un altro browser utilizzato).

Rilevare il sistema operativo sarebbe estremamente semplice, ma in teoria sarebbe anche possibile individuare le versioni usate delle librerie statiche.

La maggior parte dei servizi crea pid files all'avvio. Questo potrebbe essere usato per verificare se servizi specifici sono in esecuzione e provare ad attaccarli (Pensa ad un pannello di amministrazione web senza protezione csrf).

Come menzionato da @TessellatingHeckler: potresti anche provare a usare nomi utente "bruteforce" (più dizionari di attacco).

    
risposta data 28.01.2016 - 02:55
fonte
1

Simulando il controllo dell'esistenza, potrebbero essere attivate azioni con molti effetti collaterali. Ad esempio, se si fornisce un percorso UNC, una macchina Windows dovrà connettersi al server, che nel caso più banale può essere trasformato in un attacco DDoS. Con più setup (e firewall scadente), questo può essere usato per rubare l'hash della password NTLM ...

    
risposta data 28.01.2016 - 15:01
fonte
0

Potresti:

  • apprendi che sono installate app specifiche (ovvero puoi fingere di vendere servizi correlati a tali app)
  • scopri che sono installate versioni specifiche delle app (in base alle differenze tra le versioni, ora sai se esiste un exploit per il sistema dell'utente)
  • enumera alcuni dispositivi hardware (questo o quel file esiste in / dev ?, allo stesso modo gli exploit specifici dell'hardware)
  • scopri i nomi utente, possibilmente (controlla le sottocartelle in / home per esempio)
  • identifica file / cartelle esistenti da utilizzare come target in un XXE exploit quando offri malware al utente
  • profili gli utenti controllando quali tipi di artisti famosi hanno nelle loro cartelle ~ / Music o ~ / Movies ...
  • controlla gli utenti controllando se, per i percorsi comuni delle cartelle di download delle app P2P, vengono scaricati torrent recenti / popolari. Quindi puoi servirli personalizzati, scarier ransomware (come il virus dell'FBI )
  • trova PID validi per le app attualmente in esecuzione, anche se potresti non essere in grado di identificare le suddette app

(esempi basati su UNIX perché hey, io sono un utente UNIX, più o meno lo stesso dovrebbe applicarsi a Windows)

    
risposta data 28.01.2016 - 15:14
fonte

Leggi altre domande sui tag