安易なコピー&ペーストによりユーザーに任意のコードを実行させるPoC「Pastejacking」の危険性。

スポンサーリンク

 安易なコピー&ペーストによりクリップボードを介してユーザーに任意のコードを実行させるPoC「Pastejacking」が公開され話題になっています。詳細は以下から。

Pastejacking-proof-of-concept

 米セキュリティ企業Malwarebytesが「ターミナルへのコピー&ペーストを実行させることで、任意のコードを実行させることの出来る」概念実証「Pastejacking」の危険性を伝えています。

Browsers now allow developers to automatically add content to a user’s clipboard, following certain conditions. Namely, this can only be triggered on browser events. This post details how you can exploit this to trick a user into running commands they didn’t want to get ran, and gain code execution.

dxa4481/Pastejacking: A demo of overriding what’s in a person’s clipboard

Pastejacking

 Pastejackingはセキュリティ研究者のDylan Ayreyさんが公開した概念実証(Proof-of-Concept)で、例えば「Macで隠しファイルを表示する方法」をGoogleで検索すると以下の様なdefaultsコマンドが見つかり、

defaults write com.apple.finder AppleShowAllFiles TRUE; killall Finder

多くのユーザーはこれをコピーしターミナルで実行すると思いますが、このコマンドに改行コードが含まれているとコマンドはペーストしただけで自動的に実行されてしまいます。

It’s important to understand that, in this example, I did not press return to execute the command. It executed all by itself the instant I pasted.

Clipboard poisoning attacks on the Mac | Malwarebytes Labs

 Pastejackingはこれを応用したPoCで、一見目的のコードしか記載されていないWebページでもJavaScriptを利用することでクリップボードへ任意のコードを送り、クリップボードへペーストした時点でそのコードを実行させるというもので、

Pastejacking-proof-of-concept-JavaScript

このPoCはJavaScriptのdocument.execCommandを利用しているためSafariでは完全には動作しませんが、Safari Technology PreviewではこのAPIがサポートされているため今後注意しなければいければならず、

iTerm-newline-waring

AyreyさんはこのPoCの対策としてvimのマクロを利用したり、改行コードの警告を出してくれるターミナルアプリ「iTerm」などを利用することを勧めています。