レッドチームのターゲティング: KIOPTRIX1.2 ターゲティングのアイデアの詳細な説明 (vulnhub)

目次

初めに書く

ステップ 1: ホストの検出とポート スキャン 

ステップ 2: Web への侵入と CMS の脆弱性の悪用

ステップ 3: 機密情報の検索 

ステップ 4: SSH ログインと権限昇格

まとめと考察

初めに書く

 このブログは、兄貴の赤チームのメモのビデオに基づいています。銃撃戦の思考のすべてのステップが詳しく説明されています。記事の再現ではありません。読者は辛抱強く見れば何かを得ることができます。このターゲット マシンの難易度は高くありませんが、特に PHP コードの理解など、考慮する価値のあることがまだたくさんあります。この記事の撮影プロセスには、cms の脆弱性の悪用、機密情報の検索、ジョンによるパスワード ハッシュのクラッキング、sudoers ファイルの権限昇格などが含まれます。この標的マシンを撃った後、別のインスピレーションが得られました。情報収集をより完全にすることができれば、多くの回りくどい操作が省けるでしょう。完全な撮影アイデアについては、「レッド チーム ノート」ターゲット マシン集中講義: Kioptrix1.2 - LotusCMS の公開脆弱性の悪用、設定ファイルの機密情報の列挙、Mysql データベースの情報収集、John Brute Force を使用した md5 ハッシュのクラッキング_哔哩哔哩_bilibili を参照してください

 この記事で対象とするターゲット マシンは vulnhub のものです。詳細については、次を参照してください。

