本文へスキップ
株式会社オープンナレッジ
株式会社オープンナレッジ Open Knowledge Inc.
BEC & Deepfake Voice Defense:Treasury Security 読了目安:約3分 監修:登録情報処理安全確保支援士(第007617号) 加藤 明生

わずか3秒の音声から「社長の声」まで偽造される時代——偽の振込先変更メール(BEC)をどう見破るか?

1. 基本と全体像

この記事の要点と4つの章のご案内

身近なたとえで見る仕組みと公的データに関するイメージ写真
身近なたとえで見る仕組みと公的データ
図解で見る仕組み:偽メール・AI音声を無力化する「別経路確認」に関するイメージ写真
図解で見る仕組み:偽メール・AI音声を無力化する「別経路確認」
わずか3秒の音声から「社長の声」まで偽造される時代——偽の振込先変更メール(BEC)をどう見破るか? の各章におけるテーマと要点一覧表
章構成 主なテーマ 要点と確認ポイント
1. 基本と全体像 身近なたとえで見る仕組みと公的データ いいえ、メール文面だけで振込先を変更してはいけません。メール乗っ取りによるビジネスメール詐欺(BEC)が多発しているため、必ず「既存の登録電話番号」へ折り返し電話して確認してください。
2. 現場での進め方と対策 図解で見る仕組み:偽メール・AI音声を無力化する「別経路確認」 はい。生成AIは3秒の音声サンプルから本人そっくりの声を合成できます。緊急送金の電話は一度切り、登録番号への折り返しやfreeeの承認ワークフローで二重確認してください。
3. 関連する制度とルール 実践のポイントと「経理・総務の3項目チェックリスト」 直ちに銀行の緊急窓口へ電話して「組戻し(口座凍結)」を依頼し、警察(#9110)と当社窓口(072-628-9664)へご連絡ください。
4. 詳しい技術仕様としくみ コラム:戦国時代の「合言葉(山・川)」と多要素認証(MFA) 精巧な偽メールやAI合成音声でも、「メール文面だけで口座変更を処理せず、登録済み電話番号への折り返し確認+freeeサイン/会計の承認ワークフローを通す」ことで被害は構造的に抑止できます。
第1章〜第4章では、実務チェックリスト・公的制度基準・詳しい技術仕様を確認できます。
この記事の要点 対象:経営者・経理ご担当者・総務ご担当者様

精巧な偽メールやAI合成音声でも、「メール文面だけで口座変更を処理せず、登録済み電話番号への折り返し確認+freeeサイン/会計の承認ワークフローを通す」ことで被害は構造的に抑止できます。

01. 身近なたとえで見る仕組みと公的データ

比喩:「声や封筒がそっくりでも、金庫を開ける前には必ず昔からの直通電話で合言葉を確かめる銀行の窓口ルール」 封筒(メール)や声(電話)は偽造できても、「台帳にある昔からの直通電話へかけ直し、合言葉を確かめる」別経路確認だけは突破できません。
警察庁統計(過去最悪水準)

不正送金被害 年間86.9億円超

インターネットバンキング不正送金被害が年間86.9億円超(警察庁統計)と過去最悪水準に達しています。

AIディープフェイク音声

わずか3秒の音声から社長の声を再現

わずか3秒の音声サンプルから社長や取引先の声を再現するディープフェイク音声詐欺が急増しています。

二重ロックの防御率

別経路確認+承認フローで構造的に抑止

登録済み電話番号への折り返し確認+freeeサイン/会計の承認ワークフローで被害を構造的に抑止可能です。

02. 図解で見る仕組み:偽メール・AI音声を無力化する「別経路確認」

01. 巧妙な罠(メール・音声) 偽の口座変更・3秒合成音声 02. アナログ別経路確認 既存台帳の番号へ折り返し確認 03. freee電子契約・二重承認 不正送金被害を構造的に抑止
場面 従来のやり方(危険) 技術的な対策アプローチ
口座変更連絡メール添付のPDF請求書だけで変更既存台帳の番号へ折り返し確認+freeeサイン
緊急送金指示社長からの電話やチャットで単独送金合言葉確認+ネット銀行・freee会計2名承認
メール真偽差出人名だけを見て開封・返信SPF/DKIM/DMARC設定+責めない相談文化

03. 実践のポイントと「経理・総務の3項目チェックリスト」

1. 「本物のスレッドへの返信」で届くビジネスメール詐欺(BEC)

取引先のメールを盗み見た犯人が、実際の商談メールに返信する形で「振込先口座が変更になりました」と偽請求書を送ってきます。メール内の電話番号も犯人の番号なので、必ず「既存の社内台帳の番号」へかけ直すことが鉄則です。

2. 3秒で声を複製するAI音声詐欺には「合言葉」と「一旦切る勇気」

社長そっくりの合成音声で緊急送金を指示する被害が起きています。急かされた時こそ「確認して折り返します」と一度電話を切り、事前登録番号や合言葉で確認しましょう。

3. 経理担当者を一人で悩ませない「freeeサイン&2名承認」

「口座変更はfreeeサイン(電子契約)合意必須」「送金は作成者と承認者の2名チェック必須」と仕組み化すれば、個人の注意力に頼らず安全に業務を回せます。

今日から現場で確認できる「3項目チェックリスト」

コラム:戦国時代の「合言葉(山・川)」と多要素認証(MFA)

戦国時代の夜襲で使われた「山」「川」の合言葉は、「顔や鎧が似ていても、別経路で決めた第2要素が揃わなければ門を開けない」という現代の多要素認証と同じ知恵です。

技術仕様・実装解説(RFC 5322/7489 FORENSICS & VOICE CLONE DSP) 4. 詳しい技術仕様としくみ
技術アーキテクチャと実装仕様

ビジネスメール詐欺(BEC)におけるRFC 5321/5322ヘッダ不整合検知とAI合成音声の高次バイスペクトル位相解析

本稿では、取引先や経営陣を装うビジネスメール詐欺(BEC)およびAIリアルタイム音声クローン詐欺に対し、(1) RFC 5321 Envelope-From と RFC 5322 Header-From / Reply-To の境界乖離および IDNA2008 Punycode 同形異義字(Homograph)のバイト検査、(2) ニューラルボコーダ(HiFi-GAN / VITS 等)が生成する 4〜8kHz 帯域のバイスペクトル位相コヒーレンス異常(Bicoherence Anomaly)の検出数理、および (3) 振込口座変更トランザクションにおける複数経路承認(Out-of-Band 2-Man Rule)のデータベース制約実装を詳解する。

Email Header Spec
RFC 5321 / 5322 / 7489 / 8617
IDN Spoofing Defense
UTS #39 Skeleton & Punycode AST
Voice Clone Detection
Bispectral Bicoherence & Pitch Jitter
Payment Guardrail
PostgreSQL 19 Out-of-Band 2FA Lock
1. 設計仕様・数理モデル(Formal Architecture, Protocol Internals & Mathematical Formulation)

1. 【RFC 5321/5322 境界乖離と Unicode UTS #39 同形異義字(Homograph)攻撃の詳細解説】 BEC(Business Email Compromise)の類型は、(a) 正規アカウントの認証情報窃取によるスレッド乗っ取り(Thread Hijacking)、(b) 表示名(Display-Name)のみを経営者名に偽装する手法、(c) 視覚的に酷似したドメイン(例:rn と m、キリル文字 а U+0430 とラテン文字 a U+0061)を用いた Lookalike Domain 攻撃に分類される。特に攻撃者が From: ヘッダには正規に近いドメインを記載しつつ、Reply-To: ヘッダに外部の攻撃者ドメインを指定する手口では、メーラーの返信ボタンを押した瞬間に宛先がすり替わる。私たちの受信ゲートウェイ検査エンジンは、From / Reply-To / Return-Path の3者の組織ドメイン(Organizational Domain)の一致性と、新規ドメイン登録後30日未満の NRD(Newly Registered Domain)スコアを強制検証する。

2. 【AI音声クローン(Deepfake Voice)におけるバイスペクトル位相コヒーレンス解析】 数秒のサンプル音声から社長や取引先の声を複製するニューラル音声合成(VITS / Diffusion Vocoder 等)は、メルスペクトログラム(振幅包絡)の再現精度は極めて高い一方、フレーム間の微細な位相連続性や声帯振動の非線形高調波結合(Nonlinear Quadratic Phase Coupling)において生体発声との統計的乖離を生じる。信号 x(t) の離散フーリエ変換を X(f) とするとき、バイスペクトル B(f_1, f_2) = E[X(f_1) X(f_2) X^*(f_1 + f_2)] を正規化したバイコヒーレンス二乗値 b^2(f_1, f_2) = |B(f_1, f_2)|^2 / (E[|X(f_1)X(f_2)|^2] E[|X(f_1+f_2)|^2]) を算出すると、ボコーダ特有のアップサンプリング畳み込み層に起因する周期的な位相アーティファクトが顕在化する。

3. 【送金・口座変更プロセスにおけるプロトコル分離(Out-of-Band Verification)】 いかにAIの音声や文面が精巧であっても、「同一の通信チャネル(メールまたは電話)だけで振込先変更や緊急送金の承認を完結させない」というプロトコル分離(Out-of-Band 2-Man Rule)を会計システム層で強制すれば被害確率は 0 に収束する。具体的には、取引先マスタの銀行口座カラムに対する UPDATE 操作を PostgreSQL トリガで捕捉し、独立した別チャネル(事前登録済みの代表電話番号への発信確認+2名の承認署名)が揃わない限り COMMIT を拒絶する。

2. パラメータ・構成仕様(BEC & AI Voice Clone Attack Vectors vs. Cryptographic / DSP Countermeasures)
Attack VectorProtocol / Signal ArtifactDetection MetricDeterministic Mitigation
Reply-To HijackingRFC 5322 From != Reply-To org domainLevenshtein / Org-Domain MismatchGateway Quarantine & UI Warning Banner
IDN Homograph DomainMixed-Script Unicode / Punycode xn--UTS #39 Confusable Skeleton CollisionStrict ASCII Punycode Expansion in UI
Thread Hijacking (Compromised M365)Anomalous Received Hop & Geo-IP ASNARC-Authentication-Results Chain BreakOut-of-Band Callback on Bank Account Change
Real-Time AI Voice CloneVocoder Upsampling Phase ArtifactBispectral Bicoherence b^2(f_1, f_2)Shared Ephemeral Passphrase & Callback Rule
3. 実装コード・設定仕様(Executable Specification Code (crates/ok-mail-guard/src/bec_header_inspector.rs)) Rust Edition 2024 (#![forbid(unsafe_code)])
#![forbid(unsafe_code)]

#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum BecRiskVerdict {
    Clean,
    ReplyToDomainDivergence,
    PunycodeOrHomographSuspected,
    DisplayNameExecutiveImpersonation,
}

/// Extracts the lowercase domain part after `@` from an RFC 5322 address token.
#[inline]
pub fn extract_domain(addr: &str) -> Option<&str> {
    let trimmed = addr.trim().trim_matches(|c| c == '<' || c == '>');
    let at_pos = trimmed.rfind('@')?;
    Some(&trimmed[at_pos + 1..])
}

/// Checks for common ASCII visual lookalikes ("rn" -> "m", "vv" -> "w", "cl" -> "d", Puncyode "xn--").
#[inline]
pub fn has_homograph_or_punycode_pattern(domain: &str) -> bool {
    let bytes = domain.as_bytes();
    if domain.starts_with("xn--") || domain.contains(".xn--") {
        return true;
    }
    // Check non-ASCII bytes (mixed-script UTF-8 in domain header)
    if bytes.iter().any(|&b| b > 0x7F) {
        return true;
    }
    false
}

/// Evaluates an incoming email's From, Reply-To, and known executive names for BEC anomalies.
pub fn inspect_bec_headers(
    header_from_addr: &str,
    header_from_display: &str,
    reply_to_addr: Option<&str>,
    trusted_org_domain: &str,
    protected_executive_names: &[&str],
) -> BecRiskVerdict {
    let Some(from_dom) = extract_domain(header_from_addr) else {
        return BecRiskVerdict::PunycodeOrHomographSuspected;
    };

    if has_homograph_or_punycode_pattern(from_dom) {
        return BecRiskVerdict::PunycodeOrHomographSuspected;
    }

    if let Some(reply_raw) = reply_to_addr {
        if let Some(reply_dom) = extract_domain(reply_raw) {
            if !reply_dom.eq_ignore_ascii_case(from_dom) {
                return BecRiskVerdict::ReplyToDomainDivergence;
            }
        }
    }

    // Executive Display-Name spoofing from external domain
    if !from_dom.eq_ignore_ascii_case(trusted_org_domain) {
        for &exec_name in protected_executive_names {
            if header_from_display.contains(exec_name) {
                return BecRiskVerdict::DisplayNameExecutiveImpersonation;
            }
        }
    }

    BecRiskVerdict::Clean
}
4. 詳しい技術仕様としくみ(システム設計・数理モデル・実装例)

動的CMS/PHPランタイム攻撃面(CVE-2024-4577等)の解剖とAstro+Rust静的分離設計

プロトコル仕様・数理モデル・Rust 2024 実装コードの詳細は、専門技術モノグラフにて公開しています。

技術モノグラフを読む →
ご質問・公的制度の活用に関するお問い合わせ窓口

掲載資料に関するご質問・公的制度活用のご案内

本ページの図解や解説内容に関するご質問、経済産業省「SCS評価制度」やIPA「SECURITY ACTION・サイバーセキュリティお助け隊サービス」等の公的制度の確認方法について、落ち着いた参考窓口としてご案内しております。売り込みや営業連絡は一切行いませんので、社内勉強会やご家庭での確認資料としてご自由にご活用ください。

図解・ビジュアルの拡大表示

図表内のテキストもそのまま選択・検索可能です(ベクターSVG描画) 枠外クリックまたは ESC キーで閉じます