끄적끄적

원격코드 실행 취약점(이미지 속 코드 삽입) 본문

해킹

원격코드 실행 취약점(이미지 속 코드 삽입)

widruv 2016. 6. 2. 00:48
※ 무분별하게 또는 악의적으로 사용하게 되면 법적 처벌을 받을 수 있습니다. 함부로 사용하지 마세요. 

개요
  • 이미지 파일 내 명령어를 삽입하여 서버 시스템 권한을 탈취하거나 시스템 내 파일 삭제, 이동 등 시스템 파일 시스템을 조작할 수 있는 취약점

취약한 소프트웨어
  • Kodak image viewer
  • MS Windows Graphics Rendering Engine을 쓰고 있는 소프트웨어
  • ImageMagick (2016.05.04 취약점 발견) - 이미지를 새로 만들거나 수정하는데 사용되는 커맨드라인 기반의 오픈소스 소프트웨어
  • 등등.. (귀찮아서 더 찾아보지 않았습니다..)

공격 시나리오
  1. 서버에 원격 코드가 삽입된 이미지 파일을 업로드
  2. 서버가 취약한 이미지 처리 소프트웨어를 사용하여 이미지 파일을 조작
  3. 이 때, 이미지 속의 삽입된 코드가 실행되어 시스템 권한을 탈취하거나 악성 코드 실행
- 이 외에 이미지 파일 내에 php 코드를 삽입해서 이 파일을 php 형식으로 로드하면 코드가 실행됨


공격 예시
설명
공격 예제
쉘 명령어 삽입
fill 'url(http://www.naver.com/attack.jpg"|ls "-la)'
HTTP, FTP 요청 삽입
fill 'url(http://www.naver.com/)'
파일 삭제
image over 0,0 0,0 'ephemeral:/tmp/delete.txt
파일 이동
image over 0,0 0,0 'msl:/tmp/msl.txt'



공격 원리
  • 프로그램 내에서 system 함수로 처리하는 곳에서 확장자 필터링이 안전하게 구현되지 않은 경우 시스템 명령을 수행할 수 있음


방어 방법

  • 최신 Windows OS 보안 패치 적용
  • 최신 소프트웨어 패치
  • File Upload, File Inclusion 과 같은 공격 방어를 적용


'해킹' 카테고리의 다른 글

HTTP 응답 분할(HTTP Response Splitting, CRLF) 취약점  (0) 2016.05.08
DRDoS ( 분산 반사 서비스 거부 공격 )  (0) 2016.04.10
Command Injection / Execution  (0) 2016.02.26
File Inclusion  (0) 2016.02.26
File Upload  (0) 2016.02.26
Comments