지난 12월 초, 대규모 SQL 인젝션 공격이 진행되어 약 12만 5천대 이상의 웹서버가 감염되었다는 주장이 제기되었습니다.

  대규모 SQL 인젝션 공격(Mass SQL Injection Attack)이란 "봇넷이나 전문 스캐너 프로그램을 이용하여 무차별적으로 웹사이트를 공격하여 취약한 사이트를 찾아 내어 데이터베이스 등의 데이터를 조작하는 일련의 공격 행위"를 말합니다.
  국내에서는 지난 해 9월부터 10월까지 수십여만 개의 웹 사이트를 해킹당한 바가 있으며 올해에도 여러 번의 공격이 보고되었으나, 국내의 피해가 아주 심하지 않아(!) 언론에 알려지지 않았습니다.

최근에 발생한 공격은 318x.com 사이트에서 악성 프로그램을 다운로드하는 iFrame 형태로, 구글 검색 결과 약 12만 5천 개 이상 감염되었습니다. iFrame의 공격은 다른 웹페이지로 리디렉트(Redirect)하게 되며 사용자는 이러한 사실을 알아내기 어렵습니다. 

공격이 진행된 상황은 다음과 같습니다.

1. 사용자가 조작된 웹 페이지에 방문할 때에 318x.com/a.htm을 방문하도록 iframe으로 만들어진 스크립트가 자동으로 실행됩니다. a.htm 파일에는 두 가지 기능이 숨겨져 있습니다.
  • aa1100.2288.org/htmlasp/dasp/alt.html 에서 두 번째 iframe 코드 로드
  • jt.tongji.linezing.com/1358779/tongji.js 스크립트 로드(추적 목적)


2. aa1100.2288.org/htmlasp/dasp/alt.html에 포함된 iframe의 기능은 다음과 같습니다.

  • aa1100.2288.org/htmlasp/dasp/share.html로 유도하는 세번째 iFrame 코드 생성
  • js.tongji.inezing.com/1364067/tongji.js 스크립트 로드(위의 스크립트 코드와 다름)
  • img.tongji.linezing.com/1364067/tongji.gif 이미지가 www.linezing.com를 가리키도록 <noscript> 코드 실행

3. share.html은 공격을 염두로 둔 마스터 파일로 동작합니다. 다수의 스크립트 파일이 포함되어 있으며 사용자의 브라우저, 플래시의 버전 등의 기준에 따라 여러 개의 iFrame 코드들이 구성되어 있습니다.


문제는 아직까지 이 공격의 목표 또는 직접적인 피해가 나타나고 있지 않습니다. 보안 업계에 따르면 마지막 공격 시점에 사용된 악성 코드에 관련된 스크립트를 모니터링한 결과 일부 코드가 변경되거나 삭제되고, 새로운 스크립트가 추가되고 있다고 합니다. 대부분의 파일은 .jpg 확장자로 위장되어 있지만 스크립트의 경우에는 .js 확장자를 가집니다.

전체적인 공격 형태가 알려지지는 않았지만, 아래와 같이 같이 PDF 취약점을 이용하는 것으로 다수로 나타났습니다.

  • Integer overflow vulnerability in Adobe Flash Player, described in CVE-2007-0071
  • MDAC ADODB.Connection ActiveX vulnerability described in MS07-009
  • Microsoft Office Web Components vulnerabilities described in MS09-043
  • Microsoft video ActiveX vulnerability described in MS09-032
  • Internet Explorer Uninitialized Memory Corruption Vulnerability – MS09-002


다음과 같이 PDF 취약점을 이용하는 것으로 나타났습니다.
이러한 일련의 공격이 성공적으로 이후어진 후에는 Backdoor.win32.Buzus.croo라는 파일을 windowssp.7766.org 사이트에서 비밀리에 다운로드하여 설치합니다. 악성 코드가 설치디면 다음과 같이 루트킷의 형태로 동작하는 파일을 컴퓨터에 설치합니다. 

  • %UserProfile%\ammxv.drv
  • %ProgramFiles%\Common Files\Syesm.exe


또한, 악성 코드는 컴퓨터에서 시작할 때마다 자동으로 실행되도록 하기 위해 아래와 같이 레지스트리를 변경합니다.

    HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\DrvKiller
    HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\DrvKiller\Security
    HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\DrvKiller
    HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\DrvKiller\Security

Backdoor.Win32.Buzus.croo는 121.14.13.136.5:80에 연결을 시도하고 hxxp://dns.winsdown.com/cn/Countdown/count.asp 로 POST 요청을 전송합니다.

악성 코드는 IRC를 이용하여 원격을 관리하는 형태이며 공격의 목표는 신용카드와 같은 금융 정보를 빼내는 것입니다.

지난해 9월 이후로 발생하는 대규모 SQL 인젝션 공격은 이제 일반화된 형태로 나타나고 있습니다. 이를 차단하는 방법은 사용자의 입장에서는 보안 패치와 바이러스 백신과 같은 보안 제품을 사용하는 것이며, 웹 관리자의 입장에서는 SQL 인젝션 공격의 원인인 취약점을 해결하는 것입니다. 물론 웹 관리자가 해결한다면 사용자까지 공격이 올 수 없게 되므로 웹 관리자의 주의가 매우 필요합니다.

reTweet
Posted by 문스랩닷컴
blog comments powered by Disqus


    Web Analytics Blogs Directory