Kioptrix: レベル 1.2 (#3) ~ VulnHub 

  ダウンロードリンクは以下を参照してください。

 http://www.kioptrix.com/dlvm/KVM3.rar

 このターゲット マシンの目的は、root 権限を取得し、/root ディレクトリ内のフラグを表示することです。ダウンロードが成功したら、vmware で開き、ネットワーク リンクを NAT モードに設定します。ターゲットマシンの電源を入れると、次のようになります。 

ステップ 1: ホストの検出とポート スキャン 

 従来の考え方であり、緻密ではありません。ホスト検出およびポート スキャン コマンドの詳細については、私のブログの nmap に関する部分を参照してください:ペネトレーション テスト: ホスト検出とポート スキャンのアイデアと方法の概要 (nmap+ping コマンド+nc.traditional+擬似デバイス接続)

nmap -sn 10.10.10.0/24
nmap --min-rate 10000 -p- 10.10.10.136
nmap -sT -sV -O -sC -p22,80 10.10.10.136
nmap -sU --min-rate 10000 -p- 10.10.10.136
nmap --script=vuln -p22,80 10.10.10.136

 スキャンされたターゲット マシンの IP は 10.10.10.136 で、ポート 22 と 80 のみが開かれています。エントリ ポイントは Web である必要があります。次に、次のようにデフォルトのスクリプトを使用して、開いているサービスとオペレーティング システムのバージョンをスキャンして検出します。

 脆弱性スキャンでもいくつかの結果が得られ、SQL インジェクションの脆弱性やディレクトリ列挙の脆弱性が存在するようで、これには機密情報が含まれている可能性があります。露出された Dos、CSRF、およびその他の脆弱性については、比較的心配が少ないです。

ステップ 2: Web への侵入と CMS の脆弱性の悪用

 ブラウザを開いてターゲット マシンの IP にアクセスすると、次のインターフェイスが表示されます。

 URL にページパラメータがあることに注意してください。ファイルを含めることができます。試してみましたが、何も見つかりませんでした。このページはおそらく、開発者が gallery という新しい CMS を構築し、同時にこの CMS のセキュリティに非常に自信を持っていることを意味します。具体的な情報については、ブログ モジュールを参照してください。ブログの情報を確認しましたが、浸透に役立つ情報は見つかりませんでした。最後のログイン モジュールをクリックすると、ジャンプするまでに時間がかかり、最終的に次のログイン インターフェイスが表示されました。

 このインターフェイスは、CMS バックグラウンドのログイン インターフェイスである必要があります。同時に、ラベルのタイトルと下部のバナーから、このインターフェイスの cms が LotusCMS と呼ばれていることがわかります。これは深刻な cms であるため、最初に searchspoit に移動して、この CMS の抜け穴を検索します。

 このうち、最初の 18565 は msf フレームワークで悪用されていますが、当面は無視します。2 番目の 16982 をダウンロードした後、主に CSRF と XSS の脆弱性に関するものであることがわかりました。構築するのがさらに面倒なので、インターネットで LotusCMS エクスプロイトを検索しようとしたところ、github に LotusCMS エクスプロイト スクリプトがあることがわかりました。

 エクスプロイト スクリプトはlotusRCE.sh、リンクは次のとおりです: LotusCMS-Exploit/lotusRCE.sh at master Hood3dRob1n/LotusCMS-Exploit GitHub

 このコードを kali の vim ビューにダウンロードします。

 一般的な使用法は、このスクリプトの後の LotusCMS のパスであることがわかります。そのため、次のコマンドを実行します。

./lotusRCE.sh http://10.10.10.136/

 コード インジェクションの場所が実際に存在することを示すプロンプトが表示され、エクスプロイトにどの IP を使用するかを尋ねられます。これはリバウンド シェルの IP である必要があります。nc が Kali のポート 1234 を監視できるようにし、エクスプロイト スクリプトに Kali の IP とポートを入力します。

 

 脆弱性スクリプトを使用すると、接続モードを選択できます。一般的な NetCat -e を直接選択し、「1」と入力して Enter キーを押します。

nc によって監視されている端末がシェルを受信したことがわかります。

ステップ 3: 機密情報の検索 

初期シェルを取得したので、権限を昇格してみます。まず Python を使用してポートをマップし、対話性を高めます。

python -c "import pty;pty.spawn('/bin/bash')"

 sudo -l は現在の権限をチェックし、その結果パスワードを要求されますが、パスワードが何であるかはわかりません。

 /etc/passwd を表示してみてください:

 root に加えて、bash を持つ 2 人のユーザーlonelyferret と dreg が存在し、これがキーアカウントであることがわかります。/etc/shadow を読み取ってみると、権限が十分ではないことがわかります。次に、どのような機密ファイルがあるかを検索して、現在のディレクトリに何があるか見てみましょう。

 私たちの注意を引くフォルダー名がいくつかあります。キャッシュ キャッシュ、カーネル コア、およびデータ データを含む、開発者によって開発された cms 名ギャラリーは、ブラウザのアクセス対象マシンの IP に最初に表示されます。いくつか検索した結果、最終的にギャラリー ディレクトリでデータベース ログイン パスワード gconfig.php を見つけました。

 mysql の root アカウントのパスワードは、fuckyou ですが、これは非常に不正です。それではmysqlにログインしてみましょう

mysql -u root -p
fuckeyou

 ログインに成功したら、どのデータベースを調べますか?

 明らかに、私たちが最も懸念しているのはギャラリー データベースです。それを選択して、そこにどのようなテーブルが含まれているかを確認してください。

 関心のあるテーブルが 2 つあります。アカウントに関するアカウントとユーザーに関するユーザーです。最初に dev_accounts を確認します。

 2 つのパスワードのハッシュを取得できました。/etc/passwd から、bash を使用した 2 つのアカウントであると判断できます。パスワードの暗号化は md5 である必要があります。パスワードのハッシュをコピーしてファイルとして保存します。ファイル名はハッシュと呼ばれます。

 次に、john を使用してこれら 2 つの md5 をクラックします。一般的なターゲット マシンの md5 の共通辞書は、rockyou.txt です。

john hash --format=Raw-MD5 --wordlist=/usr/share/wordlists/rockyou.txt


ここで幕間です。john を繰り返し使用して同じパスワード ハッシュを解析しても結果は表示されません。john はクラッキング結果を john.pot に保存します。パスは次のとおりです。

 この john.pot を参照して、クラッキング結果の履歴を確認できます。つまり、dreg ユーザーのパスワードは Mast3r、lonelyferret ユーザーのパスワードは starwars であることがわかり (md5 値の対応関係に注意してください)、ssh でログインを試みることができます。


  また、gallarific_users テーブルをチェックして、ユーザーとパスワードを見つけることもできます。試してみると、このパスワード(n0t7t1k4)がログイン翌日の管理者ログインパスワードになります。

  このパスワードも非常に便利ですが、現時点ではすでに ssh のログイン アカウントを 2 つ取得しているので、最初に ssh ログインを試してみてもよいでしょう。

ステップ 4: SSH ログインと権限昇格

ユーザー dreg、パスワード Mast3r としてログインしてみます。

 一致するホスト キーが存在しないというメッセージが表示されます。これは古い問題です。パラメーター -oHostKeyAlgorithms=ssh-rsa,ssh-dss を追加するだけです。この問題が初めて発生するのは、レッド チームでの射撃時です: LampSecurity: CTF4 Targeting Ideas (vulnhub)_Bossfrank のブログ - CSDNブログ

ssh [email protected] -oHostKeyAlgorithms=ssh-rsa,ssh-dss

 ログイン成功しました!sudo -l 権限をチェックしてみてください:

 このアカウントには sudo を実行する権限がありません。スケジュールされたタスクと現在のディレクトリに関する情報を検索しましたが、何も得られませんでした。別のアカウント loneferret を参照してログインしてください。

ssh [email protected] -oHostKeyAlgorithms=ssh-rsa,ssh-dss 
starwars

こちらも正常にログインしました:

 次のように、lonelyferret ユーザーの権限を表示します。

 パスワードなしで 2 つのプログラムを実行できることがわかりました。まず su を試してください。

 残念ながら、lonelyferret ユーザーは root として su を実行することは許可されていないことがわかります。その後、sudo で ht を実行してみてください。

sudo /usr/local/bin/ht

 また失敗しました。プロンプトはターミナル tmux に問題があります。ターミナルの環境変数を追加しましょう。

export TERM=xterm-color

もう一度 sudo を実行して ht を実行してみてください。

 これはエディタであることがわかります。このエディタは sudo で起動できるため、このエディタには root 権限が必要です。この ht エディタを使用してシステム構成を変更し、権限昇格を実現できます。最も簡単な方法は、/etc/sudoers ファイルを変更することです。最初にこのファイルを開いて F3 キーを押し、/etc/sudoers と入力して編集してみます。

 最後の行にlonelyferret ALL=(ALL)NOPASSWD:ALLを追加してみると、現在のユーザーを最高の権限に変更できるはずです。

 次に、F10 キーを押して終了し、sudo -l を再度実行して権限を確認します。すでにすべての権限を持っていることがわかります。

 次に、sudo が bash を開始して権利を拡大します。

sudo /bin/bash

 次に、/root ディレクトリを調べて、Congrats.txt を見つけました。

 これでターゲティングは完了です。

まとめと考察

 ターゲットのドローンはそれほど難しくありませんが、考慮する必要がある詳細はまだたくさんあります。アイデアの中心は、CMS の種類と脆弱性を発見することです。searchspoit で特に優れたエクスプロイト スクリプトが見つからない場合は、github で再度検索するとよいでしょう。重要な点は、この LotusCMS の脆弱性を利用してリバウンド シェルを取得し、機密情報を検索することです。権限を昇格するときに、ht エディタに root 権限があることがわかりました。すぐに、このエディタを使用していくつかのシステム設定を編集して権限昇格を実現できると思いました。私のように、lonelyferret ALL=(ALL)NOPASSWD:ALL を /etc/sudoers に追加したり、/etc/passwd の root パスワードを直接変更したりする必要はありません。最後に撮影の流れをまとめます。

1. ホストの検出とポート スキャン

2. Web に侵入し、LotusCMS を発見し、最終的に github 検索を通じて脆弱性エクスプロイト スクリプトを取得し、実行後にリバウンド シェルを取得しました。

3. 機密情報の検索: データベースのルートのパスワードを見つけ、データベースに正常にログインし、ssh ログイン アカウントのパスワード ハッシュを見つけ、john で解読してパスワードを取得しました。

4. SSH ログインと権限昇格: SSH ログイン後、lonelyferret ユーザーが sudo /usr/local/bin/ht 権限を持っていることがわかり、ht エディタでシステム構成ファイルを変更することで権限を昇格できます。

 ここで対象となるマシンについて説明します。対象のドローンは難しくなく、簡単にまとめることができませんが、私自身の考えもたくさんありますので、読者の皆様に「いいね」と「フォロー」をたくさんしていただければ幸いです!読者が撮影について質問がある場合は、コメント欄にメッセージを残して指摘してください。私はすべて知っています。

 

おすすめ

転載: blog.csdn.net/Bossfrank/article/details/131800191