
VM에서 CVE-2023-2825 악용하기
이 저장소는 MassCyber Center 멘토십 프로그램 기간 동안의 제 여정과 산출물을 기록합니다. 이 멘토십 프로그램은 사이버보안 프로젝트를 완료한 후, 사이버보안 전문가들이 참석하는 쇼케이스 행사에서 이를 발표하도록 요구했습니다. 이 프로젝트의 목표는 가상 머신을 구축하고, 공격하고, 보호하고, 관리하는 것이었습니다. 구체적으로, 제 목표는 알려진 Gitlab 취약점인 CVE-2023-2825를 악용하여 보안 약점을 이해하고 완화 전략을 구현하는 것이었습니다.
가상 머신을 구축하기 위해 강력한 x86 및 AMD64/Intel64 가상화 제품인 VirtualBox를 활용했습니다.
환경 설정:
VM에는 CVE-2023-2825의 영향을 받는 GitLab 버전 16.0.0이 설치되어 있습니다. 이 취약점은 경로 순회 버그를 악용하여 인증되지 않은 사용자가 서버에서 임의의 파일을 읽을 수 있게 합니다. 광범위한 조사 끝에 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 멘토십 프로그램이 제공한 지도에 감사드리며, 이러한 기술을 향후 사이버보안 문제에 적용할 수 있기를 기대합니다.