JavaScript PasteJacking

Dengan bantuan JavaScript, penyemak imbas moden dapat membaca dan menulis ke papan keratan pengguna, iaitu mereka juga dapat memanipulasinya. Teknologi yang mendasarinya sudah lama, tetapi baru-baru ini semakin banyak serangan (dengan nama "PasteJacking") telah beredar di Internet, yang memanfaatkan kemungkinan ini untuk pengguna yang tidak berpengalaman. Pelaksanaan dalam JavaScript adalah dangkal.


Hanya skrip berikut yang disatukan di pihak yang berniat jahat:

27670b8ba9840e688369822a3fcfb2d9

Sekiranya anda menyalin teks dari halaman seperti itu, rentetan yang tidak diingini selalu berakhir di papan keratan (dalam pelaksanaan ini tanpa mengira teks yang disalin). Daripada "perintah jahat" sekarang anda boleh menghasilkan banyak perkara buruk. Seluruhnya menjadi maut jika pemecahan garis di hujung talian digunakan untuk segera melaksanakan kod tersebut:

27670b8ba9840e688369822a3fcfb2d9

Ia juga mudah untuk menetapkan semula output konsol sehingga pengguna tidak segera melihat apa yang telah dimasukkan. Sebagai contoh, dapat dibayangkan bahawa ketika menyalin coretan kod yang tidak berbahaya, seseorang dapat melepaskan partisi seseorang secara berlalu.

27670b8ba9840e688369822a3fcfb2d9

Papan keratan boleh dimanipulasi (dalam bentuk yang berbeza) walaupun tanpa JavaScript:

27670b8ba9840e688369822a3fcfb2d9

Sekiranya anda memilih teks yang diinginkan, dalam Firefox terbaru (ayat 45.0), misalnya, bukan teks ini tetapi teks di belakangnya yang berakhir di papan keratan.

Kedua-dua kaedah boleh dicuba secara langsung di sini. Berikut adalah varian JS:

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

Serta varian CSS:

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

Belakang