'와우해커'에 해당되는 글 1

  1. 2009/11/16 “윈도서버 해킹이요? 이젠 어림없습니다.” (1)


얼마 전, 실력있는 해커그룹 ‘와우해커’를 이끈 홍민표 쉬프트웍스 대

표를 만날 기회가 있었습니다.

홍 대표는 국내외 해킹대회에서 화려한 수상경력을 갖고 있는만큼, 해커들과 보안전문가들 사이에서는 아주 유명한 인물입니다. 현재는 보안회사를 운영하고 있습니다. ‘새싹’이라는 이름의 토종 무료백신을 사용해보신 분이라면 홍 대표를 아실 수도 있겠습니다.(쉬프트웍스를 알고싶으시다면 예전에 디지털데일리에 나왔던 기사를 참고하세요.)

지난 7.7 DDoS(분산서비스거부) 공격 당시 국가정보원이 공격진원지, 배후로 북한을 지목하자 자체 분석결과를 토대로 “악성코드 유포지는 ‘미국 서버 IP로, 북한 개입 가능성도 있지만 근거가 부족하다”며 사실상 반박했던 것도 홍 대표였습니다.

홍 대표는 마이크로소프트의 새로운 윈도서버 2008 R2를 사용하면서 이 운영체제(OS)가 제공하는 보안성과 편리성을 높이 사고 있었는데요. “윈도서버는 더 이상 뚫기 쉬운 서버가 아니다”라고 단언했습니다.

마이크로소프트의 운영체제가 보안에 취약하다는 인식을 갖고 있는 컴퓨터 사용자들이라면 홍 대표의 이야기를 한 번 들어보셔도 좋겠습니다.

제가 소화하기 어려운 기술적인 용어를 사용한 이야기가 상당수 있었지만, 재밌는 표현도 많이 튀어나왔습니다.

무엇보다 컴퓨터 사용자들의 보안관리에 크게 도움이 될 만한 메시지는 정확히 읽을 수 있었습니다.

쉽지만은 않았던 ‘해커와의 대화’, 이제 시작해볼까요?

홍 대표는 가장 먼저 “윈도 NT, 2000이 나왔던 2003년 초반까지 윈도서버는 보안에 아주 취약해, 뚫기 쉬운 서버였다”고 회상했습니다.

그러나 지난 2008년 마이크로소프트가 제공하는 비지스파크 벤처창업지원프로그램을 통해 홍 대표가 운영하는 쉬프트웍스의 총 20대의 웹, DB, 미디어 서버를 윈도서버로 모두 바꾸면서 향상된 보안성과 편리성을 맘껏 확인해 볼 수 있었다고 합니다.

#윈도서버에 대한 인식 전환 계기…“예전에는 윈도 방화벽이 썩었었죠.”

홍 대표는 “윈도서버에 대한 인식이 예전과는 많이 달라졌다”고 운을 뗐습니다.

성능이 우수해 서비스거부(DoS) 공격이 들어오더라도 서비스가 마비되지 않고 사용자에게 지속적인 서비스를 유지할 수 있을 정도라는 것을 느낄 수 있었답니다.

“윈도서버 2008 7.0이나 7.5 R2의 기본 설치 그대로 IIS를 올려 공격해 봤는데 멀쩡하게 운영되더라고요. 신경써서 세팅하면 더 많은 공격도 막을 수 있겠다 싶었습니다.”

그 이유 중 하나가 윈도에서 제공되는 방화벽 기능이 크게 향상됐기 때문이라고 홍 대표는 설명했습니다.

“예전에는 방화벽이 썩었었다”고 표현할 정도로 기능이 미비했지만, 이제는 인바운드, 아웃바운드 패킷 필터를 통한 양방향 공격 보호 기능을 제공합니다.

윈도서버 2003까지는 인바운드 공격 필터 기능만 제공됐다고 하네요.

# OS 자체 보호 기능 탁월…“윈도는 양파껍떼기”

무엇보다 서버 커널 수준의 보안 기능이 크게 강화돼 있다는 점을 칭찬했습니다.

