
CVE-2023-33404에 대한 개념 증명 익스플로잇: BlogEngine.NET CMS 3.3.8.0 및 이전 버전의 인증된 파일 업로드 취약점으로, 하드코딩된 업로드 경로를 통해 원격 코드 실행을 가능하게 합니다.
BlogEngine.NET CMS (버전 3.3.8.0 및 이전)에서 EditOwnPosts 권한이 있는 사용자는 하드코딩된 위치에 악성 파일을 업로드할 수 있습니다.
아래 스크린샷과 같이 "action=video" 매개변수를 가진 /api/upload 엔드포인트로의 POST 요청은 파일 업로드 프로세스를 트리거합니다.

애플리케이션은 먼저 사용자가 비디오 업로드를 진행할 수 있는 EditOwnPosts 권한을 가지고 있는지 확인하며, 그렇지 않으면 오류를 발생시킵니다.
아래 스크린샷에 묘사된 바와 같이, 101번과 105번 줄에서 애플리케이션은 업로드되는 파일에 대해 하드코딩된 위치를 설정합니다. 그 후, 107번 줄에서 UploadVideo라는 함수를 호출합니다.

UploadVideo 함수는 대상 디렉토리가 존재하는지 확인하고, 존재하지 않으면 생성한 후 파일을 디렉토리에 저장합니다.

아래 스크린샷에 묘사된 바와 같이, 악성 파일을 하드코딩된 디렉토리로 이동시킵니다. 업로드된 파일을 요청하면 RCE로 이어집니다.
