
CVE-2023-42442 JumpServer 세션 녹화 임의 다운로드 취약점
CVE-2023-42442 JumpServer 세션 녹화 임의 다운로드 취약점
CVE-2023-42442는 Jumpserver의 두 가지 버그를 포함하는 조합 취약점입니다.
API 미인증 접근으로 인한 세션 정보 유출
디렉터리 권한 우회로 인한 녹화 파일 다운로드
python CVE-2023-42442.py -h
██████╗██╗ ██╗███████╗ ██████╗ ██████╗ ██████╗ ██████╗ ██╗ ██╗██████╗ ██╗ ██╗██╗ ██╗██████╗
██╔════╝██║ ██║██╔════╝ ╚════██╗██╔═████╗╚════██╗╚════██╗ ██║ ██║╚════██╗██║ ██║██║ ██║╚════██╗
██║ ██║ ██║█████╗█████╗ █████╔╝██║██╔██║ █████╔╝ █████╔╝█████╗███████║ █████╔╝███████║███████║ █████╔╝
██║ ╚██╗ ██╔╝██╔══╝╚════╝██╔═══╝ ████╔╝██║██╔═══╝ ╚═══██╗╚════╝╚════██║██╔═══╝ ╚════██║╚════██║██╔═══╝
╚██████╗ ╚████╔╝ ███████╗ ███████╗╚██████╔╝███████╗██████╔╝ ██║███████╗ ██║ ██║███████╗
╚═════╝ ╚═══╝ ╚══════╝ ╚══════╝ ╚═════╝ ╚══════╝╚═════╝ ╚═╝╚══════╝ ╚═╝ ╚═╝╚══════╝
@Auth: C1ph3rX13
@Blog: https://c1ph3rx13.github.io
@Note: 코드는 학습 목적으로만 사용하시기 바랍니다. 다른 용도로 사용하지 마십시오.
usage: CVE-2023-42442.py [-h] -t TARGET
CVE-2023-42442 by C1ph3rX13.
options:
-h, --help 이 도움말 메시지를 표시하고 종료합니다.
-t TARGET, --target TARGET
대상 URL

빌드
# 소스 코드 컴파일, 현재 Windows만 지원
go mod init CVE-2023-42442
go mod tidy
go build -ldflags="-s -w" -trimpath -o CVE-2023-42442.exe .\CVE-2023-42442.go
실행
.\CVE-2023-42442.exe -h
██████╗██╗ ██╗███████╗ ██████╗ ██████╗ ██████╗ ██████╗ ██╗ ██╗██████╗ ██╗ ██╗██╗ ██╗██████╗
██╔════╝██║ ██║██╔════╝ ╚════██╗██╔═████╗╚════██╗╚════██╗ ██║ ██║╚════██╗██║ ██║██║ ██║╚════██╗
██║ ██║ ██║█████╗█████╗ █████╔╝██║██╔██║ █████╔╝ █████╔╝█████╗███████║ █████╔╝███████║███████║ █████╔╝
██║ ╚██╗ ██╔╝██╔══╝╚════╝██╔═══╝ ████╔╝██║██╔═══╝ ╚═══██╗╚════╝╚════██║██╔═══╝ ╚════██║╚════██║██╔═══╝
╚██████╗ ╚████╔╝ ███████╗ ███████╗╚██████╔╝███████╗██████╔╝ ██║███████╗ ██║ ██║███████╗
╚═════╝ ╚═══╝ ╚══════╝ ╚══════╝ ╚═════╝ ╚══════╝╚═════╝ ╚═╝╚══════╝ ╚═╝ ╚═╝╚══════╝
@Auth: C1ph3rX13
@Blog: https://c1ph3rx13.github.io
@Note: 코드는 학습 목적으로만 사용하시기 바랍니다. 다른 용도로 사용하지 마십시오.
Usage of CVE-2023-42442.exe:
-proxy string
프록시 URL: http/https://IP:Port
-t string
대상 URL

httpx는 Writing custom transports를 사용해도 입력 url 형식을 자동으로 정규화합니다.
httpx 위키: https://www.python-httpx.org/advanced/#writing-custom-transports
requests는 그렇지 않습니다.
일부 코드는 다음 프로젝트를 참고했습니다:
https://github.com/tarimoe/blackjump