È importante sapere che l'audio non passa attraverso il MIDI. Il MIDI è un trasporto per comandi che possono attivare l'audio. Un esempio letterale è che hai una tastiera musicale che non emette suoni. Ma è collegato a una scatola che emette suoni. Quindi la tastiera passa i comandi per attivare i suoni e può controllare le note, il tono, le ottave, ecc. Questo trasporto può inviare (fuori), ricevere (in) o passare (attraverso) questi comandi. Prendi nota che si tratta di comandi specifici e non di codice realmente reale.
Ciò che non può fare è trasmettere l'audio in particolare l'audio associato a un video. Quindi, a meno che non si tratti di un sito nel regno di inviare questi comandi per creare suoni come un sintetizzatore online o forse anche un sito di guida musicale, non sono sicuro quali siano le loro intenzioni per l'utilizzo di questo.
È anche possibile che questo sia un sito creato male e sia stato implementato in caso di incidente. Chrome richiederà l'accesso ai dispositivi MIDI indipendentemente dal fatto che venga chiamata l'API.
Sebbene non conosca alcun exploit attuale utilizzando questa funzione, sono a conoscenza di due precedenti CVE. CVE-2015-6792 e CVE-2015-6765 potrebbe entrambi fare un attacco denial service, bloccare il browser ed eventualmente eseguire un'esecuzione arbitraria di codice al di fuori della sandbox. Tuttavia entrambi richiedono versioni precedenti di Chrome come 46 o 47.
Quindi i tuoi rischi intenzionali sono i comandi inviati / letti alle interfacce MIDI collegate. Ma i comandi dovrebbero essere specifici e non dannosi in sé stessi. Ma stai ancora permettendo i comandi comunque.
Il rischio intenzionale potrebbe essere un problema se la tastiera del computer è configurata come controller MIDI e il sito legge questi comandi. Di conseguenza, può comportarsi come un keylogger. Tuttavia non invierà caratteri e invierà comandi come 1111111 o 7F e nessuno dei due corrisponderà come la lettera e il numero che hai premuto. Ma teoricamente, se l'aggressore sapeva come questi sono stati mappati sulla tastiera, possono essere incrociati come referenziati e tradotti in ciò che hai digitato. Questo è comunque uno scenario altamente improbabile.
Il rischio non intenzionale è un exploit come i CVE citati in precedenza che sfruttano il codice. Questo è un rischio che si prende con qualsiasi utilizzo di una funzionalità del browser che accetta input da un sito però.
Nel complesso non ci sono abbastanza informazioni per sapere se questo è un uso legittimo di questa API. Dovrai usare il tuo miglior giudizio se questa funzionalità è richiesta per il tuo scopo del sito e quanto bene ti fidi di questo sito.