全3930文字

プレスリリース配信サービスを手掛けるPR TIMESで、リリースや関連資料のファイル258点が公表時間前に漏洩した。類推できるURL文字列で公開前ファイルにアクセスできる不具合があった。PR TIMESは漏洩を「不正アクセス」と述べ、断固たる措置をとるとする。しかし専門家は「不正アクセスに該当しない」「事件化は困難」と指摘する。

 「不正行為については会員企業様と連携して断固たる措置をとる考えです」。PR TIMESは2021年7月9日、会員企業が公表を予定していた発表前の資料が第三者のアクセスによって漏洩したと発表した。同社の発表では「不正アクセス」による不正な資料の取得だとしている。

 漏洩の被害を受けた顧客企業は13社。これらの企業が利用する14アカウントを通じて配信システムに登録した公表前のプレスリリースにひも付く画像のzipファイル230点が外部からアクセスを受けた。また13社のうち4社はプレスリリースにひも付くPDF文書ファイル28点も流出していた。合計で258点のファイルが外部から参照されていた。

 PR TIMESは不具合を確認して漏洩を防ぐ措置をとったうえで、顧客企業やリリースを受け取るメディア所属の会員などに対して謝罪した。セキュリティー強化によって再発防止を図るとも述べている。

 加えて今回の外部からのアクセスを「不正アクセス」「(資料の)不正な取得」などとして、冒頭のように不正行為には断固とした措置をとる姿勢を見せている。アクセスに使われたIPアドレスを特定してプロバイダーに申告したとも主張する。今後も調査を進め、アクセスした人物の責任を追及するとも受け取れる表現を用いている。

 果たして今回の資料漏洩は刑事事件化できる「不正アクセス」に該当し、PR TIMESはアクセスした人物を刑事や民事で訴えられるのか。

類推できるURLでファイルを取得

 今回の情報流出は、被害を受けた会員企業の中の1社からの指摘で明らかになった。「自社の発表前情報がSNS(ソーシャル・ネットワーキング・サービス)上で投稿されている」。PR TIMESは会員企業から7月5日にこうした報告を受け、直ちに関連部署が連携して調査に着手した。調査開始から間もない7月6日午前11時33分、流出の原因がPR TIMESのシステムにあると判明する。リリースを配信する同社サイトの機能のうち、サイト訪問者が誰でも利用できる画像一括ダウンロード機能に、セキュリティー上の不具合があった。

 問題となった不具合は、公開済みリリースにひも付く画像ファイルをダウンロードするURLを加工すると、公開前のリリースにひも付くファイルもダウンロードできてしまうものだった。URLの生成ロジックに規則性があり、特定企業の発表前リリースに割り当てられるURLを外部の人間が容易に類推できるようになっていた。

 リリースを配信する顧客企業が登録した公開前のファイルは、本来はその顧客企業のIDとパスワードでログインしなければ参照できないようにする必要がある。

 しかしPR TIMESのサイトが備える一括ダウンロード機能ではログインによるアクセス制御が働いていなかった。URLさえ分かれば、一切の会員登録無しに誰でもファイルをダウンロードできる状態になっていた。

 PR TIMESは不具合の原因判明から1時間後の7月6日午後0時35分に、サイトのソースコードに手を加え、未公開のリリースについて、画像の一括ダウンロードをできないようにした。

 アクセスログも調査したところ、「SNSに漏洩していた」と被害企業から報告があったプレスリリースに関して、一括ダウンロード機能を経由して外部のIPアドレスから画像ファイルが取得されていたことが判明した。調査に加わった技術者らはアクセスログに残るこの特定のIPアドレスの行動を洗い出す。同日の午後6時3分には、同じIPアドレスから13社14アカウントのファイルがダウンロードされた事実が判明した。午後7時59分から被害を受けた13社へ連絡を取り始めた。なお不審なアクセスが別IPアドレスでなかったかは、現在も調査を進めているという。

 2日後の7月8日午後8時22分には同様の不具合がPDF文書のダウンロード機能でも生じることが判明した。翌7月9日午前10時47分には再び緊急の改修を実施した。PDFのダウンロード機能に用いるURLに類推が困難な文字列を用いるように変更した。

 PR TIMESは一連の調査で一通りの被害範囲は確定できたと判断し、同日7月9日の午後に情報流出の事実を公表した。会員企業には上場企業も含まれ、漏洩したファイルに適時開示情報などが含まれる恐れもあった。ただしPR TIMESによれば、今回の258点のファイルには、金融商品取引法が重要事実と規定する、投資判断に影響を及ぼす内容の漏洩はなかった。