Grandpa 日本語でウォークスルー Hack The Box Machine:
Hack The BoxのGrandpaのウォークスルーです。難易度はeasyとなっています。
※本記事はサイバー犯罪を助長するものではありません。悪用は厳禁です。
目次
HTB Grandpa ウォークスルー
サマリー
local shell取得まで
ターゲットポート:TCP 80 (http)
脆弱性:ターゲットのhttpでは「Microsoft Internet Information Services (IIS) ver 6.0」が動作していた。IIS ver6.0にはMicrosoft IIS 6.0 – WebDAV ‘ScStoragePathFromUrl’ Remote Buffer Overflow(CVE-2017-7269)が内在していた。
この脆弱性により、local-shellを取得した。
local権限を取得したユーザ:nt authority\network
privilege Escalation取得まで
脆弱性:Microsoft 「MS10-15」
root権限を取得したユーザ:nt authority\system
Information Gathering
ポートスキャン
それでははじめます。まずはターゲット上で動作しているTCPポートをnmapで探します。nmapについてはこちらを参照ください。
nmapの結果、上画像の通り、TCPポート番号80(http)が開いていることが分かりました。また、「Microsoft IIS httpd 6.0」という文言から、「Microsoft Internet Information Services (IIS) 」がターゲットでは動作しているのではと推測できます。
IISについて調査した所、2021年8月時点でIISの最新バージョンは10.0です。ターゲットのIISのバージョンは6.0のため、古いバージョンの印象を受けました。そのため、まず古いIISのバージョンに脆弱性が内在している可能性を調査することにしました。
IIS6.0の脆弱性調査
ターゲットのIIS6.0に内在している脆弱性を調査していきました。
色々使えそうな脆弱性がありそうでした。その中でも、Microsoft IIS 6.0 – WebDAV ‘ScStoragePathFromUrl’ Remote Buffer Overflow(CVE-2017-7269)を利用してみることにしました。
Local shellの取得
(CVE-2017-7269)を利用した攻撃
こちらを参考に、実際に攻撃してみました。
その結果、local-shellを取得できました。取得したlocal-shellは「nt authority\network」です。
「nt authority\network」ではフラッグが入手できなかった。
ただしここで1つ問題が起こりました。
上画像の通り、ローカルユーザ名は「Harry」、rootユーザは「Administrator」であることは分かりました。しかし、これらのディレクトリに移動しようとした所、「Access is denied.」が表示され、移動することができませんでした。どうやら、「nt authority\network」では、ディレクトリへのアクセス権限が無いようです。
そのため、privilege escalation(特権昇格)の検討をすることにしました。
Privilege Escalation
Privilege Escalationに利用できそうな脆弱性調査
まずは、ツール「local_exploit_suggester」を使用し、privilege Escalationに利用できそうな脆弱性を調査していきました。
その結果、複数の脆弱性が見つかりました。今回は、Microsoft 「MS10-15」を利用することにしました。
「MS10-15」を利用した攻撃
こちらを参考に、実際に攻撃してみました。
しかし、エラー「Rex::Post::Meterpreter::RequestError 1054: Operation failed: Access is denied.」が発生しました。
そのため、プロセスをmigrateし、再度実施することにしました。
今度はうまくいきました。ユーザ「nt authority\system」(root権限)を取得できました。
flagを探す
user.txtは「Harry」ユーザのディスクトップ上にありました。root.txtは「Administrator」ユーザのディスクトップ上にありました。
以上で、Grandpaのウォークスルーが完了です。