blogs.jpcert.or.jp Open in urlscan Pro
52.198.153.39  Public Scan

URL: https://blogs.jpcert.or.jp/ja/2023/08/maldocinpdf.html
Submission: On September 21 via manual from IE — Scanned from US

Form analysis 2 forms found in the DOM

Name: feedback_form

<form name="feedback_form" id="feedback_form">
  <p class="title">このページは役に立ちましたか?</p>
  <div class="inner">
    <p class="select">
      <label><input name="is_useful" id="is_usefull_yes" value="yes" type="radio">はい</label>
      <label><input name="is_useful" id="is_usefull_no" value="no" type="radio">いいえ</label>
    </p>
    <p class="result"><span class="count">23</span>人が「このページが役に立った」と言っています。</p>
  </div>
  <p class="title">その他、ご意見・ご感想などございましたら、ご記入ください。</p>
  <div class="inner">
    <p class="message">こちらはご意見・ご感想用のフォームです。各社製品については、各社へお問い合わせください。</p>
    <div class="container_a">
      <div class="container_b">
        <textarea name="free_text" id="free_text" cols="30" rows="3"></textarea>
      </div>
    </div>
    <p class="send_area">
      <span class="en_js_msg">javascriptを有効にすると、ご回答いただけます。</span>
      <span class="loader" style="display:none"><img src="/ja/common/images/fb_loader.gif" alt=""></span>
      <span class="thanks">ありがとうございました。</span>
      <input class="button" type="button" value="送信" disabled="">
    </p>
  </div>
  <input name="redirect_to" id="redirect_to" value="" type="hidden">
  <input name="feedback_host" id="feedback_host" value="//ws.jpcert.or.jp/cgi-bin/" type="hidden">
  <input name="uri" id="uri" value="" type="hidden">
  <input name="token" id="token" value="" type="hidden">
</form>

<form class="gsc-search-box gsc-search-box-tools" accept-charset="utf-8">
  <table cellspacing="0" cellpadding="0" role="presentation" class="gsc-search-box">
    <tbody>
      <tr>
        <td class="gsc-input">
          <div class="gsc-input-box" id="gsc-iw-id1">
            <table cellspacing="0" cellpadding="0" role="presentation" id="gs_id50" class="gstl_50 gsc-input" style="width: 100%; padding: 0px;">
              <tbody>
                <tr>
                  <td id="gs_tti50" class="gsib_a"><input autocomplete="off" type="text" size="10" class="gsc-input" name="search" title="検索" aria-label="検索" id="gsc-i-id1" dir="ltr" spellcheck="false"
                      style="width: 100%; padding: 0px; border: none; margin: 0px; height: auto; background: url(&quot;https://www.google.com/cse/static/images/1x/ja/branding.png&quot;) left center no-repeat rgb(255, 255, 255); outline: none;"></td>
                  <td class="gsib_b">
                    <div class="gsst_b" id="gs_st50" dir="ltr"><a class="gsst_a" href="javascript:void(0)" title="検索ボックスをクリア" role="button" style="display: none;"><span class="gscb_a" id="gs_cb50" aria-hidden="true">×</span></a></div>
                  </td>
                </tr>
              </tbody>
            </table>
          </div>
        </td>
        <td class="gsc-search-button"><button class="gsc-search-button gsc-search-button-v2"><svg width="13" height="13" viewBox="0 0 13 13">
              <title>検索</title>
              <path
                d="m4.8495 7.8226c0.82666 0 1.5262-0.29146 2.0985-0.87438 0.57232-0.58292 0.86378-1.2877 0.87438-2.1144 0.010599-0.82666-0.28086-1.5262-0.87438-2.0985-0.59352-0.57232-1.293-0.86378-2.0985-0.87438-0.8055-0.010599-1.5103 0.28086-2.1144 0.87438-0.60414 0.59352-0.8956 1.293-0.87438 2.0985 0.021197 0.8055 0.31266 1.5103 0.87438 2.1144 0.56172 0.60414 1.2665 0.8956 2.1144 0.87438zm4.4695 0.2115 3.681 3.6819-1.259 1.284-3.6817-3.7 0.0019784-0.69479-0.090043-0.098846c-0.87973 0.76087-1.92 1.1413-3.1207 1.1413-1.3553 0-2.5025-0.46363-3.4417-1.3909s-1.4088-2.0686-1.4088-3.4239c0-1.3553 0.4696-2.4966 1.4088-3.4239 0.9392-0.92727 2.0864-1.3969 3.4417-1.4088 1.3553-0.011889 2.4906 0.45771 3.406 1.4088 0.9154 0.95107 1.379 2.0924 1.3909 3.4239 0 1.2126-0.38043 2.2588-1.1413 3.1385l0.098834 0.090049z">
              </path>
            </svg></button></td>
        <td class="gsc-clear-button">
          <div class="gsc-clear-button" title="結果をクリア">&nbsp;</div>
        </td>
      </tr>
    </tbody>
  </table>