알 수 없는 OS 자체 보호 기능이 겹겹이 둘러 싸여 있어 해킹 시도가 어려웠다고 합니다. “마치 양파껍데기처럼 하나를 까면 막고 있고, 또 까보면 또 막고 있더라고요.”

마이크로소프트는 이를 두고 계층적 방어(Defense In Depth)라고 부른답니다.

공격이 계속 들어오면 캐시로 바꿔 처리하는 방식도 다르다고 합니다. 그리고 자체적으로 빠르게 회복할 수 있는 능력도 갖고 있다고 하네요.

윈도는 공격을 하려고 해도 반드시 우회공격 루트를 찾아야 한다고 이야기 했습니다. 이를 리버스엔지니어링 기법이라고 하죠? 반드시 컴퓨터 어드민 권한을 얻어야 공격을 할 수 있답니다. 그런데 범위가 너무 넓다는 게 홍 대표의 이야깁니다.

“윈도 커널을 디버깅하거나 IIS 서버 취약점을 찾으려 할 때 엄청난 시간이 걸린다.”

홍 대표는 다른 두드러진 보안 기능으로는 메모리 실행 보호기능을 들었습니다.

“윈도 시스템을 직접 공격하는 것이 아니라 다른 사용자 PC를 통해 공격하기 위해서는 DLL 인젝션 기법을 써야하는데 메모리 실행 보호기능 때문에 어려웠습니다. 리눅스의 경우, 라이브러리에 스텍가느나 랜덤스틱같이 메모리 영역에서 조작이 안되게 하는 기능을 모두 알 수 있기 때문에 쉽게 회피할 수 있습니다.”

제가 질문했습니다. “그렇다면 윈도 자체를 공격할 수가 없다는 건가요? 계속 새로운 보안취약점이 발견되고 있지 않습니까?”

이에 대해 “윈도 OS 자체, 커널에서의 심각한 결함이 아니라 대부분 서비스나 애플리케이션 기능과 관련한 취약점입니다. 윈도 커널의 뼈대, OS 자체는 아주 강합니다”라고 말하더군요.

결국 윈도의 보안성이 취약하다는 건 운영체제 자체의 이슈보다는 애플리케이션 이슈가 더 크다는 것입니다.

# 보안업데이트가 더 중요…“서버는 서버답게 사용해야지, 서버백신은 의미 없다”

여기에 한가지 더, 사용자들의 이용행태의 문제점을 지적합니다.

홍 대표는 “서버보안을 위해 서버용 백신을 사용하는 것은 의미가 없다”는 폭탄 발언을 했습니다.

그 이유를 들어보니 고개가 끄덕여집니다. “서버는 하루종일 서비스만 돌아가는 시스템인데 왜 악성코드가 실행되는 거죠?”

사용자가 윈도서버에서 인터넷 서비스를 이용한다든지 하는 다른 동작을 했기 때문에 악성코드가 실행되는 것이고, 그 때문에 백신도 필요하게 된다는 이야깁니다.

본래의 기능대로 서버를 이용한다면 보안문제도 발생하지 않을 것이란 게 홍 대표의 생각입니다.

일반 PC용 운영체제를 사용해도 될 것을 성능이 좋을 것이라면서 노트북에 (그것도 불법복제된) 윈도서버2008을 설치하고, 많은 애플리케이션과 서비스를 사용하다보니 악성코드 감염 원인으로 작용하는 경우는 실제로 많을 것입니다.

여기에 윈도 보안업데이트도 안한다면 해킹은 얼마든지 당할 수 있습니다.

홍 대표는 “보안업데이트만 꼬박꼬박 잘하고, 윈도에서 제공하는 보안기능을 사용하면 해킹은 안 당할 것”이라고 말했습니다.

하나 관심가는 이야기도 했는데요. IDC에 서버를 설치하면 자동업데이트 기능을 끄라고 권고한답니다.

업데이트로 인한 서비스 중단, 별도로 손가는 작업을 안하기 위해서이겠지요. 이게 서버 운영체제의 보안패치율 저하로 이어지게 만드는 큰 원인 중 하나가 아닐지 걱정됩니다.

# 오픈소스와의 비교…“윈도 업데이트 안하고 보안기능 안쓰는 게 불편해서라구요?”

