[하루한줄] CVE-2021-28459: Microsoft Azure DevOps Server Reflected XSS

URL

CVE-2021-28459

Target

Microsoft Azure DevOps Server 2020.0.1

Explain

Azure DevOps Server는 팀 단위의 소프트워어 개발 협업 툴입니다. 프로젝트 파일 업로드 권한을 갖는 해커는 프로젝트의 Collection Setting에 접근해 Reflected XSS 공격을 할 수 있습니다.

<ProcessTemplate>
  <metadata>
    <name>XSS here: <img src=x onerror=alert(document.URL)></name>
    <description>This template is flexible and will work great</description>
    <version type="aa12a345-00a0-1f11-ba00-b12345b12345" major="1" minor="0" />
    <plugins>

프로젝트 파일을 업로드할 권한이 있는 인증된 사용자는 Collection Setting > Process에 .zip파일 형태로 프로세스 탬플릿을 업로드할 수 있습니다. 탬플릿 구조에 따르면 ProcessTemplate.xml 파일은 <name>을 포함해야 하는데 XSS 취약점이 있어 악용할 수 있습니다.

탬플릿 업로드 시 프로세스 템플릿이 변경되었다는 메세지를 띄우며 삽입된 JavaScript가 실행됩니다.