JavaScript PasteJacking

I browser moderni possono utilizzare JavaScript per leggere e scrivere negli appunti dell'utente, il che significa che possono anche manipolarlo. La tecnologia sottostante è vecchia, ma è solo di recente che sono circolati in rete sempre più attacchi (sotto il nome di "PasteJacking") che sfruttano questa possibilità 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 finirà sempre negli appunti (indipendentemente dal testo copiato in questa implementazione). Invece del "comando malvagio" ora puoi inventare molte cose brutte. Il tutto 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 durante la copia di uno snippet di codice innocuo, sia possibile riprendere le partizioni di passaggio.

27670b8ba9840e688369822a3fcfb2d9

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

27670b8ba9840e688369822a3fcfb2d9

Se selezioni 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