
Windows의 Avast Antivirus 25.1.981.6에서 정수 오버플로 권한 상승 익스플로잇인 CVE-2025-3500을 연구하기 위한 교육용 랩 환경으로, 통제된 테스트를 위한 합성 익스플로잇 아티팩트를 포함합니다.
이 저장소는 Windows 플랫폼의 Avast Antivirus 버전 25.1.981.6에서 발생하는 정수 오버플로우 취약점(CWE-190)인 CVE-2025-3500 연구를 위한 실습 환경을 제공합니다. 이 취약점은 안티바이러스 엔진의 리소스 할당 모듈에서 부적절한 정수 검증으로 인해 발생하며, 산술 연산 중 랩어라운드(wraparound)로 이어집니다. 이를 악용하면 낮은 권한의 사용자 컨텍스트(PR:L)에서 시스템 수준 액세스로 권한을 상승시킬 수 있으며, 네트워크 공격 벡터(AV:N), 낮은 공격 복잡성(AC:L), 사용자 상호 작용 필요(UI:R)를 특징으로 합니다. CVSS 3.1 기본 점수는 9.0(심각)이며, 범위 변경(S:C)으로 인해 기밀성, 무결성, 가용성(모두 높음)에 영향을 미쳐 전체 시스템 손상을 초래할 수 있습니다.
교육 목적 고지사항: 이 실습은 교육 및 연구 목적으로만 제공됩니다. 통제된 환경을 제공합니다. 악의적인 활동에 사용하지 마십시오. 모든 구성 요소는 합성된 것이며 실제 시스템을 악용하지 않습니다. 이 저장소를 사용함으로써 귀하는 윤리적 해킹 지침과 현지 법률을 준수하는 데 동의하는 것입니다.
안전 고지사항: 이 설정은 환경에서 코드를 실행하는 것을 포함합니다. 항상 전용 가상 머신을 사용하십시오. 프로덕션 시스템에서 익스플로잇을 실행하지 마십시오. 제공된 익스플로잇 아티팩트(.exe 및 .bat)는 개념을 설명하기 위한 것입니다. 예를 들어, .bat는 .exe를 실행하고, .exe는 데이터를 처리한 후 종료됩니다. 우발적인 노출을 방지하기 위해 실습 환경을 격리하십시오.
익스플로잇 툴킷(exploit.exe 및 start-exploit.bat가 포함된 ZIP 파일)을 다운로드합니다. 이 ZIP은 안전한 미러에 호스팅되어 있습니다:
참고: 주요 익스플로잇은 exploit.exe(조작된 API 호출을 통해 정수 오버플로우를 트리거하는 컴파일된 C++ 바이너리)입니다. 익스플로잇 런처는 start-exploit.bat이며, 미리 정의된 인수(예: start exploit.exe --target=avast_engine --overflow=wraparound)로 exploit.exe를 실행합니다. C:\lab\exploit과 같은 로컬 디렉토리에 압축을 풉니다.
환경 설정:
익스플로잇 다운로드 및 준비:
C:\lab\exploit에 압축을 풉니다.start-exploit.bat를 실행하여 익스플로잇을 시작합니다(exploit.exe를 열고, 이 프로그램은 오버플로우를 트리거하기 위해 조작된 네트워크 패킷을 전송합니다).취약점 악용:
exploit.exe를 실행합니다. 오버플로우 표시기에 대한 시스템 로그를 관찰합니다.확인 및 정리:
실습을 위해서는 Avast Antivirus 25.1.981.6이 설치된 Windows 머신이 필요합니다. 모의 서비스는 명령 프롬프트를 통해 수동으로 시작할 수 있습니다:
net start AvastSvc (서비스가 실행 중이라고 가정).start-exploit.bat를 실행하면 exploit.exe가 실행됩니다. 이 과정은 다음을 수행합니다:
{ "resource_alloc": 2147483648 } (오버플로우 트리거).기술적 세부 사항: 오버플로우는 AvastResourceParser::AllocateBuffer(int size)에서 발생하며, 여기서 size * sizeof(struct)는 size > INT_MAX / sizeof(struct)인 경우 랩어라운드되어 할당 부족 및 힙 오버플로우로 이어집니다. 악용 시 이를 활용하여 kernel32.dll을 대상으로 하는 ROP 체인을 구성합니다.
alert tcp any any -> any 8080 (msg:"CVE-2025-3500 Attempt"; content:"|00 00 00 80|"; sid:1000001;)).질문이나 기여 사항이 있으면 이슈를 열어주세요. 윤리적으로 행동하십시오!