セキュリティ

ビューティガレージの不正アクセス|77万件の流出項目と会員が今すること

ビューティガレージの不正アクセス|77万件の流出項目と会員が今すること

美容商材の卸通販を営むビューティガレージは2026年10月15日、ECサイトのサーバーへの不正侵入で、「ビューティガレージ」「アイラッシュガレージ」の会員情報775,725件が外部に流出したと公表しました。流出した項目には、サロン名や電話番号、メールアドレスに加えて、パスワードとパスワード再設定用の質問・回答のハッシュ値が含まれます。本記事では公式発表の文言から、対象になる範囲、届いたメールや電話の見分け方、パスワードと秘密の質問の答えを変える範囲を整理しました。後半では、秘密の質問の答えがハッシュでも戻せる理由と、EC事業者がパスワードの保存と再設定の仕組みを置き換える実装をPythonで示します。

まとめ:ビューティガレージの不正アクセスで確定した事実と会員が今日行う対応

確定しているのは、10月10日から12日にかけて不正侵入があったこと、13日に検知して侵入に使われた経路を同日中に遮断したこと、流出した情報が775,725件であることです。公式発表は、住所・配送先、購入履歴、クレジットカード情報を含む決済情報の漏えいは確認されていないとしています。公開や不正利用の事実も、10月15日時点で確認されていません。

会員が今日中に行うのは、次の4つです。

  1. ビューティガレージと同じか似たパスワードを使っている他のサービスで、パスワードを変える
  2. 他のサービスで秘密の質問に同じ答えを登録していれば、その答えも変える
  3. ビューティガレージや取引先を名乗る振込先の変更、追加の支払いの依頼には応じず、普段使う公式窓口に確かめる
  4. メールやSMSのリンクから開かず、公式サイトを自分で開いてお知らせを確かめる

侵入経路とパスワードのハッシュ方式は公表されていません。2026年2月に公表されたクレジットカード情報の漏えい懸念とは別の事案です。

自分は対象か|775,725件の範囲と届いたメールが本物か見分ける公式の記載

ビューティガレージとアイラッシュガレージの会員が対象になる775,725件の範囲

対象は「2026年10月10日23時55分時点で『ビューティガレージ』『アイラッシュガレージ』のECシステムに保存されていたお客様情報」です。この時刻までに両サイトで会員登録をしていれば、利用頻度に関係なく含まれると考えて動くのが安全です。アイラッシュガレージはまつ毛エクステ向けの商材サイトで、同じECシステムに情報が保存されていました。

775,725は「件数」です。何人分かは書かれていません。1つのサロンで両サイトに登録していた場合や、同じ人が複数のアカウントを持っていた場合、1人で複数件に数えられている可能性があります。発表は「お客様・お取引先様 各位」に宛てたもので、個人客ではなくサロンや美容事業者の会員が中心です。

対象者への個別メールと当社がパスワードや認証コードを尋ねないとした記載

公式発表によると、対象の会員には「メールにて個別にご案内」を送っています。メールが届いたこと自体は不自然ではありません。見分けるべきなのは、そのメールが何を求めているかです。

発表は「当社から、本件への対応を理由にパスワードや認証コードをお尋ねすることはありません」と明記しました。パスワード、SMSで届く認証コード、カード番号の入力を求めるメールや電話は、この記載だけで偽物と判断できます。案内メールを受け取ったら、本文のリンクは開かず、ブラウザで公式サイトを開いてトップページのお知らせから同じ内容が出ているかを確かめてください。

流出した項目と流出していない項目|パスワードと秘密の質問がハッシュで漏れた意味

会社名からメールアドレスまでの9項目と住所・購入履歴・カード情報の扱い

公式発表が「漏洩が確認された主な項目」として挙げたのは、次の9項目です。

