세계 보안 엑스포  전자정부 솔루션 페어  개인정보보호 페어  국제 사이버 시큐리티 컨퍼런스  세계 태양에너지 엑스포  스마트팩토리  세계 다이어트 엑스포  INFO-CON
Home > 전체기사
PHP 역직렬화 공격, 생각보다 광범위하다
  |  입력 : 2018-08-16 18:18
페이스북 보내기 트위터 보내기 네이버 밴드 보내기 카카오 스토리 보내기
PHP 역직렬화 공격의 다른 테크닉 발견돼...기존 취약점 재평가 해야
개발자들의 설계 패턴 변경과 Phar 오류 탐지 기능 도입 필요해


[보안뉴스 문가용 기자] PHP 역직렬화(unserialization) 공격은 공격자들과 보안 전문가들 사이에서 널리 알려진 것이다. 그런데 최근 새로운 공격 기법이 발표되면서 PHP 역직렬화의 공격 표면이 기존에 알려진 것보다 훨씬 넓다는 것이 드러났다.

[이미지 = iclickart]


이 방법을 발견한 건 보안 업체 세카르마(Secarma)의 연구 책임자인 샘 토마스(Sam Thomas)다. 그는 블랙햇 강연을 통해 “역직렬화 공격을 발동시키는 완전히 새로운 방법”을 발표했다. “PHP에는 unserialize라는 명령이 존재합니다. 이 명령을 실행시키면 역직렬화 과정이 시작되죠. 그런데 역직렬화를 발동시키는 다른 방법이 있다는 것을 알아냈습니다.”

역직렬화는 unserialization 혹은 deserialization이라고 하는데, PHP와 같은 애플리케이션에서, 이미 저장과 이동이 쉬운 형태로 암호화가 진행된 객체를(이런 암호화 과정을 직렬화(serialization)라고 한다) 라이브(live) 객체로 변환시키는 것을 말한다.

문제는 객체가 악의적으로 만들어졌거나 조작되었을 경우다. 이런 객체를 라이브 객체로 변환시키면(즉 역직렬화 하면) 나쁜 일들이 일어날 수 있다. 많은 경우, 원격 코드 실행 공격이 가능하게 된다. 이런 역직렬화 공격은 현재 빠르게 성장 중에 있는 위협거리로, 작년 OWASP 탑10 위협 목록에 포함되기도 했다. 또한 작년의 에퀴팩스 사건 또한 역직렬화를 통해 발생한 것으로 알려져 있다.

토마스는 강연장에서 PHP가 Phar 아카이브 내 자가 추출 파일을 다루는 원리와 메커니즘을 공격에 활용하는 모습을 시연했다. Phar 아카이브는 직렬화가 된 메타데이터를 포함할 수 있다. 공격자가 조작된 메타데이터가 포함된 Phar 아카이브 파일을 공격 대상의 로컬 파일 시스템에 집어넣을 수만 있다면, 이를 통해 파일 운영을 발동시켜(파일의 위치를 검색한다든지) 역직렬화 공격을 시작할 수 있는 것이다.

“여태까지 경로 취급 취약점들(path-handling vulnerabilities)의 위험도는 낮은 것으로 인식되어 왔습니다. 이번에 제가 발견한 방식은 이 생각을 뒤집습니다. 역직렬화 공격이 진행되는 일렬의 과정 속에 각종 경로 취급 취약점을 포함시킬 수 있게 되니까요. 서버사이드 요청 조작(SSRF) 취약점들도 마찬가지입니다. 이런 ‘낮은 위험도’의 취약점들까지 활용한 공격에 성공하면 공격자는 원격에서 명령을 실행할 수 있게 됩니다.”

토마스는 또한 유명한 PHP 라이브러리에 있는 몇몇 취약점과 익스플로잇 사례를 함께 발표하기도 했다. 뿐만 아니라 워드프레스에서 발견되었지만 아직 고쳐지지 않은 문제들도 가지고 나왔다. “전부 역직렬화 현상이 현실 세계에서 어떤 식으로 발현되는지를 보여주는 사례입니다. 역직렬화는 현재 수많은 취약점과 연계될 수 있는 상태에 있기 때문에, 기존에 ‘낮은 위험도’를 가진 것으로 알려진 것들이라도 경계해야 한다는 게 저의 주장입니다.”

그의 설명은 계속된다. “예전에는 이렇게 ‘낮은 위험성’으로 분류된 문제들에 대해 환경설정 오류 등으로 해결하려 했습니다. 그리고 실제로 문제가 사라진 것으로 착각했죠. 그렇지만 이제 그것만으로는 불충분합니다. 역직렬화 공격을 염두에 두고, 경로 처리 취약점이나 SSRF 취약점들을 다시 평가해야 합니다.”

토마스는 이런 점에 대해 보고서를 발표했는데, 거기에 토마스는 개발자들을 위한 몇 가지 제안 사항을 담기도 했다. “먼저는 역직렬화 어뷰징이 쉽게 이뤄지는 설계 패턴을 피하는 게 좋습니다. 또한 악성 Phar 아카이브를 탐지하는 데 도움이 되는 시그니처를 IDS와 IPS 시스템에 도입하는 것도 좋은 생각입니다.”

3줄 요약
1. PHP의 역직렬화 발동시키는 방법, 추가로 발견.
2. 역직렬화 공격은, 기존에 ‘사소하다’고 분류된 취약점들도 위험하게 만듦.
3. PHP 다루는 개발자들은 설계 패턴 바꾸고, 악성 Phar 아카이브 탐지할 수 있도록 해야 함.

[국제부 문가용 기자(globoan@boannews.com)]

Copyrighted 2015. UBM-Tech. 117153:0515BC
<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>

  •  
  • 0
  • 페이스북 보내기 트위터 보내기 네이버 밴드 보내기 카카오 스토리 보내기


  •  SNS에서도 보안뉴스를 받아보세요!! 
모니터랩 파워비즈 배너 시작 18년9월12일위즈디엔에스 2018WD 파워비즈 2017-0305 시작
설문조사
국내 정보보호 분야 주요 사건·이슈 가운데 정보보호산업에 가장 큰 영향을 미친 것은 무엇이라고 생각하시나요?
2001년 정보보호 규정 포함된 정보통신망법 개정
2003년 1.25 인터넷 대란
2009년 7.7 디도스 대란
2011년 개인정보보호법 제정
2013년 3.20 및 6.25 사이버테러
2014년 카드3사 개인정보 유출사고
2014년 한수원 해킹 사건
2017년 블록체인/암호화폐의 등장
기타(댓글로)