</form>

Text Content

JPCERT/CC EYES


JPCERTコーディネーションセンター公式ブログ

Language:

日本語 English
Top > “マルウェア”の一覧 > MalDoc in PDF - 検知回避を狙って悪性なWordファイルをPDFファイルへ埋め込む手法 -

増渕 維摩(Yuma Masubuchi)

2023/08/22


MALDOC IN PDF - 検知回避を狙って悪性なWORDファイルをPDFファイルへ埋め込む手法 -


 * 
 * メール

JPCERT/CCは、7月に発生した攻撃に、検知回避を狙って悪性なWordファイルをPDFファイルへ埋め込む新しいテクニック(以降本記事ではMalDoc in
PDFとする)が使用されたことを確認しました。今回は、使用されたMalDoc in PDFの詳細とその対策について解説します。


MALDOC IN PDFの概要

MalDoc in
PDFで作成されたファイルはPDFのマジックナンバーやファイル構造を持つにもかかわらず、Wordで開くことが可能なファイルとなります。このファイルをWordで開くことで、ファイルにMacroが設定されていた場合、VBSが動作し、悪性の挙動を行います。

なお、JPCERT/CCが確認した攻撃では、ファイルの拡張子は.docとして使用されていたため、Windowsの設定で.docの拡張子にWordが関連付けされている場合、MalDoc
in PDFで作成されたファイルはWordファイルとして開かれます。

本手法で作成されたファイルをWordで開き、通信が発生するまでの動画を以下に掲載していますので、ご覧ください。




MALDOC IN PDFの詳細

本手法で作成されたファイルのダンプ表示を図1に示します。攻撃者は、PDFファイルのオブジェクト後ろにWordで作成されたMacroつきのmhtファイルを書き込み、保存します。作成されたファイルはファイルのシグネチャとしてはPDFファイルと判定されますが、Wordで開くことも可能なファイルとなります。



図1: MalDoc in PDFのダンプ表示




MalDoc in
PDFで作成されたファイルを分析する際、図2に示すように、pdfid[1]などのPDF分析ツールでは悪性部分を発見できない可能性が高く、また、PDFビューアーなどで開いても悪性な挙動を確認できませんが、Wordで開くと意図しない挙動を行うため、注意が必要です。また、既存のSandboxやウイルス対策ソフトなどもPDFファイルとして判定されることから検知されない可能性があります。なお、JPCERT/CCが確認した攻撃ではファイルの拡張子は.docとして使用されていました。



図2: pdfidの結果


MALDOC IN PDFへの対策

本手法への対策としては、悪性なWordファイルの分析ツールであるOLEVBA[2]が依然として有効で、図3のようにOLEVBAを使用することで埋め込まれているマクロが出力されるため、ファイルの悪性部分をこのツールの出力結果で確認することができます。



図3: OLEVBAの結果




また、Yaraルールを使用した検知ルールの例としては次のようになります。なお、本手法において、ExcelファイルをPDFファイルへ格納した場合には、Excel起動時にファイルの拡張子が異なる旨の警告画面が表示され、警告を許可しないとExcel上でファイルが開かれないため、本手法にExcelファイルが用いられる可能性は現時点で低いと考えられます。

rule malware_MaldocinPDF {

    strings:
        $docfile2 = "<w:WordDocument>" ascii nocase
        $xlsfile2 = "<x:ExcelWorkbook>" ascii nocase
        $mhtfile0 = "mime" ascii nocase
        $mhtfile1 = "content-location:" ascii nocase
        $mhtfile2 = "content-type:" ascii nocase

     condition:
        (uint32(0) == 0x46445025) and
        (1 of ($mhtfile*)) and
        ( (1 of ($docfile*)) or 
          (1 of ($xlsfile*)) )
}



おわりに