区分 項目
流出を確認 会社名、サロン名、お客様名、営業形態、サロンURL
流出を確認 電話番号、メールアドレス
流出を確認(ハッシュ値) パスワード、パスワード再設定用の質問・回答
漏えいを確認していない 住所・配送先、購入履歴、カード情報を含む決済情報

サロン名、営業形態、サロンURL、電話番号がそろっていると、店舗を名指しした連絡が作れます。「主な項目」という書き方なので、これ以外の項目が無いとは言い切れません。ハッシュ値について発表は「そのままでは読み取りできない情報」と説明しています。どこまで安全と言えるかは、後半の章で扱います。

2026年2月のカード情報漏えい懸念とは別事案で8月の第6報時点も調査中

ビューティガレージは2026年2月6日、カード情報の漏えい懸念を公表し、ECサイトのクレジットカード決済を止めています。8月19日更新の第6報は、それまでの調査で事実関係の特定に至らず、新たな外部専門機関による再調査を8月12日に始めたとしています。カード決済の再開時期は未定です。

今回の10月の発表は、この2月の件とは別に起きた新たな流出です。発表の中でも、2月の件の調査とカード決済再開に向けた対策を進める中で「新たな情報漏洩を招いた」と書いています。2月の件でカード情報の漏えいが確認された場合は、対象者に個別に連絡するとしているため、過去にECサイトでカード決済をした人は、引き続き利用明細を確かめてください。

会員が今日行う対応|パスワードと秘密の質問の答えを使い回し先から変える順番

同じパスワードを使う他サービスを先に変えてログイン通知を確かめる手順

公式発表のお願いは、ビューティガレージと「同一または類似のパスワード」を他のサービスで使っている場合に変更することです。ビューティガレージ自体のパスワード変更や強制リセットには、10月22日時点で触れていません。それでも、ハッシュ値が流出した以上、次の順で進めるのが安全です。

  1. 同じパスワードを使っていたメール、ネットバンキング、仕入れ先のECサイトを洗い出す
  2. お金とメールに関わるサービスから順に、別々のパスワードへ変える
  3. 多要素認証やログイン通知が用意されていれば有効にする
  4. 最後にビューティガレージにログインし、パスワードを変える

流出したメールアドレスとパスワードの組み合わせは、別のサービスでまとめて試される手口に使われます。仕組みと検知の方法はパスワードリスト攻撃とは、サロンのスタッフで共有するアカウントの決め方はパスワード管理のベストプラクティスで解説しています。

秘密の質問の答えを他サイトでも使っていたときに変える範囲と答えの決め方

見落としやすいのが、パスワード再設定用の質問・回答です。「母親の旧姓」「最初に飼ったペットの名前」といった答えは、他のサイトでも同じものを登録しがちです。同じ答えを秘密の質問に使っているサービスがあれば、そちらの答えを変えてください。

新しい答えは、本当の事実である必要はありません。パスワード管理ソフトで作ったランダムな文字列を答えとして登録し、ソフトに保存しておく方法が確実です。ビューティガレージの会員情報の画面で質問と回答を変えられる場合は、パスワードと一緒に変えておきます。

サロン名入りの偽の振込先変更や追加請求に応じないための確認経路

公式発表は「氏名やサロン名を知っている相手でも、不審な連絡には応じないでください」とし、振込先の変更や追加の支払いを求められたら「普段ご利用の当社公式窓口」に確かめるよう求めています。ビューティガレージには請求書払いの支払い方法もあるため、請求書を装った振込先変更の連絡は、サロン側が本物と取り違えやすい形です。

確かめるときは、届いたメールや電話で案内された番号ではなく、公式サイトに載っている番号へ自分からかけ直します。発信元の電話番号やメールの差出人は偽装できるので、それだけでは判断できません。偽の連絡が成立する仕組みはフィッシング詐欺とはで詳しく扱っています。

ハッシュ値でも安全と言えない理由|秘密の質問の答えは辞書照合で短時間に戻る

候補の少ない答えを速いハッシュで保存すると10万語の照合が0.2秒で終わる実測