윈도 보안업데이트를 안하거나 윈도에서 제공되는 방화벽(디펜더)을 사용하지 않는 사람들도 나름대로 이유가 있습니다. 불편해서 입니다.

먼저, 윈도에서 제기되는 문제가 재부팅 이슈입니다.

홍 대표는 오히려 “리눅스에 비해 편리하다”고 이야기합니다.

“리눅스는 커널 업그레이드를 매번 해줘야 하고 커널 컴파일 문제가 생기면 보안을 적용하기 위한 리컴파일 작업을 위해 서버가 놓여있는 IDC로 찾아가야 한다. 하드도 파일시스템이 아니기 때문에 파일이 깨지거나 시스템이 깨져 데이터를 날릴 수도 있다. 리눅스도 자동업데이트 기능은 있지만 커널 업데이트는 자동으로 하지 않는다. 사용자가 직접 해야 한다.”

윈도는 자동업데이트 때 커널 업데이트까지 수행한다고 합니다. 리눅스도 커널 업데이트를 자동으로 한다면 재부팅이 잦을 수밖에 없을 듯 보입니다.

그렇다고 홍 대표가 리눅스가 나쁘다고 이야기하는 건 아닙니다. “문서가 많지 않거나 규모가 작을 경우 리눅스도 편하고 좋다”고 강조합니다.

대신에 “돈을 쓰고 싶지 않으면 리눅스를 사용하면 된다. 비용을 지불하고 그에 따른 서비스를 이용하고 싶으면 윈도서버를 써라”는 것이 홍 대표의 조언입니다.

또 하나, 마이크로소프트는 윈도 방화벽 등 보안설정이 까다롭다는 사용자 요구를 받아들여 윈도서버 2008 R2에서 방화벽 이용편의성을 높였습니다.

예전에는 모든 포트를 디폴트로 막아놓아 사용자들이 직접 사용하는 포트를 설정해야 했다네요.

이제는 웹서버를 설치하는 순간에 웹서비스 포트인 80, 443은 자동으로 방화벽에서 열린다고 합니다. 사용자가 설정하지 못해도 쉽게 서비스를 이용할 수 있도록 말입니다.

# 빠른 설치, 구성 완료…“클릭 세 번이면 끝나던데요”

홍 대표는 사실 보안성 보다는 윈도서버의 편리성에 더 매료된 듯합니다.

시스템을 바꾼 뒤 모든 설정이 ‘클릭 세 번’으로 구성이 완료됐다고 합니다.

“리눅스에서 네임서버를 등록하려면 바인드, 네임드, DNS 관련 컨피규 파일이 있어야 한다. 돌아가는지 일일이 다 해봐야 했다. 윈도 서버는 클릭 세 번으로 모든 설정이 끝나더라.”

DB 설정이나 DB 백업도, 호환성 작업도, 한글과 맞추는 작업도 모두 클릭 세 번에 끝냈다고 합니다.

“리눅스나 솔라리스든 다른 서버 운영체제를 이용할 땐 뭔가 서비스를 이용하려면 새까만 화면에서 많은 작업을 했어야 했는데, 이제 그 시간이 필요없게 됐다”는 것이 윈도서버의 큰 장점이랍니다.

# 최고의 이슈, DDoS 공격 방어 방안…“DDoS는 막는 게 아니라 피해야 합니다.”

홍 대표에게 DDoS 공격을 막을 수 있는 방안에 대한 의견을 물어봤습니다.

당연하게 “못막는다”고 잘라 말했습니다. “몰려오는 트래픽을 어떻게 막을 수 있냐”는 겁니다.

“라우터부터 죽는데, 무슨 보안 장비로 막을 수 있겠냐”면서, “우회시키는 수밖에 없다. 다른쪽으로 트래픽을 돌리던지, 포트를 바꾸거나 우회해야 한다”고 설명했습니다.

다만, 근원적인 방안으로 “PC단에서 에이전트로 감지할 수 있는 기술이 있으면 좋을 것”이라고만 하더군요.

 

2009/11/16 17:17 2009/11/16 17:17