🥥

Webサービスの脆弱性をIPAに通報した話

2023/09/26に公開

会社で使っている某Webサービスを触っていたところ、気づいたのです。
このWebサービスのAPI、認証がかかってないので個人情報を取り放題だと。

正直なところ自分が開発や運用に関わっているサービスでもないので面倒くさいことに巻き込まれたくはないです。登録セキスペに重課金するのを止めた身からすれば改善の協力をする義務も無いですし。でも、放置して「実は以前から知ってました」ということがバレたら色々疑われるじゃないですか。個人だったらまだいいんですけど、会社で使っていたサービスなので放置するのもリスクが大きいと考えました。自社の情報どころか自分の個人情報が漏れる可能性もありますし。
ということで、IPA(独立行政法人情報処理推進機構)に「脆弱性関連情報の届出」をすることにしました。

この記事は、Webサービスの脆弱性を見つけたときはこういう窓口があるよという紹介になります。

IPAの脆弱性関連情報の届出とは?

簡単に言うと、脆弱性を見つけたら下記ホームページから届出が出せます。
ソフトウェア製品の脆弱性の窓口もありますが、今回はウェブアプリケーションに絞って話をします。

https://isec-vul-form.ipa.go.jp/ipa-vul-main/index.html

セキュリティが絡む内容なので、報告すること自体に不安を感じる方もいるかもしれませんが、この窓口は経済産業省の告示をベースに作られたガイドラインに基づいて運用されていますので、日本に対して特別な思想をお持ちの方以外は信用して良いのではないかと思います。

報告する上で、困った点

報告は前述のホームページからすれば良いのですが、入力する上でいくつか困った項目がありましたので、どう入力したかを紹介したいと思います。

脆弱性の種類とCWE

入力開始早々に脆弱性の種類を選ばさせられるのですが、どれを選べばいいか分からないです。。。
クロスサイト・スクリプティングSQLインジェクションはまだ分かりますが、クロスサイト・リクエスト・フォージェリ?、ディレクトリ・トラバーサル? って普通は分かるものなんですかね?
認証無しで個人情報取り放題を見つけただけなんですけど、どれを選べばいいんでしょうか。。。?
自分の勉強不足でページを閉じたくなりましたね。報告させないために分かりにくくしているのではと邪推してしまいます。
また、特に記載はないですが脆弱性の種類は、次のCWEとの関連付けと連動しているようです。階層化して連動する項目だということが分かるUIにしてほしいです。
それで、その他を選択すると認証とか認可系のCWEが表示されました。認証・認可がその他っておかしくないですか?
というかそもそもCWEってなんですか?

そんな感じで分かりにくかったですが、適当に入力したら申請が通ったので、分からなかったら適当にそれっぽいのを選んでおけばたぶん大丈夫だと思います。
(申請時はその他に認証・認可があるなんて気づかなかったので、本当に適当に選びました)

脆弱性により発生しうる脅威

機密性・完全性・可用性に対する影響を書けと、書いてありました。
今回のケースは機密性は完全にアウトでした。可用性は多分セーフです。
一方で、完全性は「たぶんPOST叩けば改ざん出来そうだけど、出来たら攻撃になるからヤバくない?」という感じでした。素直に「攻撃できそうだけで、試してないから不明」と書きましたが、どう書くのが正解だったのかよくわかりません。

脆弱性が再現した証跡

正当にアクセスしても閲覧できる範囲のデータに対して、認証なしでデータを取得して、その画面のキャプチャを撮りました。しかし、個人情報の塊だったのでアップロードするわけにはいかず、困りました。
脆弱性の報告の証跡って基本的に人に見られたらよくない内容になると思うんですよ。どういうデータをアップロードしてよくて、どういうデータだとダメなのかをしっかり書いておいてほしいです。
困ったので、キャプチャした画面の個人情報部分にモザイクをかけて送りました。

深刻度と影響範囲

CVSS v3 の基本スコアを書けとなっているんですけど、ナニソレ・・・?
参考に貼ってあるページを見てもよく分からないです。。。
https://www.ipa.go.jp/security/vuln/scap/cvss.html

必須項目ではなかったので入力しなくても良かったのですが、こちらのホームページで計算して算出しました。
https://jvndb.jvn.jp/cvss/#cvssv31

1時間でセッションが切れる

入力は1時間以内で行わないとデータが消えます。
内容をテキストエディタなどバックアップを取りながら入力しましょう。

報告後の流れ

報告後は特にこちらからするアクションはありませんでしたが、進捗に応じてIPAからメールが届きました。

  • 00日後 : 届出情報受信のご連絡
    • とりあえず届出を受け取ったという連絡
  • 02日後 : 届出情報受理のご連絡
    • バリデーションチェックが通ったという連絡
  • 05日後 : 取扱い開始のご連絡
    • サービスの運営者に通知したという連絡
  • 62日後 : 修正完了および届出受理証明書のご連絡
    • 修正が完了したという連絡

という感じで、大体2ヶ月くらいで完了しました。
IPAとしては、運営者に通知から3ヶ月以内の報告を求めているようなので、3ヶ月を見込んでおけば良いのかなと思います。

ちなみに最後のメールには届出受理証明書が添付されていたのですが、いまどきPPAPで送ってくるのは改善したほうが良いのではないかなぁと思いました。

まとめ

  • (日本の)Webサービスの脆弱性を見つけたらIPAに通報できる
  • 報告のフォームが難解で心が折れるので、IPAにはUXを改善して欲しい
  • 報告してから完了までは2〜3ヶ月くらいかかる
  • 脆弱性通報のシステムなのに未だにPPAPなのは改善するべきだと思う
NCDCエンジニアブログ

Discussion