日次まとめ 2024年10月03日

その他

一般

ゲーム

ガジェット・サービス・ツール等

技術・事業・セキュリティ等

  • 企業のサーバーに不正アクセスした疑いで男を逮捕 複数の大学への爆破予告メールにも関与か 男は特定の弁護士を語って爆破予告を繰り返す人たち「恒心教」に強い影響を受けているとみて警察が捜査 広島(RCC中国放送) – Yahoo!ニュース
  • 教科書を書き換えか? 新たな化学結合「一電子結合」発見 北大と東大が“1世紀前の理論”を実証:Innovative Tech – ITmedia NEWS
  • 「タリーズ オンラインストア」クレカ情報5万件流出、IDやパスワードなど9万件も ペイメントアプリ改ざんで – ITmedia NEWS
    うーん、公式のプレスには「ペイメントアプリケーションの改ざんが行われたため」としか書いてないのに、
    SNSを見るとクレカのセキュリティコードも流出したってことは、保存していたってこと? とか、平文(暗号化されていない状態のこと)で保存されていたの? みたいなコメントが散見していたけど、そうじゃないと思う。

    あくまで予想だけど、データを保存・管理するような内部に侵入されて流出とかじゃなくて、表面的な部分で改ざんし、個人情報を奪取するような方法だと思う。

    具体的にはユーザーが入力したものを送信する付近が改ざんされていて、
    送信(通信)先が攻撃者宛とか外部に(も)なっていて、そこから流出の可能性が、って話なんじゃないだろうか。

    端的にいえば、Webスキミングの類かな、と。


    図を描けばわかりやすいだろうけど、面倒だから文章で表現するし、正確性なんて二の次のざっくりしたものになるが、ものすごく簡易的に表現すると、通常のやりとりは
    「ユーザー(A)」と「Webサーバー(B)」との通信、「Webサーバー(B)」と「データベースサーバー(C)」との通信って感じになる。

    (「A」が入力し送信した情報は、「B」が受け取って、「B」が「C」に保存する形。つまり、「B」が表面的な部分で、「C」がユーザーが触れることはない内部的な部分となる。
    で、今回のケースの場合、「ペイメントアプリ」と呼ばれているものは「B」にあるもの、あるいは「B」から使われているものだと想定している。
    なので、説明上、「ペイメントアプリ」≒「B」とする。)

    データが保存されるのは「C」だから、ここに侵入されると色々とデータが引っこ抜かれてしまうけど、
    「A」と「C」が直接的にやりとりすることはできないので、普通には「C」に侵入することは出来ない。

    なので、取っ掛かりとして「B」に攻撃して、「B」から「C」にアクセスし、
    情報を引っこ抜こうとする攻撃(例:インジェクション攻撃)があったりするのだが、
    この手の攻撃方法は対策が割と取られていることが多い(内部である「C」の方をやられると致命的な影響を受けやすいので)。

    それに直接的に「C」を狙うと、難易度が上がったり、攻撃の痕跡を残しやすいってのもあるので、「A」や「B」を対象にするような攻撃方法が使われやすい、というか狙われやすかったりする。

    それがXSS(いや、これもインジェクション攻撃の一種ではあるが)だったり、フィッシング詐欺だったり、中間者攻撃だったり。

    これは、「C」に保存されるデータってのは「A」が入力して送信したものだから、
    それなら「C」に到達する前に「A」が入力した情報を奪えばいいじゃん、って感じの攻撃ですね。

    しかもこの攻撃には利点があって、保存しないデータも奪うことが可能になるってのがある。

    前提として、「B」は「A」から受け取った情報の全てを「C」に保存するとは限らないんです。

    ただ、保存はしないけど過程で使う情報がある場合は、「A」と「B」だったらその情報が流れているので、そこを狙われると保存しない情報でも奪えることが出来る、って感じです。

    その方法として「A」と「B」の間の通信を盗聴して情報を奪ったり、「A」を騙して偽物のページに情報を入力されたものを奪ったり、とかがあるのですが、
    今回の場合は「改ざん」とあるので、おそらく「B」が攻撃されたことで、「A」が入力したものを「攻撃者(D)」に送信するように改ざんされたのではないのかなと。

    ただそれだけだと、「C」にデータが渡されなくなり、攻撃がバレバレになっちゃいますから、
    正確に言うと、引き続き正規の方法として「C」に送信するように「しつつ」、「D」にも送信するようにしたのかなと。

    要は正規の「ユーザー(A)」と「Webサーバー(B)」との通信、「Webサーバー(B)」と「データベースサーバー(C)」との通信の他に、
    異常な「ユーザー(A)」と「攻撃者(D)」との通信もしくは「Webサーバー(B)」と「攻撃者(D)」との通信の流れも出来てしまっている感じ(後者だと「B」に通信の痕跡が残ってバレやすいから前者だとは思うが)。

    そうすることで、サービスの運営者は「B」の異常に気づかない限り、「A」のデータが外部の「D」に流れていることに気づけないんですよね。

    (まぁこの方法の場合、サービスの運営者は気づきづらくても、逆にユーザー側は自分の通信を監視すれば気づけるのですが、一般ユーザーはそんなことしませんからねぇ・・・。
    そもそも監視したとて、知識があり、解析できなきゃ、正規の通信なのか異常な通信なのかの判別ができませんし。)

    だから発覚までに時間がかかってしまうケースが割とあるという(いや、なんで「B」の異常に気づけないんだよ、っていう突っ込みは最もでしょうけどね。保守ってのはコストの都合で色々と押しやられやすくて、まぁ色々あるんでしょう)。

    今回の事案は、カード情報が漏えいしている可能性があると警察から連絡を受けてから発覚したみたいだから、運営者が気づけていなかったことからも、この手の攻撃方法が使われていたのかなと推測はできる。
    (保存していたデータが流出するケースだったら、痕跡が残りやすいから、まともな保守をやっていれば、もっと早く発覚するはずだし、っていうのも推測に加味した要因としてある。)

    まぁあくまで予想、推測ですから別の攻撃内容で、運営者側の瑕疵(保守的な。不備不足のある監視・管理とか)がもう少し大きくなるものやもしれませんけど、でも一番悪いのはあくまで攻撃者ってのは変わらないし、ユーザーが被害を受けた事実も変わらないから、理由なんてどうでもいい、だからどうしたって方も出てくるとは思う。

隙間スキーマ をフォローする