[인터넷 대란]MS SQL서버의 취약점

 사상 초유의 인터넷 마비 사태를 일으킨 웜바이러스는 마이크로소프트의 데이터베이스(DB) 소프트웨어인 ‘SQL서버 2000’을 공격 대상으로 삼고 있다.

 SQL(Structured Query Language·구조화 질의어)는 지난 70년대 미국 IBM이 개발한 관계데이터베이스용 질의 언어의 일종으로 SQL서버는 이를 기반으로한 DB서버를 뜻한다. 윈도 운용체계를 기반으로 하는 SQL서버는 오라클의 9i, IBM의 DB2 등과 함께 대표적인 DB서버다.

 ◇취약성 이용한 공격=이번 웜바이러스의 공격은 SQL서버가 사용하는 통신프로토콜의 취약점을 악용한 것이다. SQL DB서버는 사용가능한 포트인 총 1∼65535 포트 중에서 일반적으로 웹서비스용으로는 80포트, DB용으로 UDP 1434포트나 TCP 1433포트를 주로 사용한다. 공격의 주 대상이 된 DB용인 UDP 1434 포트는 외부에서 내부로 접속하기 위한 대문과 같은 역할을 하는 포트다. 이번 웜바이러스는 MS SQL서버2000에서 취약점을 찾기 위해 스캔을 할 정도로 지능화된 것으로 분석되며 약점이 발견되는 즉시 SQL서버에 감염, 서버가 다운될 때까지 이상 패킷을 불특정 IP에 발송해 네트워크에 트래픽을 과다 발생시켜 결국 웹사이트가 마비된다. 또 서버간에 전파됨에 따라 그 피해가 계속 확산된 것이다.

 ◇왜 대상이 됐는가=MS의 SQL서버가 공격 대상이 된 것은 로엔드 시장 점유율이 높기 때문이다. SQL서버는 보편화된 윈도 운용체계가 기반일 뿐만 아니라 DB 경쟁제품인 오라클의 9i와 IBM의 DB2가 하이엔드 시장을 겨냥해 고가형 제품인데 반해 MS의 SQL서버는 비교적 저가형 제품으로 중소형 시장에서 보편적으로 널리 사용되고 있다. 즉, 공격을 받을 수 있는 대상이 많다는 것이다.

 또다른 이유는 SQL 서버의 취약성이 널리 알려졌기 때문이다. 보안 업계에는 지난해부터 UDP 1434포트가 서비스거부(DDoS)나 웜바이러스 공격에 취약하다는 것이 알려지기 시작하면서 해커들이 이를 집중 공격하는 웜바이러스를 개발한 것으로 파악하고 있다. 결국 SQL서버 이용자들은 이용률도 높고 취약점도 잘 알려지면서 해커들의 공격 대상으로 가장 적합했다는 평가다.

 ◇사전 방지 어려웠나=이번 사태 발생에 앞서 MS는 지난해 7월 SQL 서버의 취약점을 발견하고 이에 대한 경고와 패치를 발표, 설치할 것을 권고했다. 그러나 이를 심각하게 받아들이지 않은 SQL 서버 도입 업체들이 패치를 설치하지 않아 크게 확산된 것이다. 이번 사태가 예견된 인재라는 사실을 뒷받침하는 대목이다.

 이에 반해 MS의 무성의한 서비스에도 원인이 있다는 비판의 목소리도 만만치 않다. 한 보안업체 관계자는 “MS가 6개월전에 패치를 발표, 고객에게 다운로드 해 설치하라고 했다지만 이는 고객에게 책임을 미루는 소극적인 대응”이라며 “자사 제품에 대한 오류가 있다면 고객을 일일이 찾아가 패치를 설치했어야 하는 것 아니냐”라고 반문했다. 일부 피해업체들은 MS측에 피해에 대한 보상을 요구하는 문제를 검토하기 시작했다.

 이에 대해 MS측은 25일부터 비상 근무에 착수, 피해 확산을 막고 복구 지원에 총력을 기울이고 있어 아직까지 사후 보상이나 책임 등에 대한 입장은 아직 정리되지 않았다고 밝혔다.

 <서동규기자 dkseo@etnews.co.kr>