2024-04-20 01:45 (토)
MyMP3 Player에 버퍼오버플로우 취약점 발견…주의!
상태바
MyMP3 Player에 버퍼오버플로우 취약점 발견…주의!
  • 길민권
  • 승인 2012.08.03 03:37
이 기사를 공유합니다

NSHC Red Alert팀 강동우 연구원, 취약점보고서 발표해 위험 경보
미디어플레이어 중 하나인 MyMP3 Player에서 버퍼오버플로우(Buffer Overflow) 취약점이 발견됐다. 악성 m3u 재생목록 파일을 이용해 임의의 코드 및 서비스 거부를 발생 시킬 수 있는 취약점이다.
 
해당 취약점은 NSHC Red Alert팀의 강동우 연구원이 지난달 22일 최초 발표하고 23일 보고서 형태의 문서로도 공개했다. Red Alert팀에서는 이번 취약점 이름을 ‘MyMP3 Player Portable 2.19.2 Buffer Overflow’로 명하고 있고 위험등급을 ‘높음’으로 분류했다. 현재 패치가 안된 상태다.
 
Red Alert팀 관계자는 “취약점 테스트에 사용한 익스플로잇 코드는 Return Oriented Programming 기법을 이용해 메모리 보호 기법인 DEP설정을 우회하고 임의의 코드가 실행 될 수 있도록 작성했다”고 밝혔다.
 
취약점 대상 시스템 목록은 MyMP3 Player 프로그램 자체의 취약점으로 MyMP3 Player가 사용될 수 있는 모든 윈도우 운영체제가 대상이다.
 
강동우 연구원은 취약점 보고서에서 “MyMP3 Player 프로그램을 공격하기 위해 Stack Buffer Overflow, EIP변조,ROP가 사용되었다”며 “버퍼오버플로우 방법 중 Stack Buffer Overflow는 정상 버퍼 크기 이상의 문자열이 입력 되었을 경우 정상 버퍼를 넘어선 다른 영역을 침범해 Crash를 발생 시킬 수 있으며 Crash로 인해 익스플로잇을 시도 할 수 있다”고 설명했다.
 
공격 시나리오 순서는 다음과 같다.
① 피해자 컴퓨터의 DEP에서 MYMP3 Player를 제외시킨다.
② 피해자 컴퓨터에서 MyMP3 Player 구동 시킨다.
③ 피해자는 공격 코드가 들어있는 플레이 리스트파일을 실행 시킨다.
④ 피해자 컴퓨터에서 shellcode가 작동되는지 확인한다.
⑤ 공격 코드에 DEP우회 ROP를 추가하여 피해자 컴퓨터에서 MyMP3 Player를
실행 후 수정된 플레이 리스트파일을 실행 시킨다.
⑥ Shellcode가 작동
 
강 연구원은 “해당 프로그램이 플레이 리스트 파일을 불러 올 때 정상 버퍼 이상의 문자열을 확인하지 않는 것을 이용해 정상 데이터 대신 정상 버퍼 이상의 공격 shellcode가 삽입되어있는 플레이 리스트 파일을 불러와 shellcode가 실행된다”며 “이런 BOF를 막기 위해 데이터 영역의 실행 권한을 설정하는 DEP를 사용하지만 DEP설정하는 함수를 사용해 DEP를 해제하여 Shellcode가 실행 되도록 했다”고 설명했다.
 
이 취약점에 대한 대응방안으로 그는 “플레이 리스트 파일에 정상 버퍼 이상의 문자열이 들어왔을 때의 문제기 때문에 플레이 리스트 파일의 문자열 길이를 체크하는 코드를 추가 하거나 길이를 체크하는 체크섬 부분을 추가하면 될 것”이라고 조언했다.
 
좀더 자세한 사항이 궁금하다면 아래 Red Alert팀 페이스북 페이지에서 취약점 분석 보고서를 다운로드 할 수 있다. 또한 데일리시큐 자료실에서도 다운로드 가능하다.
 
- Red Alert팀 페이스북: www.facebook.com/gangshin.lee#!/R3d4l3rt.Notice
 
데일리시큐 길민권 기자 mkgil@dailysecu.com
■ 보안 사건사고 제보 하기

▷ 이메일 : mkgil@dailysecu.com

▷ 제보 내용 : 보안 관련 어떤 내용이든 제보를 기다립니다!

▷ 광고문의 : jywoo@dailysecu.com

★정보보안 대표 미디어 데일리시큐 / Dailysecu, Korea's leading security media!★