今回紹介した手法は、Wordマクロにおける自動実行を無効化する設定などをバイパスする仕組みではありませんが、ファイルがPDFとして認識されることから、マルウェア分析をツールやSandboxなどによって自動化している場合、悪性判定結果に注意が必要です。今回確認したマルウェアの通信先やハッシュ値などについては、Appendixに記載していますのでご確認ください。

インシデントレスポンスグループ 増渕 維摩、喜野 孝太

参考情報

[1] pdfid.py
https://github.com/DidierStevens/DidierStevensSuite/blob/master/pdfid.py

[2] OLEVBA
https://github.com/decalage2/oletools/wiki/olevba

APPENDIX A: 通信先

 * https[:]//cloudmetricsapp[.]com
 * https[:]//web365metrics[.]com

APPENDIX B: マルウェアのハッシュ値

 * ef59d7038cfd565fd65bae12588810d5361df938244ebad33b71882dcf683058
 * 098796e1b82c199ad226bff056b6310262b132f6d06930d3c254c57bdf548187
 * 5b677d297fb862c2d223973697479ee53a91d03073b14556f421b3d74f136b9d

 * 
 * メール

この記事の筆者

増渕 維摩(Yuma Masubuchi)

2020年11月より JPCERT/CC インシデントレスポンスグループにおいて、主にマルウェア分析、インシデントのコーディネーションに従事。

このページは役に立ちましたか?

はい いいえ

23人が「このページが役に立った」と言っています。

その他、ご意見・ご感想などございましたら、ご記入ください。

こちらはご意見・ご感想用のフォームです。各社製品については、各社へお問い合わせください。



javascriptを有効にすると、ご回答いただけます。 ありがとうございました。


関連記事

 * カスタマイズ可能なマルウェア検知ツールYAMA

 * 開発者のWindows、macOS、Linux環境を狙ったDangerousPasswordによる攻撃

 * ELFマルウェアの静的分析におけるYaraルールを活用したF.L.I.R.Tシグネチャ作成手法

 * Linuxルーターを狙ったGo言語で書かれたマルウェアGobRAT

 * 攻撃キャンペーンDangerousPasswordに関連する攻撃動向

≪ 前へ
トップに戻る
次へ ≫
×

検索
 

カスタム検索

表示順:
Relevance

Relevance
Date






カテゴリ

 * マルウェア
 * インシデント
 * イベント
 * 脆弱性
 * セキュリティテクノロジー
 * フォレンジック
 * サイバーメトリクス
 * 制御システム
 * その他


タグ

 * Mirai
 * botnet
 * UPnP
 * IoT
 * volatility
 * ElasticStack
 * Python
 * Splunk
 * Datper
 * banking malware
 * Tool
 * BlackTech
 * JSAC
 * LogonTracer
 * Report
 * impfuzzy
 * RedLeaves
 * ChChes
 * PlugX
 * DarkHotel
 * 改ざん
 * web site
 * SysmonSearch
 * IIoT
 * PSIRT
 * Phishing
 * Training
 * Quasar
 * LODEINFO
 * Lazarus
 * Emotet
 * TSUBAME
 * Metrics
 * 標準・ガイド


よく読まれている記事

 * 1
   
   国際カンファレンス参加レポート ~Black Hat USA, DEF CON~

 * 2
   
   MalDoc in PDF - 検知回避を狙って悪性なWordファイルをPDFファイルへ埋め込む手法 -

 * 3
   
   「能動的サイバー防御」は効果があるのか? ~注目が集まるoffensiveなオペレーションの考察~

 * 4
   
   マルウエアEmotetへの対応FAQ

 * 5
   
   注意喚起や情報共有活動における受信者側の「コスト」の問題について ー情報発信がアリバイや成果目的の自己目的化した行為にならないためにー


ライター

 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 


年別アーカイブ

 * 2023年23
 * 2022年30
 * 2021年26
 * 2020年23
 * 2019年19
 * 2018年15
 * 2017年14
 * 2016年11
 * 2015年11
 * 2013年1

一般社団法人JPCERTコーディネーションセンター 〒103-0023
東京都中央区日本橋本町4-4-2 東山ビルディング8F

TEL: 03-6271-8901 FAX: 03-6271-8908

 * ご利用にあたって
 * プライバシーポリシー
 * お問い合わせ
 * 免責事項

© 1996-2023 JPCERT/CC