パスワードを忘れた? アカウント作成
13573320 story
セキュリティ

ゼロ幅文字を使ってテキストに電子透かしのようなものを埋め込む手法 95

ストーリー by hylom
こんな手法があったか 部門より

画面には表示されない「ゼロ幅文字」を使ってコピー&ペーストを検出するという手法があるそうだ(秋元@サイボウズラボ・プログラマー・ブログMedium)。

この技術は、非公開の掲示板に投稿された情報が漏れていたという出来事を発端として開発されたという。非公開のサイトにアクセスするためのユーザー名をゼロ幅文字による連続した文字列に変換し、表示するテキストに埋め込むことで、その文字列がコピー&ペーストされた際にコピーを行ったユーザーアカウントを追跡できるという仕組みだ。この仕組みを導入した結果、流出したテキストから流出させたアカウントを特定できたという。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by Anonymous Coward on 2018年04月12日 8時32分 (#3392047)

    デモ [github.io]で適当にユーザー名を使ってコピー。

    Googleの検索窓にペーストすると見た目は普通の文章。なのに、検索窓上からコピーしてデモにペーストするとユーザー名が見える。
    Windows10のメモ帳にペーストするとやっぱり見た目は普通の文章。なのに、これもユーザー名が見える。
    シフトJISなテキストエディタにペーストすると???が挿入されたゴミの入ってる文章。

    これなら確かに気づかずやられる人は多く出そう。

    • >>Googleの検索窓にペーストすると見た目は普通の文章
      文字列の先頭からカーソルを[→]で移動していくとゼロ幅のとこで動きが止まりますね。
      ゼロ幅の文字数分移動するとまたカーソルが動き出すと。
      なんか手品とかに使えそう(違
      親コメント
    • by Anonymous Coward

      メモ帳だと認識されないのがミソだと思う。これはやられますわ。

      • by Anonymous Coward

        「これはやられますわ」

      • by Anonymous Coward

        そうか「普通」だとメモ帳って使うんだ。

    • by Anonymous Coward

      emacsだと、少し空白が入るけど、気がつかないかも。
      vimだとみたいなものが入ってバレる。
      (環境依存かもしれないけど)

  • 前から実施されてた? (スコア:2, おもしろおかしい)

    by Anonymous Coward on 2018年04月12日 9時48分 (#3392101)

    有料データベースのデータを加工していておかしな挙動があったので調べたらゼロ幅スペースが入ってたことがあった。
    ゴミかと思っていたけど、ユーザ追跡情報だったのかも?

  • by nemui4 (20313) on 2018年04月12日 8時18分 (#3392033) 日記

    ソース確認してからコピペが必要になりそう

    #Chromeでのショートカットキー

    非公開の掲示板って社内のとかで外部未公開のところかな。

    • by Anonymous Coward

      一度メモ帳に張り付ければバレバレな気が…

      • by Anonymous Coward

        そもそも貼り付けて即投稿、って人はそんなに多いのかな
        コピペする必要があってもコピペした文章含めて一度は読み直すと思うんだけど…
        コピペした部分はスルーしちゃうんだろうか
        それにしてもアカウント名が含まれていれば気が付きそうだけど

        • by simon (1336) on 2018年04月12日 12時24分 (#3392217)

          そもそも貼り付けて即投稿、って人はそんなに多いのかな
          コピペする必要があってもコピペした文章含めて一度は読み直すと思うんだけど…

          コピペする奴は手間を省くためにコピペするんだからそんな手間かけるわけないだろう

          親コメント
        • by Anonymous Coward on 2018年04月12日 8時29分 (#3392044)

          >コピペする必要があってもコピペした文章含めて一度は読み直すと思うんだけど…
          誰かさんは全くしませんけどね!

          親コメント
        • by Anonymous Coward on 2018年04月12日 9時40分 (#3392098)

          何にせよ実際に特定できたわけで無意味ではないでしょう。
          そもそも面白半分に漏洩する阿呆なんて、常識人の岡目八目で語っても仕方ないです。

          親コメント
        • by asap (6830) on 2018年04月12日 21時03分 (#3392555)
          カジュアルな対策ですね
          親コメント
        • by Anonymous Coward

          ユーザ名そのものじゃないんですね。失礼
          でも不自然な英数字とかが見えると気になる気もする

      • by Anonymous Coward

        と、安易に考える人が引っかかる罠です

      • by Anonymous Coward

        メモ帳に貼り付けても、メモ帳自体が「ゼロ幅文字」を表示できないのでバレません

    • by Anonymous Coward

      クリップボードにコピーしたテキストに不可視文字が入っていたら警告・除去する拡張機能、なんて需要ありそう?

    • by Anonymous Coward

      非表示文字であって、タグじゃないから
      ソースだろうとビューアー次第で見えないよ。

      • by nemui4 (20313) on 2018年04月12日 9時25分 (#3392089) 日記

        あ、そうなんだ、勘違いでした。
        見えないようにコントロールしてるんじゃなくて元々見えないんですね。

        ブログ見に行った(今さら)

        外部ユーザーの攻撃で中身が漏れたというよりは、メンバーの誰かがコピーしているのでは、と考えた Tom さんは、当時気になっていたユニコードのゼロ幅文字を使ったトリックを仕掛けたそうです。

        ゼロ幅スペース
        https://ja.wikipedia.org/wiki/%E3%82%BC%E3%83%AD%E5%B9%85%E3%82%B9%E3%... [wikipedia.org]

        文字コード
        Unicodeでは、ゼロ幅スペースはU+200B zero width space (HTML: ​)に割り当てられている[2]。

        #一部全角文字に改変済

        そして拙速対応出てるし。

        自衛ツールの登場など
        この記事が広く読まれたので、Chrome拡張が早速登場。ゼロ幅文字を絵文字に変換して表示する拡張で、こういうのを入れておくと何かが埋め込まれているな、というのを見つけられますね。急いで作られたせいか、ユーザーが能動的にクリックしないと絵文字表示されないなど、実用するには今一つですが。

        親コメント
        • by Anonymous Coward

          wikiに出てた例文をコピーしてmifesに貼り付けたら単語間に?が出てくるから簡単にわかるじゃないのかな
          コピペるるときには何らかのエディタ経由だろうし

          • by nemui4 (20313) on 2018年04月12日 9時48分 (#3392102) 日記

            MIFES懐かしい、REDもあったっけ。

            >コピペるるときには何らかのエディタ経由だろうし

            イチイチエディタ通してるるんだ。
            クリップボード履歴ツールとかでcopyした文字の確認・編集できるのもあったっけ。

            親コメント
          • by Anonymous Coward

            mifes10だと半角空白の様に表示されるから、'?' で表示されるのはユニコード未対応のバージョンか?

    • by Anonymous Coward

      Copy Plain Text 拡張が大人気に(違う)

  • by Anonymous Coward on 2018年04月12日 11時19分 (#3392175)

    コピペなんかするからばれるんだよ。
    写経のように、一文字一文字真心を込めて打ち直せば、くだらんトリックでばれることは無い。

  • 昔もUnicode制御文字の左右反転なんて使ってファイル名を偽装するトラップがありましたね。
    この手の文字を何かに使えないかなってみんな一度は考えるよね。

    • by KY Coward (42262) on 2018年04月12日 22時58分 (#3392594) 日記
      「ゼロ幅文字」「Unicode制御文字」「ファイル名」で思い出した、以前Windowsのファイルのバージョン管理としてファイル名に、プロパティとして表示される更新日時をほぼそのままコピペで付加してた時の事を。
      コマンドプロンプトで上手く取り扱えないからよくよく調べてみたら、ゼロ幅のUnicode制御文字っぽいものが日時の部分に挟まれてて何だこれ?って思ったんだよなぁ。
      以来コピペはやめて手打ちで日時を入力するようにしたのだが、ちょっと面倒。これも一種の電子透かしなんだろうか?(多分違う
      親コメント
  • メインPCのfirefoxとIEで軽く試してみたけどusernameが表示されるであろう欄に前者では謎の文字が表示されて、後者ではまったく何も表示されず動かなかった。
    どういう理屈でそうなっているのかまったくわからないが、我が家のセキュリティでは既に対応済みらしい。

  • by Anonymous Coward on 2018年04月12日 8時27分 (#3392042)

    予備知識のない対象には有効だろうけど、知識のある者ならこの仕組みを逆手にとって誰かを陥れる細工も可能か?

    • by Anonymous Coward

      ユーザ名を平文で埋め込むわけでは無いでしょう。署名をつけるだけで改ざん防止になるかと

    • by Anonymous Coward

      元記事にもそう書いてありますね。

typodupeerror

目玉の数さえ十分あれば、どんなバグも深刻ではない -- Eric Raymond

読み込み中...