
VM上でのCVE-2023-2825の悪用
このリポジトリは、MassCyber Center メンターシッププログラム期間中の私の歩みと成果物を記録したものです。このメンターシッププログラムでは、サイバーセキュリティプロジェクトを完了し、その後、サイバーセキュリティ専門家が出席するショーケースイベントで発表することが課されました。このプロジェクトの目標は、仮想マシンを構築し、攻略し、セキュリティ保護し、管理することでした。具体的には、既知の Gitlab の脆弱性である CVE-2023-2825 を悪用して、セキュリティ上の弱点を理解し、緩和策を実装することを目標としました。
仮想マシンを構築するにあたり、強力な x86 および AMD64/Intel64 仮想化製品である VirtualBox を利用しました。
環境構築:
VM には GitLab バージョン 16.0.0 がインストールされており、これは CVE-2023-2825 の影響を受けます。この脆弱性により、認証されていないユーザーがパストラバーサルのバグを悪用して、サーバー上の任意のファイルを読み取ることができます。広範な調査を行った結果、GitHub で公開されているエクスプロイトを発見しました: Occamsec for CVE-2023-2825。
このプロジェクトでは、元の Python コードを編集して実行時にユーザー入力を受け付けられるようにし、エラーハンドリングを実装することで、スクリプトをより対話的で堅牢なものにカスタマイズしました。以下は、脆弱な VM に対してエクスプロイトを実装・実行するために踏んだ手順です:
VM をセキュリティ保護するため、最新の Gitlab パッチバージョンである 17.5.1 に更新しました。そのために実行した手順は次のとおりです:
gitlab-rake gitlab:env:info
sudo gitlab-backup create
sudo apt-get update
sudo apt-get install gitlab-ee
sudo gitlab-ctl restart
gitlab-rake gitlab:env:info
VM を効果的に管理するため、安全かつ効率的な管理を確保するためのいくつかの対策を実装しました。これには、管理アクセスの制限、定期的な更新の適用、システム管理のベストプラクティスの順守が含まれます:
getent group sudo
このプロジェクトは、仮想マシンのライフサイクル(構築と脆弱性の悪用から、セキュリティ保護と管理に至るまで)を深く掘り下げることを可能にした、素晴らしい学習体験でした。CVE-2022-2825 を悪用することで、現実世界のセキュリティ脅威を特定し緩和する方法について貴重な洞察を得ることができました。VM をセキュリティ保護するプロセスは、先を見越したシステムメンテナンスと、最新のパッチとベストプラクティスを常に把握しておくことの重要性を再認識させてくれました。
このメンターシッププログラムを通じて、私は以下のスキルを磨きました:
全体として、この経験は私の技術力を強化し、サイバーセキュリティへの理解を深めました。また、進化し続ける脅威からシステムを保護する上で、警戒心と継続的な学習が果たす重要な役割を浮き彫りにしました。
MassCyberCenter メンターシッププログラムが提供してくれた指導に感謝しており、これらのスキルを今後のサイバーセキュリティの課題に応用できることを楽しみにしています。