ハッシュは元に戻す計算ができない変換です。ただし、候補を片端からハッシュにして、流出した値と同じものを探す方法なら元の文字列に行き着きます。秘密の質問の答えは、ペットの名前や地名のように候補が限られるため、この方法が効きやすい種類のデータです。OWASPの秘密の質問のチートシートも、答えが推測や調査で割り出されやすい点を弱点に挙げています。

次のコードは、塩(ソルト)を付けずにSHA-256で保存された答えを、10万語の候補から探す例です。2026年10月22日に手元のPython 3.14で実行したところ、約0.2秒で一致しました。ビューティガレージがどの方式で保存していたかは公表されていないため、これは同社の実際の保存方式を再現したものではありません。

import hashlib
import time

# 流出した「答え」のハッシュ(塩なしの SHA-256 で保存されていた場合を想定)
leaked = hashlib.sha256("さくら".encode()).hexdigest()

# 攻撃者が用意する候補(実際はペット名・地名・人名の辞書を使う)
candidates = [f"候補{i}" for i in range(100_000)] + ["さくら"]

t0 = time.perf_counter()
hit = next(w for w in candidates if hashlib.sha256(w.encode()).hexdigest() == leaked)
print("一致:", hit, f"{time.perf_counter() - t0:.4f}秒")

ハッシュの基本はハッシュ化とはで整理しています。塩があれば、同じ答えでも会員ごとに値が変わり、一度に全員分を照合することはできなくなる仕組みです。それでも、1人分を狙う照合の手間は候補の少なさで決まるため、答えの弱さは残ります。

アルゴリズムと塩の有無が未公表のため会員側は解読される前提で動く判断

今回の発表は、ハッシュのアルゴリズム、塩の有無、計算回数を公表していません。Argon2idやbcryptのように1回の計算に時間がかかる方式で保存されていれば、照合は上の例よりはるかに遅くなります。MD5やSHA-1を1回かけただけなら、上の例と同じ速さです。

どちらか分からない以上、会員側は「パスワードも秘密の質問の答えも、いずれ解読される」と見て動くのが正しい判断です。前章の変更をハッシュ方式の続報を待ってから行う理由はありません。短いパスワードや、辞書にある単語を使っていた会員ほど、急いで変えてください。

EC事業者のパスワード保存と再設定の設計|Argon2idとリセットトークンへの置き換え

Argon2idのOWASP最小構成とログイン時に古いハッシュを更新するPython実装

会員制のECサイトを運営する側にとって、本件はパスワードの保存方式を見直すための判断材料です。OWASPのパスワード保存のチートシートは、Argon2idを第一候補とし、最小構成をメモリ19MiB、計算回数2、並列度1としています。bcryptを使う既存システムには作業係数10以上を求め、入力が72バイトで切れる制約にも触れています。

Pythonではargon2-cffi(25.1系・2026年10月時点)が使えます。既定値はRFC 9106の2番目の推奨構成(メモリ64MiB)で、下の例ではOWASPの最小構成を明示しています。

# pip install argon2-cffi
from argon2 import PasswordHasher
from argon2.exceptions import VerifyMismatchError

# OWASP の最小構成: メモリ 19MiB(19456 KiB)・計算回数 2・並列度 1
ph = PasswordHasher(time_cost=2, memory_cost=19456, parallelism=1)


def register(password: str) -> str:
    return ph.hash(password)  # 塩は自動で生成され、ハッシュ文字列に含まれる


def login(stored_hash: str, password: str) -> str | None:
    """照合に成功したら保存すべきハッシュを返す。失敗したら None。"""
    try:
        ph.verify(stored_hash, password)
    except VerifyMismatchError:
        return None
    if ph.check_needs_rehash(stored_hash):
        return ph.hash(password)  # 設定が古いハッシュは、平文が手元にあるこの時点で作り直す
    return stored_hash

