* 알림 : 본 포스트는 '2010 한국정보보호학회 동계학술대회'에 발표된 논문인 "A Study on Riskiness and Countermeasures of Personal Identifiable Information in Physical Memory"의 리뷰입니다.


물리 메모리에는 우리가 생각치 못한 많은 개인 정보들이 남아있습니다. 주민등록번호, 계좌번호, ID 및 패스워드 등이 그 대상입니다. 따라서 물리 메모리 포렌식의 가장 기본이 되는 분석 방법은 '문자열 검색'입니다. 너무나도 단순한 방법이고 어찌보면 수천만개씩이나 존재할지 모르는 문자열들 중에 중요한 정보를 찾는 것은 비효율적이기 때문에 old-fashioned method라고 치부될지 모르지만, 분명한 것은 어쨌든 중요한 정보가 '존재'한다는 것이고 이를 효율적으로 추출하는 것은 조사관의 몫이라는 것입니다.

이 논문은 물리 메모리 덤프에 존재하는 웹포털 사이트의 ID 및 패스워드를 추출하는 방법에 관한 논문입니다. 그 방법은 상당히 단순합니다. 물리 메모리 내에 존재하는 문자열 중 웹사이트로 전달하기 위한 POST Method와 관련한 문자열을 추출하고 이를 사이트 별 특징에 따라 정규표현식으로 ID와 패스워드를 추출하는 것입니다.

사실 누구나 생각해볼 수 있고 해외에서는 이와 같은 방식으로 웹사이트, 메신저 등의 계정 정보를 추출하는 방법에 대해 셀수 없이 논의되어 왔지만, 국내에서 자주 사용되는 웹사이트를 대상으로 하였을 때는 상당히 치명적이라는 사실이 와닿습니다.

메모리에 남아있는 모 사이트의 ID 및 패스워드
위와 같은 결과는 각 사이트들이 제공하는 보안로그인(일반적으로 1-3단계 제공)을 적용하더라도 똑같은 결과를 얻을 수 있습니다. 즉, 암호화하여 계정 정보를 전송한다고 하더라도 암호화되기 전의 데이터를 초기화 하지 않으면 메모리에 그대로 남아있게 된다는 것입니다.

물론 모든 사이트에 적용 가능한 방법은 아니며, 국내 모 포털사이트의 경우에는 보안로그인 여부와 관계없이 사용된 ID 및 패스워드를 초기화하여 관련 정보가 남지 않습니다. (하지만 불행하게도 90% 이상의 웹사이트는 위험 상태에 노출되어있습니다.)

Physical Memory Dump Explorer에 추가된 웹 패스워드 추출 기능

위 그림은 제가 만든 분석 도구인 Physical Memory Dump Explorer(a.k.a MEMA)에 새롭게 추가된 기능입니다. 실제 기능을 위한 모듈은 논문의 저자로부터 받아서 해결하였습니다. 결과를 통해 알 수 있듯이 상당히 많은 웹사이트들이 그 대상이 됨을 알 수 있습니다. 

간단히 논문 및 결과를 살펴보았습니다만, 모두가 메모리에 중요 정보가 남는다는 사실을 알면서도 "설마 누군가 들여다보겠어?"라는 생각으로 공용PC에서의 사용을 쉽게 생각하고 있는 것 같습니다. 참고로 실제 공용PC에서 메모리 덤프를 하여 프로그램을 돌려본 결과..... 역시 공용PC의 사용은 조심하시는게 좋겠습니다.




Leave a Reply