CVE-2016-4117 취약점 보고서
CVE-2016-4117 CVSS 점수 및 취약점 유형
| 유형 | 값 |
|---|
| CVSS 점수 | 10.0 |
| 기밀성 영향 | 완전 (모든 시스템 파일이 노출되는 전체 정보 공개가 발생합니다.) |
| 무결성 영향 | 완전 (시스템 무결성이 완전히 손상됩니다. 시스템 보호가 완전히 상실되어 전체 시스템이 손상됩니다.) |
| 가용성 영향 | 완전 (영향을 받는 리소스가 완전히 종료됩니다. 공격자가 리소스를 완전히 사용할 수 없게 만들 수 있습니다.) |
| 접근 복잡성 | 낮음 (특수한 접근 조건이나 완화 사유가 존재하지 않습니다. 악용에 필요한 지식이나 기술이 거의 없습니다. ) |
| 인증 | 불필요 (취약점을 악용하는 데 인증이 필요하지 않습니다.) |
| 획득한 접근 권한 | 없음 |
| 취약점 유형 | 코드 실행 |
| 영향을 받는 플랫폼 | Windows, Macintosh, Linux 및 Chrome OS [1] |
취약점 및 악용 방법에 대한 기본 설명.
Adobe Flash Player 21.0.0.226 및 이전 버전(Windows, Macintosh, Linux 및 Chrome OS용)에 치명적인 취약점(CVE-2016-4117)이 존재합니다. 악용에 성공하면 충돌이 발생하고 잠재적으로 공격자가 영향을 받는 시스템을 제어할 수 있게 됩니다 [2].
누군가로부터 MS Office 문서가 포함된 이메일을 받았거나 DDNS 서버에 호스팅된 MS Office 문서를 다운로드했다고 가정해 보십시오. 이 MS Office 문서가 이 취약점을 악용하려는 공격자가 특별히 제작한 것이라면 다음과 같은 일이 발생할 수 있습니다.
- Flash Player 21.0.0.226 이하(단, 21.0.0.196 이전 버전은 아님)가 실행되는 시스템에서 MS Office 문서를 엽니다 [6]
- 문서에서 Flash 기반 콘텐츠를 보게 되고 익스플로잇이 트리거됩니다
- 컴퓨터가 공격자의 서버에 연결되어 악성 페이로드를 다운로드합니다
- 미끼 문서가 표시되어 악성 콘텐츠를 인지하지 못할 수 있지만 시스템은 이미 손상되었으며 C&C(Command and Control) 서버의 지시를 기다리는 봇넷의 일부일 가능성이 있습니다 [자세한 내용은 기술 세부 정보 섹션을 참조하십시오]
어떤 시스템이 영향을 받나요?
Adobe Flash Player 21.0.0.226 이하를 실행하는 모든 Windows, Macintosh, Linux 및 Chrome OS 플랫폼이 CVE-2016-4117 취약점의 영향을 받습니다.
취약점을 완화하려면 어떻게 해야 하나요?
Adobe는 2016년 5월 12일에 CVE-2016-4117을 해결했으며, 보안 공지 [2]에 명시된 지침에 따라 제품 설치를 최신 버전으로 업데이트할 것을 사용자에게 권고했습니다. 또한 사용자는 시스템에 필요하지 않은 경우 Adobe Flash Player 사용을 피할 수도 있습니다.
익스플로잇 코드를 사용할 수 있나요?
예. CVE-2016-4117에 대한 Metasploit 모듈은 없지만, 메모리를 임의로 읽고 쓰기 위해 다음 단계를 따를 수 있습니다
- 공격자는 com.adobe.tvsdk.mediacore.timeline.operations.DeleteRangeTimelineOperation의 내부 인터페이스 이름과 충돌하는 “placement”와 같은 속성 이름을 정의합니다
- 이제 “placement” 인터페이스에 대한 호출로 인해 ActionScript VM이 내부 함수 getBinding을 호출하여 바인드 ID를 가져옵니다
- “placement” 속성이 인터페이스 이름과 충돌하므로 공격자는 바인드 ID를 조작하여 충돌을 일으킬 수 있습니다
- 메모리를 제어하기 위해 셸 코드를 주입하기 위해 익스플로잇은 고유한 값으로 ByteArray를 확장하는 객체를 정의합니다. 고유한 값은 익스플로잇이 메모리에서 객체를 쉽게 찾을 수 있도록 도와줍니다
- 이제 “placement” 속성은 바인드 ID를 조작하여 경계를 벗어난 읽기를 수행하고 셸 코드가 포함된 확장된 ByteArray를 가리킬 수 있습니다
- ByteArray에 있는 셸 코드가 실행됨에 따라 공격자는 객체 중 하나를 손상시켜 길이를 0xffffffff(높은 메모리)로, 데이터 버퍼를 주소 0으로 확장할 수 있습니다. 즉, 해당 객체는 메모리(RAM)의 모든 내용을 읽고 쓸 수 있습니다
- 예를 들어 시스템이 웹 서버인 경우 메모리에 저장된 개인 키 값을 익스플로잇이 읽어 웹 서버의 신원을 손상시킬 수 있습니다 [3]
악용 활동은 취약한 시스템에 어떤 영향을 미칠 수 있나요?
기본 시스템이 Adobe Flash Player 버전 21.0.0.226 이하(단, 21.0.0.196 이전 버전은 아님)를 실행하는 Ubuntu 기반 웹 서버라고 가정해 보십시오.
앞서 설명한 바와 같이 익스플로잇에 성공하면 공격자가 메모리 내용을 읽고 쓸 수 있습니다. 가능한 시스템 손상 유형은 다양합니다. 그중 일부는 다음과 같습니다
- 공격자가 메모리의 모든 내용을 획득하여 C&C 서버로 전송
- 공격자가 메모리를 플러시하여 일부 서비스 중단이나 프로그램 충돌을 유발
- 공격자가 백도어를 설치하여 추후 손상된 호스트에 접근할 수 있도록 함
- 공격자가 개인 키, 비밀번호와 같은 민감한 정보를 추출(일부 경우 가능)
- 공격자가 strace 또는 디버거 유틸리티를 실행하여 실행 중인 프로세스에 연결하고 가능한 시스템 호출/변수를 찾아 시스템 호출/변수 값을 변경
- 공격자가 시스템을 완전히 제어하고 시스템을 완전히 파괴
참고
- http://www.cvedetails.com/cve/CVE-2016-4117/
- https://helpx.adobe.com/security/products/flash-player/apsa16-02.html
- https://www.fireeye.com/blog/threat-research/2016/05/cve-2016-4117-flash-zero-day.html
- https://www.proofpoint.com/us/threat-insight/post/microsoft-word-intruder-8-adds-support- for-flash-vulnerability
- http://malware.dontneedcoffee.com/2016/05/cve-2016-4117-flash-up-to-2100213-and.html
- http://blog.morphisec.com/flash-vulnerability-cve-2016-4117