check_needs_rehashは、保存済みのハッシュが現在の設定で作られたかを判定します。OWASPも、作業係数を上げるときは次回のログインを待って作り直す方法を示しています。全会員のハッシュを一度に作り直すことはできないため、ログインのたびに置き換えていく運用の形です。

秘密の質問をやめて使い捨てのリセットトークンへ移すときの保存と失効の実装

OWASPのパスワード再設定のチートシートは、秘密の質問を再設定の唯一の手段にしてはならないとしています。代わりに、暗号論的に安全な乱数で作ったトークンを登録メールに送り、使い終えたら無効にし、一定時間で失効させる方式を挙げています。

import hashlib
import hmac
import secrets
from datetime import datetime, timedelta, timezone

# 発行: URL に載せるトークンはメールで送るだけで、DB にはハッシュだけを保存する
token = secrets.token_urlsafe(32)
row = {
    "token_hash": hashlib.sha256(token.encode()).hexdigest(),
    "expires_at": datetime.now(timezone.utc) + timedelta(minutes=30),
    "used": False,
}


def redeem(presented: str, row: dict) -> bool:
    """再設定 URL のトークンを検証する。成功したら呼び出し側で used を立てる。"""
    if row["used"] or datetime.now(timezone.utc) > row["expires_at"]:
        return False
    presented_hash = hashlib.sha256(presented.encode()).hexdigest()
    return hmac.compare_digest(presented_hash, row["token_hash"])

トークンは32バイトの乱数なので、秘密の質問の答えと違って辞書照合が成り立ちません。DBにハッシュだけを置くため、今回のようにDBが流出しても、有効なトークンは攻撃者の手に渡りません。再設定が済んだら、既存のログインセッションを無効にし、パスワードが変わったことを会員にメールで知らせます。セッションとトークンの失効の作り方はAPI不正アクセス対策の実装手順でも扱っています。

NIST SP 800-63B-4が秘密の質問を禁じた要件と既存会員の移行で見送る場面

米国のNIST SP 800-63B-4は3.1.1.2節で、パスワードの設定時に知識ベース認証や秘密の質問を使わせてはならない(SHALL NOT)と定めました。同じ節は、パスワードを塩付きで適切な方式でハッシュにすること、塩を32ビット以上にすることも求めています。

判断ははっきりしています。新しく作るECサイトに秘密の質問は入れません。既存のサイトでは、再設定の経路をメールのトークンに切り替えたうえで、質問と回答の列をDBから削除します。保存しているだけで、今回のように流出の対象になるからです。

見送るべき場面もあります。全会員に「新しい秘密の質問を登録し直してください」と求める移行は行いません。手間をかけて弱い仕組みを作り直すだけで、会員が他サイトと同じ答えを入れる問題も残ったままです。メールアドレスを持たない会員がいるなど、トークン方式に切り替えられない事情がある場合は、電話窓口での本人確認が代わりの経路です。サロン向けの予約やカルテのシステムも会員情報を抱える点は同じで、作り直しの判断はサロン管理システムとはで整理しています。自社のECサイトや会員システムで、パスワードの保存方式や再設定の流れに弱点が残っていないかを外から確かめたい場合は、脆弱性診断・セキュリティ診断で点検できます。

事業者の報告義務と問い合わせ先|個人情報保護委員会への報告期限と窓口の番号

不正アクセスによる漏えいで確報の期限が60日以内になる報告の決まり

ビューティガレージは、個人情報保護委員会などの関係機関へ「必要な報告・相談を進める」としています。個人情報保護委員会の案内では、不正の目的で行われたおそれがある行為による漏えいは、本人の数にかかわらず報告の対象です。速報は発覚日から3〜5日以内、確報は原則30日以内で、不正の目的によるおそれがある場合は60日以内とされています。

会員が法人名義でも、お客様名や連絡先は個人情報にあたります。同じ立場の事業者が、報告の対象と書き方をどう判断するかは個人情報保護委員会への報告義務で整理しました。

