DMARCレポート XML生データの説明

DMARC
この記事は約8分で読めます。

DMARCのXMLレポートは、あるドメインで送信された電子メールの認証結果に関する情報を提供します。これによりドメイン所有者は、メールがどのように扱われ、どの送信元からのメールがDMARCポリシーに従っているか、または従っていないかを確認することができます。

それでは、DMARC XMLレポートの主要な要素について詳しく見ていきましょう。

RUAアドレス宛に届くXMLレポート

下記は実際のDMARCレポートのXMLファイルです。Netflixから@ezweb.ne.jp宛に送信され@brandkpper.netへ転送されたメールのレポートです。転送メールなのでSPF認証は失敗、DKIM認証が成功しています。

Netflix.comのDMARCレコード

v=DMARC1; p=reject; fo=1; rua=mailto:netflix@rua.netcraft.com,mailto:dmarcreports@netflix.com,mailto:dmarc_agg@dmarc.250ok.net;ruf=mailto:netflix@ruf.netcraft.com,mailto:dmarcreports@netflix.com,mailto:dmarc_fr@dmarc.250ok.net

Netflixでは下記のDMARC設定になっているようです。

項目説明
policyrejectDMARC認証に失敗したメールは受信拒否
fo1rufレポートの送信オプション。1はメールがSPFまたはDKIMのアライメントに失敗した場合に失敗レポートが送信される。
rua送信先メールアドレスmailto:netflix@rua.netcraft.com,mailto:dmarcreports@netflix.com,mailto:dmarc_agg@dmarc.250ok.net集約レポートの送信先。3個のメールアドレスへ送信
ruf送信先メールアドレスmailto:netflix@ruf.netcraft.com,mailto:dmarcreports@netflix.com,mailto:dmarc_fr@dmarc.250ok.net失敗レポートの送信先。3個のメールアドレスへ送信
DMARC設定の説明

DMARCレポートは受信側の@brandkeeper.netからNetflinxのDMARCレコード内のRUAメールアドレス宛にGz形式で圧縮された添付メールが送信されています。

メール送信からDMARCレポート送信の流れ
送信されたDMARCレポートメール

XMLデータの各項目の説明

このGZファイルを解凍すると、下記のXMLファイルが現れました。ぱっと見た感じわかりずらいですが、非常にシンプルなデータ構造になっています。それでは、このXMLデータの各項目を解説していきましょう。

XML
<?xml version="1.0" encoding="UTF-8" ?>
<feedback>
  <report_metadata>
    <org_name>CVH</org_name>
    <email>dmarc@brandkeeper.net</email>
    <report_id>netflix.com.1691593200.1691593200</report_id>
    <date_range>
      <begin>1691593200</begin>
      <end>1691593200</end>
    </date_range>
  </report_metadata>
  <policy_published>
    <domain>netflix.com</domain>
    <adkim>r</adkim>
    <aspf>r</aspf>
    <p>reject</p>
    <sp>none</sp>
    <pct>100</pct>
  </policy_published>
<record>
  <row>
    <source_ip>27.89.248.243</source_ip>
    <count>1</count>
    <policy_evaluated>
      <disposition>none</disposition>
      <dkim>pass</dkim>
      <spf>fail</spf>
    </policy_evaluated>
  </row>
  <identifiers>
    <header_from>members.netflix.com</header_from>
  </identifiers>
  <auth_results>
    <dkim>
      <domain>members.netflix.com</domain>
      <result>pass</result>
    </dkim><dkim>
      <domain>amazonses.com</domain>
      <result>pass</result>
    </dkim>
    <spf>
      <domain>mailer.members.netflix.com</domain>
      <result>softfail</result>
    </spf>
  </auth_results>
</record>
</feedback>

レポートメータデータ(3~11行目)

レポートを送信した組織、レポートの対象となるドメイン、レポートの期間、レポートのIDなどの情報が含まれます。

  • org_name: レポートを提供する組織またはISPの名前。
  • email: 問い合わせ先やフィードバックのメールアドレス。
  • report_id: レポートの一意の識別子。
  • date_range: レポートの期間を示す開始日と終了日(UNIXタイムスタンプ UTC時間)。

公開されているDMARCポリシーの情報(12~19行目)

ドメイン所有者が設定したDMARCポリシー、サブドメインに対するポリシー、失敗時の処理方法などの情報が含まれます。

パラメータ説明
domainレポートが報告する対象ドメイン。
adkimDKIMの認証モード (r=リラックス, s=ストリクト)
aspfSPFの認証モード (r=リラックス, s=ストリクト)
pメインのDMARCポリシー (none, quarantine, reject)
spサブドメインに適用されるDMARCポリシー
pctポリシーが適用されるメールトラフィックのパーセンテージ。
report_metadataセクション
  • domain: レポートが報告する対象ドメイン。
  • adkim: DKIMの認証モード (r=リラックス, s=ストリクト)。
  • aspf: SPFの認証モード (r=リラックス, s=ストリクト)。
  • p: メインのDMARCポリシー (none, quarantine, reject)。
  • sp: サブドメインに適用されるDMARCポリシー。
  • pct: ポリシーが適用されるメールトラフィックのパーセンテージ。

レコードセクション(29~46行目)

ドメインから送信された各電子メールに関する詳細な情報が含まれます。 これには、送信元IPアドレス、カウント、SPFとDKIMの結果、DMARCの結果、受信者が実行したアクションなどが含まれます。

rowsource_ip
count
policy_evaluateddisposition
dkim
spf
identifiersheaders_from
auth_resultsdkimdomain
result
spfdomain
result
rowセクションのデータ構造
  • row: このセクションは、特定の送信元IPに関連する情報を提供します。
    • source_ip: メールを送信したIPアドレス。IPv4またはIPv6の形式で表されたIPアドレスの値が含まれます。上記XMLの例ではIPは27.89.248.243、これは逆引きするとfwd01003.au.comとなり、KDDIのメールサーバーとなります。
    • count: 受信サーバーから見てそのIPからの送信されたメールの総数。RUAレポートはIPアドレス毎の集計レポートなので、1つのアドレスから送信されたメールの総数が記載されます。
    • policy_evaluated: 適用されたポリシー評価(disposition, dkim, spf)。
      • Disposition
        受信側で行ったアクションが記載されます。上記Netflixの例では、25行目でnoneとなっているので、受信側では何もせずにメールを受信したということになります。
      • dkim
        none, pass, fail, neutral, temperror, permerrorのどれか
      • spf
        none, pass, fail, softfail, neutral, temperror, permerrorのどれか
  • identifiers: メールのenvelope fromheader from情報。
  • auth_results: 認証結果。ここにはDKIM署名やSPF結果が含まれる。

これらの情報を利用して、ドメイン所有者は以下を行うことができます:

  • 認証に失敗した送信元IPアドレスの特定。
  • 認証に成功した送信元の確認。
  • DMARCポリシーの微調整や強化。

レポートはXML形式であるため、可読性のための解析ツールを使用してデータを理解するのが一般的です。

タイトルとURLをコピーしました