マイライブラリ
マイライブラリ

+ マイライブラリに追加

電話

お問い合わせ履歴

電話(英語)

+7 (495) 789-45-86

Profile

ニュース一覧に戻る

コラム : テキストコピーも危険・・・セキュリティを突破する新たな手口

2018年3月26日

株式会社Doctor Web Pacific


私たちは時折、サイトや文書からテキストをコピーします。これまでアンチウイルスタイムズは読者へ、安易なリンクのクリックは危険な可能性があることを警告してきました。そのため、ユーザーは別のコマンドを実行することができます。 しかし今、プレーンテキストのコピーにも危険が潜んでいることが判明しました。

攻撃者は、ブラウザからテキストがクリップボードにコピーされたかを判別することができます。 Ctrl + Cが押されたことをJavaScriptコードが検出すると、800ミリ秒間待機し、追加のデータをクリップボードに挿入します。ブラウザは、クリップボードの内容を変更するかどうかの確認をユーザーに求めません。また、HTMLビューでは、その内容はユーザーがコピーした文字列として表示されます。

サイトは、サイトから情報がコピーされたことを監視(およびブロック)することができると誰もが知っています。ただし、ある特徴を利用すれば、クリップボードに追加情報を挿入することができます。たとえば、一部のサイトでは、テキストがコピーされたとき、関連情報としてペースト先のページにリンクを追加することができるようになっています。こういった無害なデータを追加する方法がありますが、あなたは気づかないうちに何か悪意のあるものを選択してしまうのはなぜでしょうか?

追加情報を隠すために、攻撃者は特殊文字を使用することができます。 Linuxユーザーによく知られているvimユーティリティの例を以下に示します。

このデモでは、ブラウザウィンドウから文字列をコピーする機能が提供されています(テキストを選択してCtrl + Cキーを押します)。

echo "not evil"

内容を端末ウィンドウに貼り付けると、別の文字列が表示されます。

echo "evil"\n

変更されたコンテンツを隠すために、攻撃者は "clear"や "echo -ne '\\033[1F\033[2K'"などのコマンドを使用しますが、もう一つ例があります:

touch ~/.evil
clear
echo "not evil"

つまり、変更されたテキストにコマンドを挿入することで、攻撃者はコピーされたテキストを必要な文字列に置き換えることができます。

攻撃オプションは多数あり、多くのプログラマーはgitのバージョン管理システムを利用しています。ウェブサイト経由でシステムへのアクセスを容易にすることができます。

別の攻撃の説明が公開されました 。 これは、 "git diff"コマンド(パッチコードの検査によく使われる)を使って出力されるコードの一部を隠す方法を示しています。 コードにエスケープシーケンス「 8m 」を導入することで、攻撃者はVT100端末ウィンドウでその一部を見えなくすることができます。

#drweb

プログラマーではない方のために説明すると、printfコマンドは "私は単なるスタブです!"というフレーズを表示することになりますが、代わりに "私はスタブです! ここに悪いバックドアを挿入します! " というフレーズを表示します。ですが、テキストの一部は表示されません。

この攻撃は2013年に発見されましたが、それでもまだ機能しています。

この攻撃の概念は、さまざまなサイトからコマンド例をコピーする際のユーザーからの信頼を悪用します。

"span"要素を使用することで、攻撃者は無意識のユーザーに、目に見えないテキストをコピーするようにさせることができます。

リンクを自分で開き、 "git clone"で始まる文字列をコピーし、実際に貼り付けるテキストを確認することができます。

この場合、サイトページの書式タグのみが使用され、JavaScriptコードは使用されません。

#security

Tell us what you think

To ask Doctor Web’s site administration about a news item, enter @admin at the beginning of your comment. If your question is for the author of one of the comments, put @ before their names.


Other comments