ビューティガレージの問い合わせ窓口0120-974-554と受付時間の公式記載

本件の問い合わせ先は、ビューティガレージの電話0120-974-554です。受付時間は10時から18時で、日曜と祝日は休みです。この番号は公式サイトに載っている注文受付の番号と同じなので、普段の取引で使っている番号から確かめられます。

覚えのない請求や振込先の変更依頼を受けた場合は、この窓口に連絡し、届いたメールや電話の内容を伝えてください。お金を払ってしまったときは、振込先の金融機関と最寄りの警察署にも早めに相談します。

よくある質問

ビューティガレージの不正アクセスについて、会員から出やすい質問をまとめました。2026年10月22日時点の公式発表に基づく内容です。

ビューティガレージのパスワードは変更しないといけませんか?

公式発表が求めているのは、ビューティガレージと同じか似たパスワードを他のサービスで使っている場合の変更です。10月22日時点で、ビューティガレージ自体のパスワード変更や強制リセットの案内は出ていません。ただし、パスワードのハッシュ値は流出しているため、他のサービスを変えたうえで、ビューティガレージのパスワードも変えておくのが安全です。秘密の質問の答えを他のサイトでも使っていれば、それも変えてください。

ビューティガレージから届いたメールは本物ですか?

対象の会員には、ビューティガレージがメールで個別に案内を送っています。届いたこと自体は不自然ではありません。ただし同社は、本件を理由にパスワードや認証コードを尋ねることはないと明記しています。それらの入力を求めるメールは偽物です。本文のリンクは開かず、公式サイトを自分で開いてお知らせを確かめてください。

クレジットカード情報は漏れていますか?

10月15日の発表では、クレジットカード情報を含む決済情報の漏えいは確認されていません。住所・配送先と購入履歴も同じです。2026年2月に公表したカード情報の漏えい懸念は別の事案で、8月19日の第6報時点で再調査が続いており、カード決済も止まったままです。過去にECサイトでカード決済をした人は、利用明細を確かめてください。

アイラッシュガレージだけの会員も対象ですか?

対象です。発表は、2026年10月10日23時55分時点で「ビューティガレージ」「アイラッシュガレージ」のECシステムに保存されていた情報を対象としています。どちらか一方だけの会員でも、この時点で登録していれば含まれると考えてください。775,725は件数で人数ではないため、両方に登録していた場合は複数件に数えられている可能性があります。

不正アクセスの原因や侵入経路は分かっていますか?

10月22日時点で、侵入経路は公表されていません。発表は、10月13日に検知し、使われた経路を特定して同日中に遮断したとしています。どこから侵入されたか、2月の件と関係があるか、ハッシュの方式は何かも明らかにされていません。原因を決めつけた情報には注意し、続報は公式サイトのお知らせで確かめてください。

関連記事

お気に入りに入れた記事の一覧

この記事は以下の記事からリンクされています

資料請求

今日のトレンド記事 直近 24 時間で、いつもより多く読まれている記事

  1. 2026.07.21 テックブログ Apache Tomcatの脆弱性一覧【2026年10月】最新版11.0.27・10.1.61・9.0.123とCVE-2026-59083ほかの影響確認・対応手順
  2. 2026.10.21 テックブログ NEC委託先の不正アクセスとは|顧客システム暗号化・情報漏えいの経緯と委託元が点検する正規アカウント
  3. 2026.10.21 テックブログ ふるさとチョイス不正アクセスで445万件流出:対象確認・パスワード変更と再開時期
  4. 2026.10.22 テックブログ Tomcatバージョン一覧とサポート期限【2026年10月】9.0系は2027年3月末で終了・9.1系と11.0系への移行判断
  5. 2024.07.05 コラム XAMPPの脆弱性とは?危険性とCVE-2024-4577への対策をわかりやすく解説【2026年10月】

RELATED POSTS 関連記事

目次