JavaScript PasteJacking

最新のブラウザは、JavaScriptを使用してユーザーのクリップボードの読み取りと書き込みを行うことができます。つまり、JavaScriptを操作することもできます。 基盤となるテクノロジーはすでに古いものですが、インターネット上で(「PasteJacking」という名前で)攻撃がますます増えており、経験の浅いユーザーにとってこの可能性を利用しています。 JavaScriptでの実装は平凡です。


次のスクリプトのみが悪意のある側に統合されています:

27670b8ba9840e688369822a3fcfb2d9

このようなページからテキストをコピーすると、不要な文字列は常にクリップボードに残ります(この実装でコピーされたテキストに関係なく)。 「邪悪な命令」の代わりに、あなたは今、多くの醜いものを思い付くことができます。 行末の改行を使用してコードをすぐに実行すると、全体が致命的になります:

27670b8ba9840e688369822a3fcfb2d9

また、コンソール出力をリセットして、ユーザーが入力内容にすぐに気付かないようにすることも簡単です。 たとえば、無害なコードスニペットをコピーするときに、パスで自分のパーティションを撃つことができると考えられます。

27670b8ba9840e688369822a3fcfb2d9

クリップボードはJavaScriptがなくても(別の形式で)操作できます:

27670b8ba9840e688369822a3fcfb2d9

たとえば、最新のFirefox(v。45.0)で目的のテキストを選択した場合、このテキストではなく、その背後にあるテキストがクリップボードに表示されます。

どちらの方法もここでライブで試すことができます。 ここではJSバリアント:

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

CSSバリアントと同様に:

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

バック