JavaScript PasteJacking

Con l'aiuto di JavaScript, i browser moderni possono leggere e scrivere negli appunti dell'utente, ovvero possono anche manipolarli. La tecnologia sottostante è già vecchia, ma è solo di recente che sono circolati in rete sempre più attacchi (sotto il nome di "PasteJacking") che sfruttano questa opzione per l'utente inesperto. Un'implementazione in JavaScript è banale.


Solo il seguente script è integrato sul lato dannoso:

27670b8ba9840e688369822a3fcfb2d9

Se copi del testo da una pagina di questo tipo, la stringa indesiderata finisce sempre negli appunti (in questa implementazione indipendentemente dal testo copiato). Invece di "comando malvagio" ora puoi inventare un sacco di cose brutte. L'intera operazione diventa fatale se viene utilizzata un'interruzione di riga alla fine della riga per eseguire immediatamente il codice:

27670b8ba9840e688369822a3fcfb2d9

È anche facile ripristinare l'output della console in modo che l'utente non si accorga immediatamente di ciò che ha inserito. Ad esempio, è concepibile che quando si copia uno snippet di codice innocuo, si possa sparare di sfuggita alle proprie partizioni.

27670b8ba9840e688369822a3fcfb2d9

Gli appunti possono essere manipolati (in una forma diversa) anche senza JavaScript:

27670b8ba9840e688369822a3fcfb2d9

Se si seleziona il testo desiderato, nell'ultimo Firefox (v. 45.0), ad esempio, non è questo testo ma il testo dietro di esso che finisce negli appunti.

Entrambi i metodi possono essere provati dal vivo qui. Qui la variante JS:

See the Pen Pastejacking #1 by David Vielhuber (@vielhuber) on CodePen.

Così come la variante CSS:

See the Pen Pastejacking #2 by David Vielhuber (@vielhuber) on CodePen.

Indietro