정말 오래간만에 번역한 책이 나온다. 작년 말에 이미 번역은 끝냈지만, 이런 저런 사정으로 인해 출간이 조금 늦어진 '악성코드와 멀웨어 포렌식'이라는 책이다. 비록 전문적인 보안 전문가는 아니지만, 보안 쪽에 관심이 많았기에 한번 시도해봤는데 결과가 어떨지 모르겠다(사람들이 영어를 다들 워낙 잘하니, 날이 갈수록 점점 더 번역하기가 두려워지고 있다. T_T). 아마존에서는 평가가 상당히 좋게 나왔는데, 국내에서는 어떨지 살짝 걱정되기도 한다. 워낙 큰 사고(?)들이 터져 다들 보안에 관심이 많긴 하지만 악성 코드 분석이나 제작 쪽으로 관심이 쏠려서 포렌식 분야는 상대적으로 외면 받고 있는 현실이니까 말이다.
참고로, 이 책은 단계별로 차근차근 범인을 찾아가는 방식이 탐정 소설처럼 느껴지긴 하지만 곳곳에 메모리 덤프도 나오고 코드 분석도 나오는 기술서이므로, 포렌식이 뭔지 궁금해서 그냥 재미로 읽기에는 대략 난감한 특성이 있다. 하지만 이런 기술적인 특성으로 인해 의외의 응용 분야가 열린다. 코드의 정적 분석과 동적 분석 기법이 실제로는 리버스 엔지니어링과 레거시 코드 분석 기법과 궤를 같이 하므로, 보안 쪽 관계자가 아니더라도 남의 코드 분석이나 디버깅을 좋아하는 분들이라면 이 책을 읽으면서 몇 가지 중요한 기술을 배울 수 있다. 따라서 리눅스나 윈도우 응용 프로그래머(특히 클라이언트 쪽이나 시스템 쪽)라면 디버깅/리버스 엔지니어링 서적을 읽는다는 기분으로 이 책을 파고 들면 소기의 성과를 거둘 수 있지 않을까 싶다.
원서가 2008년 6월에 나왔기에 조금 오래되었다는 느낌이 들긴 하지만(본문에서는 윈도우 XP와 리눅스 예전 배포판을 중심으로 설명하고 있다), 본문의 전개 방식과 설명 내용은 여전히 유효하므로 최근에 나온 고급 기법과 신형 플랫폼에 대응하는 데 큰 어려움은 없어 보인다. 악성코드와 멀웨어는 음지에서 암암리에 개발이 진행되고 있기에 인터넷에 올라온 글이나 책보다 늘 앞선다는 사실도 기억하면 좋겠다(각별한 주의 요망: 최신 멀웨어 기술은 포렌식 기법으로 실제 분석해보기 전까지는 어디에도 드러나지 않는다!).
현재 Yes24와 교보문고등에서 절찬리에 예약판매 중이니 많은 성원 부탁드리겠다. 독자 여러분을 위해 역자 서문을 정리해드린다.
요즘 들어 컴퓨터와 관련된 범죄 소식이 부쩍 늘어나는 느낌이다. 2011년 한 해만 하더라도 제2금융권 회원 정보가 유출돼 고객 정보가 새나가는 바람에 일대 소동이 벌어졌고, 이를 비웃듯 제1금융권 서버 센터가 공격을 받아 며칠 동안 금융 거래가 중단되는 초유의 사태가 벌어졌으며, 3500만 명에 이르는 회원을 보유한 포털 사이트가 해킹됨으로써 사실상 전 국민의 개인 정보가 모두 노출되는 심각한 사태에 직면했다. 그리고 서울시장 보궐 선거 당시에는 선관위 홈페이지까지 공격 받음으로써 경제, 사회 분야는 물론이고 정치 분야까지 검은 먹구름이 드리웠다. 무차별적인 스팸 메일 전송은 이미 옛날이야기가 돼버렸고, 봇과 악성코드를 동원한 분산 서비스 거부 공격은 물론이고 신원 도용과 사이버 테러까지 거의 모든 유형의 공격에서 대한민국도 더 이상 자유롭지 않은 상황이 돼버린 셈이다. 과거에는 호승심을 발휘해 자신을 드러내기 위해 사이버 범죄를 저질렀다면 요즘에는 돈을 목적으로 하기 때문에 기업화된 체계적인 공격으로 인해 피해 규모도 점점 더 커지는 상황이다.
이런 상황에서 어떻게 대응해야 할까? 전 세계가 사실상 거대한 네트워크로 묶여 있는 상황에서 팔짱 끼고 강 건너 불구경하는 상황은 이미 지났고 완벽한 방어를 하지 못하더라도 최소한 상황을 악화시키지 않도록 사태 파악과 대응에 필요한 전문 지식을 갖춰야 한다. 하지만 인터넷에 떠도는 단편적인 지식을 모은다고 해서 효과적인 대응 방안이 저절로 나오기를 기대하는 것은 폐차장에 모아놓은 자동차 고철 더미가 강풍에 합쳐져 전투기가 만들어지리라 기대하는 바와 다름 아니다. 하지만 이런 어려운 상황을 도와주기 위해 『악성코드와 멀웨어 포렌식』이라는 실전 지침서가 나왔다. 이 책은 악성코드 사고에 대응하기 위해 멀웨어를 찾아내고 기능을 분석하고 대응책을 마련하는 완벽한 지침을 제공한다. 단순한 프로그램 설명이나 교과서적인 이론은 완전히 배제하고, 윈도우와 리눅스 시스템에 침투한 멀웨어를 사실상 실전에 가깝게 철저하게 파고드는 방법을 사례 연구를 곁들여 설명한다.
멀웨어 분석과 대응은 리눅스/윈도우 프로그래밍 분야에서 중요한 리버스 엔지니어링/디버깅과 겹치는 부분이 상당히 많으므로 시스템에 대해 충분한 지식과 저수준 C 프로그래밍 기법을 이해하고 필요에 따라서는 컴파일러 최적화나 메모리 덤프를 사용한 호출 스택 확인과 같은 고급 기법도 이해하고 있어야 한다. 멀웨어가 됐든 오픈소스 소프트웨어가 됐든 유지 보수가 됐든 남이 만든 프로그램을 이해해야 한다는 커다란 목표는 동일하므로, 보안 분야에 몸담지 않더라도 보안에 어느 정도 관심이 있는 전문 프로그래머라면 이 책에 나오는 다양한 기법을 눈여겨보고 다른 분야에도 응용이 가능할 것이다.
이 책은 처음부터 끝까지 철저하게 기술서를 표방함에도 불구하고 (미국과 유럽 쪽에 주로 해당하는 내용이긴 하지만) 법적인 관점에서 체계적으로 사고 대응에 나서는 방법도 조언한다. 물론 이 책 한 권만으로 변호사의 전문적인 법률 컨설팅을 완벽하게 대체한다고 보기는 어렵지만, 악성코드 분석가들이 알아야 하는 기본적인 법률 지식과 주의 사항을 충분히 설명하고 있으므로 기본기를 다지기에 부족함이 없어 보인다. 실제 수사 기관과 법률 기관에 오랫동안 근무한 베테랑급 분석가에다가 FBI의 보안 전문 특수 요원까지 가세해서 이 책을 만들었으므로 기존의 보안서와는 또 다른 실무적인 통찰력을 제공하리라 확신한다.
이 책을 번역하는 과정에서 본문에 나오는 모든 URL을 검토해 최신 정보로 업데이트하려고 노력했지만, M&A가 잦고 은밀하게 물밑에서 움직이는 보안업계의 특성상 언제든지 사라지거나 위치가 바뀔 수 있다는 사실을 기억하자. 또한 책에 나오는 소프트웨어의 버전과 기능도 지속적으로 바뀌므로 책을 읽는 도중에 추가 정보를 얻기 위해 인터넷 검색 엔진에서 최신 정보를 습득할 필요가 있다. 지금은 업데이트가 중단된 상태지만 이 책(원서)의 공식 사이트인 http://www.malwareforensics.com/에서 여러 가지 윈도우/리눅스 기반 분석 도구와 온라인 자원에 대한 링크를 제공하므로 책을 읽으면서 참조하면 도움이 되겠다.
댓글 없음:
댓글 쓰기