Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2022-29072 — Windows에서 7-Zip 21.07 이하 버전은 .7z 확장자를 가진 파일을 도움말>내용 영역으로 끌어다 놓으면 권한 상승 및 명령 실행을 허용합니다. | Kitploit
도구/GitHubGitHub/kagancapar/cve-2022-29072
Privilege EscalationVulnerability AnalysisExploitationLateral MovementFuzzingCommand and ControlPayload DevelopmentBinary Exploitation
GitHubkagancapar/cve-2022-29072

CVE-2022-29072

Windows에서 7-Zip 21.07 이하 버전은 .7z 확장자를 가진 파일을 도움말>내용 영역으로 끌어다 놓으면 권한 상승 및 명령 실행을 허용합니다.

저장소 보기
673105134년 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

정보

어디에도 권한 상승 공격을 위한 PoC 코드를 게시한 적이 없습니다. 발견된 PoC 코드는 권한 상승과 전혀 관련이 없습니다. 참고하시기 바랍니다.

7-zip 정보

7-Zip은 자유롭고 무료인 파일 아카이버입니다. 7-Zip의 명령 프롬프트 버전은 Unix 계열 시스템을 위해 설계되었으며, AmigaOS도 여기에 포함됩니다. 또한 DOS와 호환되는 Dost Port 또는 HX-DOS 확장자를 통해 Windows 명령 프롬프트에서 실행할 수 있습니다.

CVE-2022-29072

약간 터키어로 작성하겠습니다. 여러분도 터키어를 좀 배우세요.

우선 취약점 발견 과정에 대해 이야기하고 싶습니다. WinRAR에서 XXE 취약점을 실행하는 페이로드를 보았습니다. 동시에 HTML Helper 파일을 사용하여 JavaScript를 통해 ActiveXObject와 WScript.Shell로 명령 실행이 가능했습니다. 이는 lolbins에 사용되는 HTA와 다를 바가 없었고, 어떻게 상황을 유리하게 만들 수 있을지 고민했습니다.

(https://www.exploit-db.com/exploits/47526)

사실 제 목표는 7z, zip, rar 등의 압축 기술 확장자를 더블 클릭한 후 대상 컴퓨터에서 reverse-shell을 획득하는 것이었고, 이를 위해 HTML Helper 파일을 사용할 수 있을지 고민하고 있었습니다. WinAFL로 오랜 퍼징 작업 후 FzGM.exe에서 heap-overflow를 발견했지만, heap overflow 이후에도 권한은 동일한 사용자로 유지되어 의미가 없었습니다. 따라서 CreateRemoteThread를 사용하지 않았습니다. API를 호출해야 했고, 그 API를 트리거하려면 chm 파일이 필요했기 때문입니다. 소스 코드를 분석한 결과, 특히 두 군데에서 Windows API 호출 시 잘못된 처리가 있음을 발견했고, 이는 직접적인 권한 문제를 야기했습니다. 이 발견 지점은 아래 이미지에서 볼 수 있듯이 FzGM.exe 아래에 자식 프로세스를 생성합니다. 정상적으로는 이 프로세스가 hh.exe에서 실행되어야 합니다.

7-zip-1

api

API를 include하지 않고 함수를 통해 올바르게 설정했다면 hh.exe 아래에 자식 프로세스가 생성될 것으로 예상했지만, 7-zip.chm 파일이 이를 자체적으로 호출하고 있습니다. 전형적인 예로, 7-zip.chm 파일을 편집하여 명령 실행을 적용하면 확인할 수 있습니다. Heap overflow 후 호출된 API의 권한 문제 이후, 7z.dll 파일 내의 잘못된 구성을 악용했습니다. 이 작업은 오랜 시간 동안 시도해 왔습니다. CreateRemoteThread()를 수행하는 것은 의미가 없습니다. 제 페이로드 안에서 실행하고 호출해야 하는 것은 HTML Helper API 자체가 아니라, 7-zip을 통해 이 API가 후크된 지점이며 그 지점을 실행할 수 있어야 합니다. 하지만 이 페이로드는 hh.exe 통합으로만 작동하므로 드래그 앤 드롭과 같은 기능으로 작동합니다. 7-zip.chm 파일이 7-zip의 HELP 버튼을 통해 호출되고, 이곳에서 호출된 주소가 페이로드 내에서 권한 문제가 있는 "base pointer"로 연결되면 상위 사용자로 전환됩니다. 이후 작업은 페이로드 안에 psexec이 포함되어 있고, psexec -s cmd.exe 명령으로 nt authority/system으로 시스템 권한을 상승시키는 것입니다.

7-zip-2

PoC 동영상:

https://user-images.githubusercontent.com/33525376/163654035-d40ca72a-7dbc-425f-ade2-3820cfababb2.mp4

ActiveXObject 우회 정보

많은 질문이 ActiveX 경고에 관한 것이었습니다. 이 문제는 다음과 같이 해결할 수 있습니다. 페이로드가 실행되기 전에;

<'HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\0' -Name '1201' -Value '0' -PropertyType "DWord"> 확인을 수행합니다. 이 값이 1이면 팝업이 나타나고, 0으로 새 값이 할당되면 우회됩니다. 단, 해당 시점에 페이로드를 실행하는 사용자에게만 영향을 미칩니다.

중요 참고 사항

저는 필요한 사항을 개발자에게 전달했으며 CVE에서도 이를 인정했습니다. 사람들이 자신을 권위자로 착각하고 나에게 익스플로잇을 제공해야 한다는 인식을 갖는 것을 이해할 수 없습니다. 업데이트 후 공개하겠다고 이미 밝혔음에도 불구하고 업데이트 전에 이루어진 이러한 무례함은 스스로를 권위자로 보는 데서 비롯된 것으로 생각합니다. 저는 권한 상승 공격의 PoC 코드를 절대 공개하지 않기로 결정할 수도 있습니다. 이는 저의 자유 의지이며, 그 정당성을 의심하는 사람이 무엇을 생각하는지 전혀 신경 쓰지 않습니다.

예방 조치

첫 번째 방법: 7-zip이 업데이트되지 않으면 7-zip.chm 파일을 삭제할 수 있습니다. 두 번째 방법: 프로그램 내 모든 사용자는 읽기 및 실행 권한으로 접근해야 합니다.

Sigma 규칙

관련 Sigma 규칙: https://github.com/kagancapar/CVE-2022-29072/blob/main/7z_CVE-2022-29072.yml

도구 다운로드