Critical Vulnerabilities in JPEG 2000 Library Let Attackers Execute Remote Code
- JPEG 2000 라이브러리의 취약점 발견
- Kakadu JPEG 2000 라이브러리에서 발견된 취약점은 원격 코드 실행(RCE)을 가능하게 하며, 이는 공격자가 시스템을 제어할 수 있도록 함
- 연구자들은 "조건부 손상(Conditional Corruption)" 기법을 개발하여 메모리 손상 취약점을 악용, 스스로 수정되는 이미지를 생성해 공격을 실행
- JPEG 2000 파일 구조와 취약점
- JPEG 2000 표준은 상자 구조를 통해 이미지 메타데이터(차원, 색상 정보 등)를 저장하며, 계층 구조를 허용
- 실제 이미지 데이터는 코드스트림(Codestream) 이라는 컨테이너에 저장되며, 각각의 세그먼트 마커가 고유한 식별자와 길이 필드를 포함함
- SOT(Start-of-Tile) 및 SOD(Start-of-Data) 마커는 타일(이미지의 직사각형 단위)의 시작을 정의하며, 이미지에서의 위치를 계산하는데 사용됨
- Kakadu JPEG 2000의 취약점 분석
- 연구자들은 Codestream 분할 취약점을 이용하여 임의 파일을 읽는 데 성공함.
- 사인드 정수 곱셈으로 인해 발생하는 힙의 경계 밖 쓰기 오류는 TALOS-2017-0309의 변형으로, 공격자는 로컬 파일에서 바이트를 이미지의 속성이나 픽셀에 삽입 가능
- JPEG 2000 디코더의 타일 데이터와 코멘트 마커를 조작하여 민감 데이터 유출 및 원격 코드 실행을 시도함
- 타일 데이터 조작 및 힙 오버플로우 활용
- 연구자들은 타일 번호 파라미터를 사용하여 제어된 데이터를 단일 타일에만 쓰는 이미지를 제작해 808080 아포칼립스(예상치 못한 충돌) 를 방지하고 신뢰성 있는 힙 오버플로우를 발생시킴
- Kha-Kha 슬라이드를 사용하여 메모리 주소 정렬을 동적으로 결정, 충돌을 피하고 익스플로잇 신뢰성을 높임
- 메모리 읽기 및 쓰기 원시 기능 활용
- 파일 읽기 및 메모리 읽기 원시 기능을 활용하여 조건부 손상을 실행, 특정 프로세스를 타겟으로 하여 전역 변수의 위치를 파악하고, 제어 흐름을 탈취해 임의의 코드를 실행함
'Kant's IT > Vulnerability' 카테고리의 다른 글
AWS 인스턴스 메타데이터 서비스(IMDSv1) 취약점 (0) | 2024.09.18 |
---|---|
Adobe의 Acrobat 원격 코드 실행(RCE) 취약점 패치 (CVE-2024-41869) (0) | 2024.09.18 |
Gitlab 취약점 발표 및 패치(CVE-2024-6678) (0) | 2024.09.17 |
Vulnerability in Acrobat Reader could lead to remote code execution; Microsoft patches information disclosure issue in Windows API (1) | 2024.09.15 |
보안뉴스_깃허브, 엔터프라이즈 서버에서 XML 서명 래핑 취약점 발견 (0) | 2024.08.28 |