I browser generalmente non consentono alle pagine web di interagire con il file system lato client come misura di sicurezza. Mi piacerebbe sapere cosa può andare storto nel seguente scenario:
Clicking a special hyperlink in a browser opens a link specified folder in windows file explorer.
Passaggi per raggiungere questo obiettivo:
- Un'applicazione di gestione del protocollo è installata sui computer dei browser.
- Si registra per il protocollo
nfx:
, (simile ai client di posta, che registrano il protocollomailto:
) - Quando un utente fa clic su un collegamento ipertestuale con
href="nfx://machinename/share/folder/"
- L'applicazione di gestore del protocollo viene avviata con l'URL precedente come argomento del processo dal browser.
- Tutti
/
vengono convertiti in Separatore di percorsi (ad esempio\
),nfx:
viene rimosso dall'inizio dell'URL. E il risultato\machinename\share\folder\
viene controllato se la directory esiste. - Se esiste, all'utente viene chiesto di confermare se desidera aprire questa cartella Se l'utente conferma allora
explorer.exe
viene avviato con\machinename\share\folder\
come parametro. - Uscite dall'applicazione di avvio del protocollo.
Perché è stato fatto (nel caso questo sia un problema XY):
- Ho un requisito in cui gli installatori regolarmente aggiornati sono conservati su un percorso di rete.
- Una pagina web elenca tutti i programmi di installazione disponibili.
- Cliccando sul link dovrebbe portare l'utente al percorso di installazione.
- Non è previsto il download o l'avvio diretto del programma di installazione dalla pagina web. L'utente può decidere se vuole eseguire il programma di installazione dopo aver aperto la cartella in Windows Explorer.
Quanto pericoloso aprirà una cartella di rete o una cartella locale come questa?