태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

세계 50만대 이상의 웹 서비스 봇넷 배포지로.. 그리고..

 

관련기사: http://www.thetechherald.com/article.php/201033/6024/TTH-Labs-New-SQL-Injection-attack-hits-thousands-of-sites

 

일상적인 일중의 하나로 치부되고 있는 대규모 해킹은 지금도 맹위를 떨치고 있다.

Mass SQL Injection 도구에 의한 해킹 피해는 나날이 도를 더해가고 있는 상황에서 우리가 할 수 있는 일은 무력하기만 하다. 규모가 있는 사이트들은 자체 역량 및 외부 보안업체의 도움을 통해 보안성을 강화하고 문제를 해결 하지만 현재 피해를 입는 사이트들은 일부 보안이 된 사이트들을 포함하여 역량이 부족한 사이트들이 피해를 입고 있다.

 

결국 피해는 개인에게로 돌아오고 사회적 도구로서 자리매김을 확고히 한 IT 서비스의 근간을 흔들게 될 것임은 자명하다.

 

피해의 순서는 웹 서비스 정보 유출 -> 웹 서비스를 통한 악성코드 유포 -> 개인정보 유출 -> 다시 웹 서비스에 대한 Abusement로 이어진다. 유출된 사용자 정보는 금융 정보 및 ID/PW를 막론하고 다시 재활용되고 혼란스러워진다.

 

이미 지난 글에서 (http://p4ssion.com/241) “웹 서비스 보안의 불편한 진실이라는 항목으로 피해의 심각성과 향후의 문제들에 대해서 기술한 바 있다. 동일한 상황은 계속해서 이어 질 수 밖에 없다. 구글에 의해 표시된 악성코드 감염 수치는 55만개 이상의 웹 서비스에서 악성코드가 유포되고 있음을 나타내고 있다.

 

Malware count

Malware count

또한 국내의 사이트로 한정을 하면 1만대 이상의 웹 서비스를 통해 악성코드가 유포되는 현실을 볼 수 있다.

사용자 삽입 이미지

악성코드의 특성에 대한 내용은 이미 별도의 블로그(http://www.moonslab.com/1072)에 정리된 내용이 있어서 상세한 분석은 생략하며 특징만을 간략하게 언급 하도록 한다. 기술적인 분석에 대해서는 SANS의 분석 내용을 참고 하면 된다. (http://isc.sans.edu/diary.html?storyid=9397)

 

특징

 

현재 악성코드가 연결된 사이트는 .ru 라는 러시아 도메인을 가지고 있다. 그러나 등록된 주소는 중국으로 되어 있으며 실제 주소도 중국으로 판명이 되고 있다. 일차적인 특징으로 볼 수 있는 내용인데 중국의 공격자들이 이제는 도메인을 위장하여 손쉽게 판별되는 .cn 도메인을 넘어서 타 국가의 도메인을 활용하고 있음을 볼 수 있다.

 

두 번째로는 설치되는 악성코드의 다양함을 들 수 있다. 실제 분석은 되지 않았지만 구글에서 파악된 기본적인 내용을 살펴 보면 13개의 Trojan 9개 이상의 Exploit 코드들이 유포 되었음을 알 수 있다.  (http://www.google.com/safebrowsing/diagnostic?site=nemohuildiin.ru/&hl=en )

 

세번째로는 봇넷 채널을 직접 연결하여 Zeus Botnet과 연결된 가능성이 매우 높다는 점이다. 웹을 통해 악성코드를 유포하고 감염된 개인 PC들은 봇넷 Agent로 활용이 되는 것이다. 금융정보 및 키입력 정보, 화면 정보를 모두 유출 시키며 원격에서 직접 통제가 가능한 도구로 손쉽게 활용이 된다는 점이다.

 

Zeus Botnet은 국내에는 일반인들에게 잘 알려져 있지는 않지만 해외에서는 금융적인 피해가 직접 발생 하고 있어서 신경을 많이 쓰고 있는 Botnet이라 할 수 있다.

 

Black Market에서 가장 순도 있고 가치 있는 정보를 빼내고 직접 활용이 가능하다는 점에서 가치가 높은 BotNet 이라고도 불려 진다.

 

기존에 존재하던 웹 보안 장비들은 대부분 공격패턴을 인식하여 차단하는 유형으로 구성이 되어 있다. 그러나 공격기법은 계속 변화한다. 대소문자를 섞어서 쓴다든지 ASCII 코드값을 직접 입력 하는 유형등과 같은 변형된 공격기법은 헤아릴 수도 없이 많이 존재한다. 수없이 많은 패턴을 유지하는 보안장비들은 그만큼 속도가 느려질 수 밖에 없으며 보안적인 위협을 막기 위한 목적으로 도입한 장비들이 본 서비스의 접근 속도를 느리게 하는 요소로서 작용 할 수도 있다.

 

국내의 보안 현실 및 세계적인 보안의 근본적인 문제점은 대중과는 어느 정도 거리가 있는 사후 대응의 측면에만 집중하는 것이 현실이다. 근본적인 유포망을 없애지 않고서는 악성코드로 인한 개인 정보 유출의 피해와 또 유출된 개인정보로 인한 서비스망의 교란과 혼란은 개인과 서비스를 운영하는 기업 모두에게 큰 손실이 될 수 밖에 없고 문제는 점차 더 커질 수 밖에 없다.

 

 

 

빈익빈 부익부

 

빈익빈 부익부의 현실은 깊어만 간다. 현재의 IT서비스의 현황을 살펴보면 빈자들의 서비스에는 보안을 신경 쓸 여력이 없고 서비스 운영에만 중점을 두고 있어서 실질적인 이득 창출과는 약간 거리가 있게 느껴지는 보안 분야는 등한시 되고 있는 실정이다.

그러나 조금 만 더 멀리 보면 보안은 기업의 이익을 보호하고 신뢰를 형성하여 장기적인 안정성을 유지할 수 있게 한다는 점에서 큰 이득이 될 수 밖에 없다.

 

국내 및 해외의 보안 현실과 IT 환경을 맞추어 보면 가난한 기업들은 계속 해서 위험에 노출 되고 여력이 있는 곳들은 빠르게 문제점을 보완하고 비용을 적극 투자한다.  보안 관련된 기업측면에서는 모두가 수익을 창출 할 수 있는 사후 대응에 머물러 있으며 사전 대응과 위험요소에 대한 관리라는 측면에서는 활동이 미미할 뿐이다.

 

오래도록 가지고 있는 잘못된 편견중의 하나는 사고가 발생 한 뒤에야 중요성을 인지한다는 점이다. 그래서 국내외를 막론하고 수없이 많은 보안회사들은 사후대응에만 중점을 두고 있는지도 모른다. 이제 시대는 충분히 바뀌었고 많은 변화가 있었다. 변화를 따라가지 못한다면 소도 잃고 외양간의 기둥마저 무너질 수도 있다.

 

개인 PC를 공격하는 공격도구가 윈도우 시스템에 IE 사용자만으로 한정이 될까? 이미 작은 흐름에서는 타 운영체제 및 별개의 도구를 사용하는 시스템에도 충분한 시도들이 있었고 현재 공격이 눈에 띄게 드러나지 않는 것은 노력 대비 성과가 부족하기 때문일 것이다.

 

가난한 기업과 서비스 운영주체들은 힘이 없다. 역량이 부족하고 전문적인 지식의 도움을 얻고자 해도 돈이 없다. 또 문제를 수정 하고자 해도 어디가 문제인지 어떻게 고치면 되는지에 대한 협력은 절대적으로 부족하다. 비단 국내만의 문제가 아닌 전 세계적인 문제이다.

 

이젠 시대의 흐름에 맞게 변화를 크게 주어야 할 때이다.

 

역량이 있는 기업들 조차도 잦은 횟수로 변경이 되는 웹 서비스의 관리와 보안성에 대해 어려움을 겪고 있는데 하물며 가난한 기업과 서비스들은 무엇을 할 수 있겠는가?

 

국가나 산업차원에서 저렴하고도 신뢰 할 수 있으며 접근성이 높은 서비스는 반드시 제공 되어야만 하고 이제 머지 않아 출현 해야만 현재의 인터넷과 IT 서비스의 위기 상황을 개선 시켜 나갈 수 있을 것이다.

 

 

앞으로 발생 될 수 있는 위험들은 위험수준을 잘 관리하고 있는 기업들에게도 동일한 영향을 미칠 것이다. 대규모 웹 서비스 해킹을 통해 악성코드를 유포하는 행위와 서비스에 공통적인 요소를 공격하여 대규모 유포를 하는 유형으로 나눌 수 있을 것이다.  기발한 공격 기법은 이제 상상력의 한계에만 그치지 않는다.

 

http://www.eweek.com/c/a/Security/Infected-Widget-Compromises-Parked-Domains/

위의 기사는 Network Solution사에서 운영하는 Widget을 해킹하여 악성코드를 유포한 기사이며 현재는 중지 되었지만 단순히 Widget 배포처를 해킹함으로써 최소 50만개에서 최대 500만개 이상의 도메인을 통해 악성코드가 유포 되었음을 보여 준다.

 

빈익빈 부익부의 틀은 IT사회에서도 정확하게 적용이 된다.

그러나 이제 피해는 빈자와 부자를 가리지 않을 것이다.

시스템과 체계를 정비 하지 않는다면 앞으로도 오랜 기간 지속 될 수 밖에 없다.

 

특정 서비스의 구조적인 문제를 공격하는 웜이나 공격코드들은 2005년부터 있어 왔다. 앞으로 트위터나 페이스북의 서비스에서 문제가 생긴다면 그 피해 대상은 얼마나 될까? 더불어 공격코드가 스마트폰별 공격코드와 OS별 공격코드를 가지고 있을 때 피해 양상은 얼마나 될까?

 

상상하기 어려울 것이다. 그러나 아무도 눈을 뜨고 보려 하지 않는다.

 

빈자를 위한 도구가 결국엔 모든 것을 살리게 될 것이다. 거기에서부터 시작을 해야 하는데 아직 세계는 손쉽게 정보를 얻고 일정 수준이상의 기본지식이 필요함을 인식하지도 못하고 있다.

 

다음 블로그 글은 아마도 구조적 해킹 ( 일반적으로 서비스 어뷰징으로 불리워 지는 것)에 대한 것과 국외기업들의 서비스 연관, 악성코드와의 관련 등에 대해서 한번 정리해 볼 생각이다.

 

 

 -twitter: @p4ssion  -바다란 세상 가장 낮은 곳의 또 다른 이름

Posted by 바다란
 -zdnet 게재 컬럼입니다.

과연 인터넷 웹 서비스는 안전한가? 

일상적으로 접속해 정보를 상호 소통을 하는 중요한 매개체로 자리잡은 웹서비스는 그만큼의 신뢰도를 가지고 있다고 할 수 있을까?

여기 보려 하지 않고 외면 하고자 하는 불편한 진실이 있다. 이미 오래된 이야기지만 지금까지도 진행형 이고 앞으로도 심각성이 더 높아 질 수 밖에 없는 불편한 진실이다. 아직도 많은 이들의 관심 밖에서 이뤄지는 현실이 여기있다.

안전한 웹 서비스로 가는 길은 멀고도 험하다. 그러나 대부분이 쉽게 생각한다. 공격자들은 항상 그 빈틈을 노리고 끊임없이 공격한다. 일반 인터넷 사용자들은 자신의 아이디와 패스워드가 노출 되어 금전적인 손실이 발생 하거나 피해를 입었을 경우에만 민감하게 반응한다.

 

개인 PC에 설치된 악성코드의 문제를 개인 사용자의 부주의로 돌리는 것은 잘못된 것이다. 이제는 기본적인 보안 대책을 철저하게 실천한다해도 악성코드로부터 안전하지 않다.

어떤 접속 도구를 이용하던 웹 서핑을 하면서 자료를 확인 하고 정보를 공유하는 지금의 시대에 안전한 상태로 개인 PC를 유지 하려면 인터넷을 하지 말아야하는 수준이다. 사용자PC의 안전한 설정은 가능성을 조금 줄이는 옵션일 뿐이다.

왜 이런 상황까지 전개가 된 것일까?

일단 기본 설명에 대한 이해를 참고 하도록 한다.

대규모(Mass) SQL 인젝션(Injection)에 관련된 설명은 다음을 참고 한다.
Mass sql injection 대응과 현실 -
http://p4ssion.com/200
SQL Injection 공격 변화 -
http://p4ssion.com/207 

본시 SQL 인젝션 공격은 2005년 무렵부터 자동화된 도구를 이용하여 처음 시작이 되었다. 이전에는 공격자의 수작업에 의한 소위 타켓팅한 공격만이 있었다. 자동화된 도구에 의한 공격은 한국이 최초의 테스트 베드가 됐고 그 시작은 2005년부터다.

자동화된 도구를 이용한 SQL 인젝션 공격은 2007년을 지나면서 다른 양상으로 전개 되기 시작한다. 단일 사이트에 대한 자동화된 공격을 벗어나 대규모 도메인에 대한 자동화된 공격으로 전이가 된 것이다. 차이점은 자동화된 공격 도구의 대상을 단일 도메인으로 지정하는 것이 아니라 대규모 도메인 혹은 구글과 같은 검색엔진을 통한 무차별적인 공격으로 방향을 전환 했다는 점이다.

단일 서비스에 대한 공격으로 한정이 될 때는 공격자도 그만큼 많은 노력을 기울여서 여러 사이트를 반복해서 공격 할 수 밖에 없었지만 수집된 도메인 리스트에 기반한 공격과 검색엔진을 동원한 공격은 국가와 지역의 차이를 넘어서 무차별적인 서비스 공격으로 나타나고 있다.

서비스를 공격한 후에는 웹 서비스에 악성코드를 유포하는 URL을 삽입한다. 물론 데이터베이스안에 있는 내용은 관심 밖이다. 이미 가져갈 만큼 다 가져 갔는데 또 가져갈 필요성이 있을까? 이젠 데이터베이스에 저장된 내용이 아닌 방문자의 정보가 필요할 뿐이다.

웹 사이트 방문자의 PC에는 웹 사이트에 방문 할 때 마다 악성코드가 다운로드가 되고 조금 신경을 쓰면 방문자의 PC 운영체제에 따른 공격이 발생되게 된다.

이제 개인 사용자가 금융거래 사이트 또는 인터넷 서비스에 접근 할 때 마다 사용자가 입력하는 키입력 정보는 공격자에게로 전송된다. 때론 봇넷 에이전트를 동원해 분산서비스거부(DDoS) 공격을 하기도 하고 협박을 하기도 한다. 공격자들은 유출된 개인정보를 이용해 블로그나 카페, SNS 매체에 광고를 하는 등 다양한 방식으로 금전적인 이득도 추구하고 있다.

국내 금융권의 경우 다단계 보호수단들이 있으나 해외 금융기관들은 보호수단이 없거나 미비한 경우가 많아  피해 금액이나 사례는 국내보다 해외에서 더 큰 문제로 대두되고 있다.

현재의 대규모 SQL 인젝션 공격 동향을 살펴보면 두 가지 유형을 살펴 볼 수 있다. 좀 더 세밀하게 다듬어진 공격과 무차별적인 공격으로 구분 할 수 있는데 그 특징은 다음과 같다.

1. 웹 서비스의 소스를 일부 수정한다. *.js 와 같은 스크립트 유형의 코드를 웹 서비스 소스에 심어 두고 웹 사이트 방문자가 방문 할 때 마다 해당코드가 자동으로 실행 되도록 한다. 스크립트 코드에는 원격에서 사용자의 PC의 권한을 획득하기 위해 악성코드들이 다운로드 되고 실행이 된다.

2. 무차별 공격은 DB 테이블에 악성코드를 다운로드 하는 스크립트를 무작위로 삽입 하는 방식으로 이루어진다. 이 경우 전체적인 공격현황이 검색을 통해 손쉽게 드러난다. 그러나 공격자의 개입 없이도 자동적인 실행과 반복이 가능함으로 대규모 피해가 수반되고 있다. 2와 같은 경우는 많은 웹 서비스들이 데이터베이스에 들어 있는 콘텐츠를 일반 텍스트가 아닌 HTML로 화면상에 전환해 뿌려줌에 따라 자동적으로 실행된다.  텍스트로 읽어 들이는 경우에는 방문자 PC에 있는 브라우저 상에 스크립트 코드 링크들이 중간중간 삽입된 형태로 깨어지는 것을 확인 할 수 있다.

1번과 같은 세밀한 방식은 안티 바이러스 솔루션을 통해서 공격감지가 가능하다. 단 제로데이 공격이 아닐 경우에만 탐지가 가능한 경우다. 하루가 다르게 수많은 애플리케이션에서 취약성이 발견되는 현재에는 탐지 되지 않는 경우가 점차 증가 할 수 밖에 없다. 2번의 경우는 관리자가 손쉽게 데이터베이스 변조 여부를 확인 할 수 있으나 데이터 복구에 시간이 걸리는 문제들이 발견 되고 있다.

현상적으로 발견 할 수 있는 SQL인젝션 공격의 폐해는 무차별적인 공격의 경우 간략하게 검색엔진을 통해서 확인 할 수 있다. 최근까지 발견된 악성코드 유포 링크를 기준으로 검색한 결과는 상상 이상의 웹 서비스들이 해킹을 당하고 악성코드 유포에 이용이 되고 있음을 확인 할 수 있다.

22dnf.com/ff/y.js (국내용) 31,200개
www.dbrgf.ru/script.js (국내외용) 2,810개
mysy8.com/1/1.js (국내용)
s.ardoshanghai.com/s.js (국내용) 1,840,000개
sion.or.kr/iis.swf (국내용) 253,000개
bq346.cn (국내용) 4,930개
mekiller.com/1/1.js (국내외용) 27,500개
*.postfolkovs.ru/js.js (국외용) 125,000개
4589.in/yahoo.js (국외용) 254,000개
s.lbs66.cn/kr.js (국내용) 262,000개
s1.cawjb.com/s.js (국외용) 2,030,000개
s1.cawjb.com/kr.js (국내용) 950,000개
www.adst.ru/ads.js (국외용) 2,280,000개
www.24aspx.com/script.js (국외용) 12,400개
www.dnf666.net/u.js 전체: 530,000 / 국내: 463,000
www.adw95.com/b.js 전체: 61,200 / 국내: 3,940
www.nihao112.com/m.js 전체: 22,000 / 국내: 6
www.update34.com/b.js 전체: 16,500 / 국내: 6
기준 검색 일시: 2010. 7.1

*감염수치는 근사치로 활용이 되어야 하고 각 검색 시점에 따라 다를 수 있다. 또한 수치 확인에는 검색엔진의 검색결과를 이용 하였으므로 중복된 결과도 일부 존재 할 수 있다. 그러나 대강의 상황을 유추 할 수 있다는 점에 있어서 충분한 인용가치는 있다고 본다.

현재 검색 할 경우에는 차이가 많음을 확인 할 수 있다. 그러나 수치 차이는 검색엔진에서의 필터링과 대응을 통해 조회 시점의 수치보다 낮아 질 수 밖에 없다. 악성코드 유포 링크들이 여전히 일부 서비스들에 남아 있다는 것은 문제가 발생 된 이후에도 전혀 수정이 안되었음을 의미한다. 많은 서비스들이 공격이 가능했던 근본적인 소스코드 수정은 하지 않고 추가된 악성코드 유포 링크의 제거에만 신경을 쓰고 있는 것이 현실이다. 새로운 SQL 인젝션 패턴이 발생 될 경우에는 또 다시 몇 백 만대의 서비스들에서 악성코드를 유포하는 현황을 앞으로도 손쉽게 살필 수 있을 것이다.

악성코드를 유포하는 링크들의 업데이트 현황 중 일부는 여기에서 (http://securedmz.com/reference.php) 확인이 가능하다. 이 링크도 일부분임을 기억하자. 공격자 몇 명에 의해 생성되는 링크일 뿐이다. 실제 규모는 휠씬 더 심각한 상황 일 수 밖에 없다. 드러난 것은 10% 미만이라고 본다. 또한 검색엔진에 나타나지 않는 세밀한 공격은 통계치의 밖에 있다.


화면 상에 보듯이 검색결과의 차이가 상당함을 볼 수가 있다. 가장 최근에 보고가 된 Mass SQL Injection 공격으로 삽입된 악성코드 링크는 b.js를 포함하는 링크이다. 검색 결과는 다음과 같다.

2010년 8월 현재 152만개의 서비스에서 악성코드 유포 흔적들이 있다고 나타나고 있다. 그러나 이 중에는 정확한 분석 또는 단순 질의도 포함이 되어 있을 수 있다. 그러나 1/3만 유효한 링크라고 잡아도 50만대의 웹서비스에서 악성코드를 유포하는 것이다.

하루 방문자를 최소화 한다고 하여도 50만대의 웹 서비스에 최소 5명씩만 방문 한다고 하여도 250만대의 PC가 (실제는 휠씬 더 많을 수 밖에 없다.) 영향을 받는 것이다. 공격 성공률은 제로데이 (패치가 나오지 않은 공격) 공격일 경우 매우 높을 것임은 명확하다.

단순한 일회성의 공격이 아니다. 공격자들은 새로운 공격코드를 몇 십 만대에 또 다시 넣을 필요 없이 단순하게 악성코드를 다운로드 받는 주소에 있는 악성코드만을 새로운 것으로 바꿈으로 영향력을 가지게 된다.

전 세계의 보안 관련된 회사들을 단지 2~3명 정도의 공격자가 손쉽게 농락 할 수 있는 상황이 된 것이다.

공격방법 및 활용 시나리오를 간략하게 요약하자.

1. 악성코드를 유포할 숙주 도메인을 확보한다. 가급적 여러 개의 도메인을 확보. 위의 예에서는 b.js 파일이 올려진 사이트가 되겠다.

2. 검색엔진 및 리스트를 통해 Mass Sql Injection 공격을 자동으로 진행 하도록 하고 공격 성공 시에는 악성코드 유포 주소를 삽입한다. (소스코드에 링크 추가 또는 데이터베이스 테이블 내용 변경)

3. 이제 웹서비스를 통해 유포되는 악성코드들이 웹서비스 방문자의 PC에 설치 되기만 기다리면 된다.

4. 사용자들은 웹브라우저를 통해 웹사이트에 접근 하는 것 만으로도 악성코드가 다운로드 되고 실행 될 수 있는 환경이 된다. 이후 키입력은 모두 유출되고 PC는 좀비 PC가 된다.

만약 백신 개발업체에서 대응 백신을 개발한다면 공격자들은 초기 b.js 안에 실행되거나 다운로드 되는 악성코드를 변경 한다.

새로운 취약성이 있다면 즉시 활용을 하게 된다. 평균 신규 취약성이 나온 이후 며칠이 걸리던 것에서 이젠 12시간 이내에 새로운 악성코드로 전환 되는 것을 확인 할 수 있다. 개인 사용자가 사용하는 백신이 업데이트 된다 하여도 웹 서비스에 들어 있는 악성코드 링크가 사라지지 않는다면 최소 12시간 이내에 또 다른 공격을 맞이 하게 된다는 이야기 이다.

싸움은 더 이상 신사의 싸움이 아니며 공개적인 영역까지 침범을 당하고 대응하기 어려운 상태에 빠져 있다. 공격은 광범위하고 폭넓게 퍼져 있다. 현재는 asp, aspx + Ms sql 에 대한 대규모 공격도구가 활성화된 상태이지만 다른 개발언어와 데이터베이스를 향한 도구도 이미 일반적이다. 대규모로 확산 되는 것은 시간 문제일 따름이다.

현실은 앞에서 언급 했듯이 엄중한 현실이나 대책은 현실적으로 역부족일 수 밖에 없다. 공격을 당하지 않기 위해 웹 서비스 단위에서 진행 되거나 할 수 있는 대책은 크게 4가지 정도로 볼 수 있다.

웹 방화벽과 소스코드 검사, 모의해킹, 웹 스캐너 도입을 통한 문제점 해결 과 같은 유형이며 개인 사용자를 위한 대책은 오로지 바이러스 백신 외에는 없는 현실이다. 각 대책 별 문제와 이슈는 간략하게 다음과 같다.

각 대책 별 문제
 
전제: 웹 서비스는 잦은 사이트 개편과 갱신이 수시로 발생된다 이 모든 과정에서 보안적인 위험을 걸러낼 수 있어야 하나 현재 보안전문인력을 운영하고 상시적인 검사 프로세스를 갖춘 곳은 국내의 1% 미만의 업체만이 가능한 상태이다. 그 업체의 경우에도 전체 사이트 문제를 수시로 체크 할 수는 없는 상태이며 6개월 혹은 1년 단위로 전체 서비스를 검사하는 정기검진의 형태로만 진행 한다. 웹서비스의 잦은 개편과 갱신을 절대로 따라 갈 수 없는 상태가 된다.

1. 웹 방화벽: 우회 공격에 취약하며 근본 문제 해결이 아님. 비용 및 관리의 문제 발생

2. 소스코드 검사: 시일이 오래 걸리며 전문적인 인력이나 전문업체의 도움을 받아야 됨. 비용과 시간의 문제가 발생됨.

3. 모의해킹: 모의해킹을 통해서는 모든 문제가 발견 되는 것이 아니라 해당 사이트의 권한 획득만을 한 이후 종료 되는 과정이 대부분임. 이후 수정에 대한 피드백 제공 불확실. 비용의 문제 존재

4. 웹스캐너 도입: 상대적으로 고가의 솔루션이며 전문적인 결과가 도출 됨으로 인해 스캐너 결과를 이해 할 수 있는 인력의 도입이 필요하며 스캐너 비용 자체도 외산과 국산 모두 고가의 가격으로 도입에는 부담이 있음. 더불어 즉시적인 검사가 어려움 (개발속도 보다 진단 속도가 늦는 경우가 다수 발생)

이제 대책은 전 세계의 웹 서비스 개발 프로그래머를 일정 수준 이상으로 끌어 올리고 상시적인 점검이 가능한 체계를 어디에서 먼저 구축하느냐에 따라 달려 있다. 상당히 먼 길이 될 것이다.

앞으로의 현실은 오래 전 예상 했던 대로 상상 그 이상의 현실을 보게 될 것이다. -바다란
Posted by 바다란

[zdnet 컬럼 게재글입니다.]

DDos
문제의 핵심과 변화 (에스토니아, 7.7) - 바다란

7.7 DDos 관련된 의견들이 1년이 지난 지금 시점에 다시금 많은 분야에서 회자 되고 있다. 문제에 대한 분석과 적절한 대응 체계에 대한 논의가 계속 되고 있는 시점에 DDos 논란의 핵심은 무엇인가 하는 명제에 대해서 명확한 설명은 아직 잘 설명 되지 않고 있는 듯 하다.

 

DDos에 대한 핵심적인 이해 분야에 대한 접근 방법도 상이한 점이 많이 있다. 공격 주체는 분명히 개인의 PC이며 공격을 받는 대상은 기업 및 기관의 서비스를 대상으로 하고 있다. 그러나 현재 논의 되고 있는 대책의 대부분은 공격 받는 대상의 보호대책을 강화하는 측면에만 머물러 있다. DDos 대응 장비의 도입과 체계의 도입은 단기적으로 타당한 방향이다. 그러나 근본적인 원인제거를 하지 않는 다면 미봉책에 머물 뿐이다. 공격자들은 보다 더 많은 공격자원을 더 은밀하게 모집하고 더 대량의 자원을 동원하여 공격을 할 것이다. 실제로 은밀하게 모집 하려고도 하지 않는다. 일반적인 웹 서비스를 해킹하여 악성코드를 사용자 PC에 설치하는 행위는 너무나도 일반적으로 발생하는 현상일 뿐이다.

 

DDos 공격에 대해 보다 더 많은 대응자원을 투입하고 대응 실무인력을 투입하는 것은 무제한적인 공격도구 확보가 가능한 공격자들에 비한다면 수술이 필요한 환자에게 붕대만을 처방하는 행위가 될 뿐이다.

 

비근한 예로 2007년에 발생된 에스토니아의 DDos 사례와 7.7 DDos의 차이점에 대한 근본적인 고찰도 부족한 현 상황에서 대책이라는 부분은 지속되는 공격에 대한 소모성 대책과 다를 바가 없다.

본 컬럼에서는 근본적인 DDos 공격의 변화를 간략하게 살펴 보고 앞으로의 대응에 중점이 되어야 할 부분에 대해서 짚어 볼 수 있도록 한다.

 

먼저 에스토니아를 향한 공격의 전체적인 동향은 다음과 같다.

 

사용자 삽입 이미지

일반적인 cyber 공격 유형이라 할 수 있는 통신 대역폭을 가득 채우는 공격과 함께 일반적인 혼란을 초래 할 수 있는 spam메일, Phishing, Web 변조 등이 동시 다발적으로 발생할 것을 확인 할 수 있다.

 

왜 에스토니아는 외부와 완벽하게 고립된 섬처럼 2~3주간에 걸쳐서 지속적인 피해를 입을 수 밖에 없었을까? 그만큼 취약한 국가였을까? 아니면 취약한 대응능력을 지니고 있었을까?

일반적으로 언론 기사를 통해서는 정확한 면모를 확인하는 것이 어렵다. 단순히 작은 국가가 대규모 공격에 의해 대응능력이 없이 무너졌다고 보는 측면이 강하다. 그러나 IT세상에서는 크고 작음의 판단 기준이 영토에 준하지는 않는다. 

 

에스토니아 국가 자체가 IT화를 통해 국가 발전을 도모한 결과 EU NATO 2004년 동시 가입될 정도로 동유럽에서는 발전화된 시도를 많이 한 국가로 볼 수 있다.  또한 전세계 최초로 인터넷을 통한 선거를 실시함으로써 실험적인 시도를 많이 한 동유럽의 정보통신 강국의 하나였다.

왜 동유럽의 정보통신 강국은 고립된 섬이 될 정도로 심각한 피해를 입었을까?

 

사용자 삽입 이미지

<http://www.riso.ee/en/information-policy/projects/x-road>

 

위의 이미지는 에스토니아의 기반 정보 시스템에 대한 간략화된 이미지 이다. X-road라는 정보시스템을 인터넷 기반으로 유지하고 있음을 볼 수 있다. 또한 국가 예산 및 운영에 필요한 가장 자원이라 할 수 있는 인구 통계와 차량등록, 건강보험 관련된 내용이 통합되어 300여 개 이상의 국가기관과 연동되어 서비스 되고 있으며 금융기관과도 연동된 형태로 서비스 되고 있음을 알 수 있다. 각 연결지점에는 해킹이나 데이터 유출에 대비하여 암호화된 지점들을 모두 운영 하고 있음에도 불구하고 연결 자체가 되지 않도록 하는 DDos 공격에는 무차별적으로 무너질 수 밖에 없는 구조를 가지고 있었다.

 

에스토니아의 사례는 국가나 한 산업 자체가 밀접한 연관을 가지고 있고 공개된 통로를 이용할 경우에 치명적인 피해를 입을 수 있는 Cyber war의 전형적인 모습을 관찰 할 수 있다. 이 당시에 활용된 DDos 공격은 일반적인 DDos 공격 세트라고 할 수 있는 각 프로토콜별 자원 고갈형의 공격이 지속 되었으며 공격에 대한 대응은 외부 유입되는 트래픽을 일시적으로 모두 차단 함으로써 일차적인 회복을 할 수 있었다. 국가 내부의 망은 정상화 시킬 수 있었으나 외부와 연결 되는 모든 통로를 차단한 채로 지낼 수 밖에 없어서 고립된 섬으로 불려진 것이다.

 

 

2007년에 발생된 에스토니아의 공격이 일반적인 DDos 공격 이외에도 다양한 공격이 병행되어 진행된 것을 볼 때 이후 3년의 시간이 지난 지금에 이르러서는 더 치명적인 내용으로 전개 될 수 밖에 없음은 명확하다.

 

2009 7.7일에 발생된 DDos 공격의 경우 일반적인 DDos 공격과는 차이점이 존재하고 있으며 그 변화상을 일면 짐작 할 수 있다.  KISA의 자료를 통해 7.7 DDos의 현황을 살펴 보면 다음과 같은 이미지로 간략하게 요약이 된다.

 

사용자 삽입 이미지

< ref: KISA >

 

1, 2, 3차로 세분화된 공격의 특징은 지정된 일시에 지정된 목표를 향해 예정된 공격을 수행 했다는 특징이 있다. 단순한 트래픽 소모를 위한 DDos 공격과는 별개로 서비스 자원 소모를 위한 DDos 공격도 병행되어 활용이 되었으며 해외로부터 유입되는 공격의 경우 손쉽게 차단되는 점을 이용하여 국내에 존재하는 대량의 좀비PC를 활용 했다는 점이 눈에 띄게 달라진 점이라고 판단된다. 

 

일반적인 DDos 발생시에 대응은 좀비PC를 조종하는 C&C ( Command & Control) 서버를 찾아 연결을 차단함으로써 좀비 PC에 설치된 공격도구를 무력화 시키는 방식으로 진행이 이루어 진다. 그러나 7.7 에서는 왜 예정된 3일의 공격을 무력화 시키지 못했을까?

 

그 이유는 이미 3일간의 공격이 세분화 되어 예정이 되어 있었기 때문이며 좀비 PC를 직접 통제하는 형태가 아닌 좀비 PC에서 명령이 존재하는 서버로 연결을 하고 추가적인 명령을 확인 하는 형태로 구성이 되어 있기 때문이다.

 

중요한 차이점은 기존의 DDos 공격 방식에 대한 대응으로는 어려울 수 밖에 없는 이미 예정된 공격이었다는 점이다.

 

사용자 삽입 이미지

간단하게 정리한 DDos 형태의 변화이다.

DDos 공격 유형은 공격 형태에 따라 기술적인 분류가 가능하나 현재 나타난 여러 유형의 DDos 현상을 형태적으로 분석해 보면 연결타입과 공격유입소스라는 부분을 통해 구분을 할 수가 있다. 각 연결 형태와 공격유입 소스의 출발점에 따라 대응은 모두 달라질 수 밖에 없다.

 

에스토니아

연결타입 : Active – 해외의 Botnet을 이용한 공격

공격유입소스: Outside – 해외에 존재하는 좀비 PC 활용

 

일반적 DDos

연결타입: Active – Botnet을 이용한 공격

공격유입소스: Inside – 국가 내의 PC를 공격하여 획득한 좀비 PC Agent를 활용한 봇넷 공격 (알려진 유형의 공격이 일반적임)

7.7 DDos

연결타입: Semi Active – Botnet C&C 서버가 직접 통제하는 것이 아닌 좀비PC들이 여러 서버들에 접근하여 공격정보를 획득하는 유형

공격유입소스: Inside – 국가내의 PC를 공격하여 좀비 PC 획득 (알려지지 않은 유형의 공격 기법 사용으로 사전탐지 안되었음)

각 형태별 대응방식의 변화를 간단하게 도식화 하면 다음과 같다.

사용자 삽입 이미지

 

DDos 공격에 대한 기본적인 기술대응은 논외로 하더라도 형태의 변화에 따른 심각성은 충분하게 나타난다고 볼 수 있다. 백신에서 사전탐지가 되지 않는 Malware성의 도구 유포와 반능동방식의 조정을 통한 공격 효과는 7.7 DDos에서 보듯이 명확한 효과를 나타내고 있다. 만약 1년이 지난 지금 시점에도 동일한 공격이 더 대규모로 발생 된다면 기술적인 대응을 일정수준 이상 끌어 올린 기업들 조차도 어려움을 겪을 수 밖에 없을 것이다.

 

근본적으로 DDos 대응의 과제는 이제 일반적인 PC 환경을 얼마나 클린하게 만들고 사전에 위험을 인지 할 수 있고 또 즉각적인 협력과 대응을 통해 피해를 최소화 할 수 있느냐 하는 점에 집중이 되어야 한다.

 

24시간이 지나면 몇 만대 이상의 웹서비스들이 자동화된 도구에 의해 해킹을 당하고 악성코드를 유포하는 상황에서 좀비 PC의 확보는 더 이상 어려운 일도 아니고 너무나도 쉬운 과제임에는 명확하다. 근본적으로 악성코드가 손쉽게 퍼지는 환경을 개선하는 것이 가장 시급한 과제이며 대응장비의 증설과 대응인력의 확대는 눈 앞의 위험만을 피하고자 하는 대책일 뿐이다. 근본 환경의 개선은 현상적인 문제가 드러난 7.7 이후 달라진 점은 없다고 본다.

 

앞으로도 근본 환경의 개선 없이는 사태는 점차 심각한 국면으로 진입 할 수 밖에 없을 것이다.

다음 컬럼에는 Mass sql injection에 대한 컬럼을 게재할 예정이다.

 

* 좀 더 상세한 자료 및 관련 발표 자료는 블로그에서 찾을 수 있습니다.

http://p4ssion.tistory.com/entry/에스토니아-77-DDos-그리고-미래

http://p4ssion.tistory.com/attachment/cfile10.uf@165F670E4C16F178AE44ED.pdf  <- 발표자료

twitter:  @p4ssion

Posted by 바다란

 * 2010년 4월중에 이전 블로그의 글을 완전이전 하면서 링크 부분들을 손 본 내용입니다. 지금의 현실도 여전히 계속 됩니다. 해결 되지 않은 문제들입니다만 이전의 링크와 게시된 시간을 알고 싶으신 분은 blog.naver.com/p4ssion 으로 방문 하시면 됩니다. 앞으로의 모든 갱신은 본 사이트에서만 이루어 집니다. 감사합니다.
아래의 글에서 2007년 이후 부터 현재까지의 내용은 지금 이 시간에도 동일하게 적용 됩니다. 범위만 국내뿐 아닌 전 세계적으로 확장 되었을 뿐입니다. 이 점을 참고 하시면 될 것 같습니다.

2008.11.7  p4ssion.

 

 

한국은 바로미터다.

중국발 해킹의 전초 단계로서 향후의 전 세계로 확대되는 공격 양상을 짚어 볼 수 있는 중요한 척도점이 되어 있다. 그 시작은 2002년 부터라 할 수 있다.

필자가 처음 중국발 해킹에 대해 분석을 한 것이 ( http://p4ssion.com/208 ) 2002년 8월 문서이니 그 이후로 여러 단계의 변천사를 볼 수 있다.

 

주관적인 경험하에 중국발 해킹을 분석해 보면 다음과 같은 단계로 요약이 가능하다.

 

1기: 2002~2005년초

 

특징: System에 대한 직접 공격 , 일부 운영체제에 대한 취약성 공격 및 주변 네트워크 공격을 위한 대량의 패키지를 동반하는 유형으로 진행 , 대부분 시스템의 권한 획득을 목적으로 이루어 짐 . 일부 DB의 정보를 빼내어 가기 위한 시도가 존재 하였음.  따라서 한국내의 정보유출 및 위기의 시작은 이 시기 부터라고 보는 것이 합당함.  

 

 

2기: 2005년 4월 ~ 2007년 중반

 

특징: SQL Injection 자동화 툴의 출현 시기와 동일하며 국내의 대부분의 웹사이트 (추정키로는 전체의 60% 이상)가 공격대상에 포함 되었음. 이 부분은 보안산업에서 조차도 예상치 못하여 대응에 시일이 다소 소요된 부분임. URL의 취약한 인자를 공격함으로써 DB의 권한을 획득하고 정보를 빼내어 가는 것이 일반화 된 공격으로 이루어 지며 지역적 혹은 소규모로 발생하던 해킹이 대규모로 변질 되는 기회가 되었음.

[참고  풀어쓴 Sql injection 공격  http://p4ssion.com/171 ,

                                                 http://p4ssion.com/209

          Threat of china v2  . http://p4ssion.com/210 - 첨부파일 참고 ]

 

대량의 개인정보 유출 시기로 확정하며 이 시기에 유출된 개인정보 범위는 상상을 초월할 정도로 예상됨. 

또한 웹을 통한 악성코드 유포의 시발점으로 볼 수 있으며 바이러스와 웜을 통한 악성코드 전파를 벗어나 웹을 통한 악성코드의 전파라는 새로운 공격 전략이 탄생된 시점으로 불 수 있음.

서비스에 대한 보호의 관점에서 일반 사용자를 위한 보호관점으로 포커싱을 급격하게 이동해야 하는 시점이나 일부 국내기업들을 제외하고는 변화에 대한 대응이 늦었으며 공격자들은 유유히 유린을 한 상태로 판단이 됨.

 

이후 웹보안 관련 장비들과 진단 스캐너들의 출현으로 문제는 표면적으로 드러나지는 않으나 우회적인 통로를 통한 SQL 공격으로 여전히 중요정보에 대한 유출 및 악성코드의 웹을 통한 유포는 계속 되었슴.

통계치로 잡기가 어려울 정도로 피해가 많았던 시기라고 볼 수 있음.  이 시기에 유출된 개인정보들로 인해 사회적인 혼란상은 현재에도 지속되고 있음. Voice Phishing의 정확도가 높아져서 피해도가 높아진 이유도 이 시기에 유출된 상세한 개인정보로 인한 것으로 예상.

 

 

3기 2007년 말 ~ 현재 (세부기법으로 별도 분류)

    

2007년말 ~ 2008년 8월

 

 Massl SQL Injection의 본격화 및 웹 보안장비의 본격적인 대응 시기. Get, Post 와 같은 HTTP Action에서 사용되는 특정 인자에 위험요소를 차단하는 방식으로 일차적인 대응들이 진행됨. 웹 보안장비의 대중적인 도입이 이루어짐. 그러나 기본적인 한계로 인해 문제가 발생됨은 이후에도 여러 차례 지적이 됨. 패턴매칭의 한계 및 모든 웹 프로그래밍이 획일화 될 수는 없으므로 각 사이트마다 커스터마이징 이슈가 대두됨. 즉 수익성이 그리 높지 않았을 것으로 예상이 됨. 이후 공격 패턴의 변화에 따라 상당히 많은 노력이 지속적으로 필요한 상황이라 할 수 있음.

 

국내의 상당수의 사이트에서 악성코드들은 지속적으로 유포되고 국내의 인터넷 환경은 오염도가 높아졌을 것으로 예상되나 신뢰도 있는 통계 추출의 도구가 존재하지 않음으로 인해 통계 작성이 불가능함. 평균적으로 일일 4~5만여개의 웹서비스에서 악성 코드가 유포되고 있는 것으로 추정이 됨. 근거는 Mass sql injection 분석 시에 작성한 자료를 참고 하며 5만에서 6만여대의 웹서비스에서 수시 악성코드 유포 되는 것을 확인 함.

 

이 시기에 다수의 주요 IT 서비스 기업들에서는 웹 보안 장비 및 문제점을 제거 할 수 있는 프로세스 (보안성 검수)를 도입 함으로써 피해의 최소화 및 방어가 가능한 상태로 돌입한 것으로 관측됨.

 

     2008년 8월~ 현재 

 

우회 패턴의 등장으로 위험요소가 증폭됨 Get / Post외에도 Cookie에 URL 인자를 넣어서 공격하는 우회 패턴 등장으로 일대 혼란 발생. 이 혼란은 웹보안장비에만 의존하여 근본적인 소스코드의 수정에는 등안시한 결과로서 문제는 계속 될 것임. 더불어 URL 인자에 다양한 우회패턴 (% 인자와 같은 )를 입력하여 패턴매칭에 의한 차단이라는 웹보안장비의 기본 룰을 가볍게 우회함으로써 혼란은 계속 되고 있음. 이 상황은 예견된 바 있음.

11.5일에 제보를 받은 SQL Injection 공격도구의 판매를 위한 자료화면에도 다양한 DB ( Mssql , mysql , access , oracle )와 공격기법이 명기되어 상용으로 판매가 되고 있는 상황임.

 

 < Mass sql injection attack tool - 다양한 DB 및 Cookie 및 Head verb에 대한 공격 기법이 별개로 존재하고 있다. >

 

각 시기별로 한국에 집중된 공격에 대해서는 위와 같이 정리가 가능하며 세계적인 확산의 시기는 시기적으로 늦게 나타나고 있다. 국내를 벗어나 이제 IT로 연결된 세계적인 관점에서의 공격동향은 다음과 같다.

 

세계적으로 SQL injection Attack의 최초 인지는 2008년 초쯤으로 예상되며 대규모로 인지가 된 시기는 2008년 4월의 Mass sql injection 관련 이슈이다. 

[ 상상하기 어려운 위협.       http://p4ssion.com/110 ,

                                          http://p4ssion.com/112    

  Mass sql injection에 대한 분석 참고  http://p4ssion.com/200 ]

 

 

이후에는 4월 이후에 발견된 Mass sql injection issue가  세계적으로  지속되고 있는 상황이라 할 수 있다. 전 세계 인터넷 환경의 오염도는 따로 측정하기는 어렵지만 Google에서 협조를 하고 있는 사이트 (http://www.stopbadware.org/ 11.7일 현재)에 따르면 악성코드를 유포하고 있는 사이트는 현재 166000 여개 가량의 사이트에서 악성코드가 유포 되고 있는 것으로 나와 있다.  물론 실제는 이것보다 더욱 많다. 통계치로 잡히는 것은 백신이나 AV 사이트의 협조아래 탐지 되는 유형에 대한 것들만 나열 된 것으로서 실제로는 변형과 탐지가 안되는 항목이 더 많다고 보았을때 얼마나 많은 비율이 존재 할지는 상상하기 어렵다.

 

인터넷은 오염되어가고 있다. 금전거래와 일상생활 영위의 도구로서 사용이 되고 있는 현재의 인터넷은 사용자들에게 심각한 위협을 동시에 안겨주는 생활로 다가오는 실정이다.

 

대부분의 악성코드 유포 환경들이 SQL Injection에 의한 웹사이트 변조 (악성코드를 유포하는 코드 추가 형태) 그리고 게시물 등에 XSS 취약성을 이용해 악성코드 유포 사이트로 Redirection이 가능한 문제들이 다수라고 할 수 있다. 실제 전체의 90% 이상이 이 경우에 해당 될 것으로 예상된다.

 

 

 

결론

 

이상과 같이 간략하게 2002년 부터 시작된 중국으로 부터의 공격 동향에 대해서 살펴 보았다. 문제의 근본은 현재 Web application의 취약한 인자에 대한 필터링으로 귀결이 된다. 이 문제를 해결하지 않는 이상 모든 대책은 사후약방문이다. 이 문제만 완전하게 처리 된다 하여도 현재와 같은 혼란상은 발생 하지 않을 것이며 피해는 상당히 제한적일 것이다. 기업내의 정보유출뿐 아니라 개인 사용자에게도 심각한 피해를 입히는 현재의 공격유형을 그대로 둘 경우 인터넷 환경의 위험도는 심각한 양상을 넘어 서게 될 것이다.

 

악성코드를 유포하는 사이트를 찾아내는 것도 현재의 상황을 타개 하는 임시방편이며 악성코드를 탐지하여 제거하는 AV도 근원적인 해결책이 되지 못한다. 최근에 발견된 MS08-067과 같은 Zeroday exploit의 경우를 보더라도 손쉽게 인지를 할 수 있다.

 

중국발 해킹은 전 세계적인 불황시기에 더욱 확산이 될 것이고 중국내의 Black Market은 중국의 불황을 틈타 급격하게 확산되어 전 세계를 위협하게 될 것이다. ( 6년전에 한 예측이 이렇게 빨리 현실화 될 것이라고는 필자도 생각지 못한 부분이긴 하다. 그 만큼 공격 기술의 발전과 웹서비스의 세계화가 빠르게 진행 된 탓이라 할 수 있다. )

 

문제의 해결책은 이미 본 블로그의 여러 Article에서 제안한 바 있다. 개별 사이트에 대한 대응책들은 안전한 웹 코딩 가이드(KISA)를 이용하여 소스코드를 변경 하거나 웹보안장비를 도입하였다면 해당 장비의 상태를 최신 수준으로 상시 유지하는 것, 웹 취약성 진단 스캐너 ( Sourceforge.net 에서 검색 하여도 다양한 sql injection 진단 도구들이 존재한다.)를 활용하여 문제를 수시로 찾고 제거 하는 것이 최선의 대응이라 할 수 있다.

[ http://www.krcert.or.kr/secureNoticeView.do?num=287&seq=-1  이곳의 대응책을 참고.]

 

전 세계적인 움직임 혹은 범세계적인 서비스를 통해 웹 서비스의 코딩 수준을 높이지 않는 이상 현재의 중국발 해킹은 점점 더 심각한 양상으로 발전 할 것이다.

 

보안장비의 도입도 취약성 스캐너의 도입과 점검도 다 중요하다 그러나 가장 중요한 것은 웹개발자의 개발 코드가 안전한지 확인이 가능한 요소가 가장 중요하다 할 수 있다. Secure coding은 SDLC 방법론으로 따지자면 웹개발에는 맞지 않다. 개발의 속도가 너무 빠르기 때문이다. 개발 시기 보다 더 많은 시간이 투자 된다는 점에 있어서 방법론과 적용 기술의 변화가 필요하다. 

 

개발자가 매번 코딩 시에 반복된 오류를 하지 않도록 확인하고 문제를 제거하여 궁극적으로는 전 세계 웹 개발자들이 Secure coding이 생활화 될때 이 문제는 해결이 된다. 그러자면 개발자들의 접근이 용이하고 비용이 저렴하며 정확도를 확보한 url 인자 값의 유효성을 체크하는 도구의 개발과 서비스의 확산이 문제 해결의 첫 걸음이 될 것이다.

 

아직 갈 길은 멀었고 피해는 점차 심각한 양상으로 변질 될 것이다.

 

아무도 이야기 하지 않는 예상과 예측. p4ssionable security explorer . 바다란. 

 

Posted by 바다란

. p4ssion입니다.


지난 글에서 ( 한참 됐습니다. ^^) Mass sql injection 관련된 내용에 대해서 언급을 드린 적이 있습니다.

그 이후 업데이트를 할려고 생각 하다가 개인적인 사정으로 작성하지 못했습니다.

오늘 생각나서 잠시 써봅니다.


http://www.itjungle.com/two/two082708-story05.html 

http://www.technewsworld.com/story/Mass-SQL-Attack-a-Wake-Up-Call-for-Developers-62783.html?welcome=1209498513&welcome=1210717878 

http://www.theregister.co.uk/2008/05/21/china_sql_injection_attack/ 

http://blogs.zdnet.com/security/?p=1150

http://searchsecurity.techtarget.com/news/article/0,289142,sid14_gci1314697,00.html 

http://ddanchev.blogspot.com/2008/05/malware-attack-exploiting-flash-zero.html 

http://searchsecurity.techtarget.com/tip/0,289483,sid14_gci1317069,00.html


Mass sql injection에 관련된 기사들을 이 블로그에 글을 쓰지 않은 이후로 모아 봤습니다.


2005년 부터 활발하게 이루어진 SQL Injection 공격에 대해 이제서야 세계적으로 인지를 하고 부분 대응이 진행 되고 있습니다. 공격의 현황은 어떤 식으로 이루어 지고 있으며 또한 대응은 어떤 방식으로 이루어 지고 있는지 주마간산 식으로 살펴 보겠습니다.


* 이전에 알려진 SQL Injection 공격과는 조금 다른 범주라고 봐야죠. Login 창에 손으로 입력하여 인증을 우회하는 방식은 오래전에 알려졌으며 또 이후의 각 URL 인자마다 문제가 발생하는 부분에 대해서도 알려져 왔습니다. 현재의 SQL Injection이 다른 관점은 Automated SQL Injection 이라는 것입니다.


손으로 직접 수십~수백개의 조합을 통해 DB의 정보를 빼내가는 것이 아니라 특정 DB에 맞추어서 특정 쿼리들을 미리 준비해 놓은 이후 클릭 한번으로 진행을 합니다. 현재의 Mass sql은 여기에서 한 걸음 더 나아가 단일 사이트에 대해 이루어 지는 것이 아니라 수십개 이상의 사이트에 대해 일시적으로 발생 할 수 있도록 범위가 확산된 것입니다.


입력창에 대한 SQL Injection ( ' Or 1=1-- )  ->

수동에 의한 URL 인자의 SQL Injection (시간 오래 소요) ->

자동화된 툴의 쿼리에 의한 정보 유출 및 페이지 변조 (악성코드 유포 목적) ->

대규모 스캔 및 공격이 가능한 Automated Mass attack 기법 및 도구의 출현 ( 이것도 현재는 ASP+MSSQL만 공격 하지만 향후 타 언어 및 다른 종류의 DB로 확대 예상)


위와 같이 순서의 정리가 가능합니다.

대상규모가 한정적일 경우에는 장비의 도입 및 소스코드에 대한 컨설팅으로 문제의 해결이 가능하였으나 이제는 그 범주를 벗어나 악성코드가 범람하는 세상에 살게 될 수 밖에 없는 상황입니다. ( 전 세계의 웹 서비스의 문제를 한번에 없앨 수는 없으므로 )


악성코드에 대한 감염은 브라우저 ( 구글의 크롬, FireFox , IE ..)에 구애받지 않습니다.  악성코드가 사용자 PC에 특정 프로그램을 설치하기 위해 필요한 공격 코드들은 매우 다양하며 운영체제의 한계를 벗어나 여러 Application에 대한 권한 획득 코드들을 이용하는 것이 일반적입니다.  즉 브라우저와는 관계 없이 이 문제는 계속 되며 전 세계의 일반 PC 및 웹서비스가 영향권 내에 들어와 있다고 보는 것이 정답입니다.


< 어쩌면 지금의 상황은 Matrix 구조 같은 거대한 위협속에 놓은 것과 같지 않나 생각 됩니다.>

 

묻습니다.


1. 사용자 PC에 설치된 모든 Application의 취약성을 수시로 확인하고 문제가 있는지 여부를 확인 하는 것이 가능합니까?

2. 수시로 업데이트되고 갱신되는 ( 악성코드의 유형은 대부분 다운로드 형태를 지니고 있습니다. 즉 한 사이트나 몇 개의 악성코드 다운로드 사이트의 샘플만 변경해 주면 새로이 다운로드가 되는 클라이언트는 신종 악성코드에 감염이 됩니다. )  유형의 악성코드에 대한 대응이 가능합니까?

3. 방문하는 사이트가 안전한 웹사이트임을 확인 할 수 있습니까?



간단하게 위의 세 가지 질문입니다.

위의 답변은 1번은 불가능 , 2번도 수동적인 대응외에는 불가능 , 3번도 직관적인 신뢰가 없다가 정답이 아닐까 생각됩니다.


1번의 경우 운영체제를 벗어나 사용자가 사용하는 모든 Application 문제가 없다는 것은 보증하기가 매우 어렵습니다. 사실 불가능한 이야기 이구요. 이 문제는 웹 서비스를 통해 유포되는 악성코드의 전염을 막을 방도가 매우 부족함을 의미합니다.


2번의 경우에는 전 세계의 많은 AV 벤더들에서 대응을 하고 있지만 사실상 공격자의 행동에 대해 대응력은 부족하며 산발적인 대응만을 하고 있어서 노력대비 효과는 미미한 수준이라 할 수 있습니다. 발견을 못한 AV 벤더는 업데이트가 없이 그냥 가죠. 그리고 발견하여 대응을 한다고 하여도 이미 공격자는 또 다른 내용으로 손쉽게 변경하는 것이 가능합니다. 전 세계에 널리 자사의 AV 제품이 사용되고 있다면 최소 시차를 고려 하여도 1일 이상의 시간이 소요 되는 것이 현실 적입니다.

그러나 공격자는 단 몇 분이면 새로운 악성코드의 유포가 가능하며 사용자에게 전파가 가능한 유형이 됩니다. 따라서 뚜렷한 대응방안이라고 보기가 곤란한 상태라 할 수 있습니다.


3번은 더 말씀 드리지 않겠습니다.


이미 대책 부분과 필요한 부분에 대해서는 이전의 몇몇 Article에서 충분히 언급한 상황입니다.

[ 상상하기 어려운 위협 - http://p4ssion.com/112 , http://p4ssion.com/152   ]

[ IT 서비스의 현재 위험과 대응 종합 , 첨부파일 참고 - http://p4ssion.com/199 ]


전 세계적인 대응 현황을 간략하게 살펴 본 주관적인 의지로 정의하면 빈익빈 부익부, 근본에 도달하지 못한 미봉책..

이 정도로 정의를 할 수 있습니다.


며칠전 MS에서는 웹 서비스에 대한 SQL Injection을 막기 위해 IIS의 Plugin 형식인 URLscan Filter 3.0를 배포 하고 있습니다.

[ http://www.microsoft.com/downloads/details.aspx?FamilyID=ee41818f-3363-4e24-9940-321603531989&displaylang=en ]

현재 타켓화 되고 있는 ASP+MSSQL+IIS 조합에 활용이 가능한 유형입니다.


물론 실제 적용 시에는 개발된 서비스의 소스에 따라 설정의 변경등이 필요한 상황이 되겠습니다.


또한 HP의 WebInspect and QAInspect라는 제품과 IBM의 Appscan , WVS의 Acunetix 라는 웹 취약성 스캐너들이 현재  전세계 시장의 다수를 차지하고 있습니다. 이 제품들의 특징은 스캔 할 수 있는 도메인이 한정 되어 있다는 점, 과도한 취약성 점검을 위해 컨텐츠를 다운로드 (?) 받아서 재현을 하다보니 대용량 사이트에 대해서는 진단의 한계를 보이는 점들이 있습니다.

가장 중요한 점은 가격이 후덜덜입니다.


왠만한 IT기업에서 제품군을 도입하려면 많은 전문인력 및 도구 구입에 상당한 비용을 들여야 할 것으로 보입니다.


자 위의 두 가지와 같은 대응 흐름이 있습니다. 솔루션을 이용한 근본 취약 부분을 찾아서 소스코드의 문제를 수정하는 방향과 현재 발생되는 공격이 유효하지 않도록 무력화 시키는 Filter 부분이 있는데 두 가지 모두 한계를 지니고 있습니다. Filter의 경우에는 우회가 가능한 패턴 유형이 발견 될 수 있다는 점과 기존의 정상 서비스 트래픽에 대한 제한을 지닐 수 있다는 점입니다.


또한 솔루션을 이용한 취약 부분 진단에 대해서는 고비용, 대형 사이트 진단 불가 , 도메인 스캔의 제한 , 속도의 문제로 인해 사용이 어려운 측면이 발생 합니다.


( Web Firewall 등에 대해서는 별도 언급 하지 않겠습니다. 도입시 마다 설정 변경이나 Customizing 없이 사용 가능한 제품이 없지 않나요? 어쩌면 소스코드 수정이 휠씬 빠를 수도 있는 Customizing이며 공격 패턴이 변경 되면 처음 부터 다시 설정 해야만 합니다. - 근본 문제 제거와는 관련 없는 부분이며 임시방책일 뿐이라 논의 하는 것은 부적절하다는 개인 판단입니다. )



빈익빈 부익부.


가난한 기업들과 여력이 없는 기업들을 위한 해결 방안은 어디에도 없습니다. 그나마 전문성을 지닌 인력이라도 있다면 이런 문제를 해결해 보겠으나 인력도 없으니 설상가상인 상태가 되겠죠. 앞으로도 오랜 기간 동안 대상이 될 것으로 예상 됩니다.


개인적인 예상으로는 향후 2~3년간은 이러한 대규모 악성코드의 유포에 의해 매우 시끄러울 것이고 특별한 해결책도 찾기 어려운 상황이 계속 될 것입니다. 그 이후에는 또 다른 부분으로 전이가 되겠지만...


부유한 기업들은 많은 비용을 투입하여 장비를 도입하고 소스코드에 대한 진단과 컨설팅등을 받습니다. 그러나 빈자들의 서비스를 통해 유포되는 악성코드들은 주로 부유한 서비스 기업을 노리고 있습니다. 이 점에 대해서는 간과를 하는 면이 많은 편입니다.


문제의 해결을 하기 위해서는 세계의 인터넷 환경을 일시에 ( 상당히 빠른 시간) 클린한 상태로 올려 줄 수 있는 부분이 필요하며 자신만의 서비스를 벗어나 전체적인 시각을 가지고 움직일때 자신의 서비스에게로 오는 위험을 줄 일 수 있습니다.


말그대로 네트웍 환경은 위협도 연결이 되어 있기 때문이죠.


빈자들을 위한 보안도구들은 언제쯤 출현 할까요? 상용도구의 정확성 만큼을 보유한 저렴하고 접근성이 뛰어난 도구의 출현이 현재의 상황을 좀 더 빠른 시기에 진화 할 수 있을 유일한 방안이라 생각 합니다.


전술과 전략이 있습니다. 개개의 싸움을 하는 전략은 현재대로 진행 하고 상호협력을 강화할 방안을 찾아야 하며 ( AV의 대응 , Scanner , Web Firewall, Vendor의 대응) 더불어 가장 중요한 전술적인 차원의 큰 방향성이 필요 합니다.


큰 방향성 차원에서 공격의 범주를 최대 확산이 불 가능 하도록 일정 수준 이하로 묶음으로써 피해의 광역화를 막는 것이 가장 큰 이슈가 될 것이고 가장 필요한 관점이 아닐까 생각 합니다. 전술적으로 확산 범주를 좁히기 위해서는 가장 필요한 것이 문제점을 찾을 수 있는 접근성 뛰어난 저렴한 비용의 도구의 확산이나 서비스화가 우선 되어야 할 것이구요.


전술과 전략은 구분되어야 하며 현재의 전략도 부족한 면들이 있으며 커버 가능한 범위를 더욱 넓힐 수 있는 도구와 서비스의 출현들이 심각하게 필요하며 전술적인 관점에서는 거대한 악성코드 유포 네트웍을 소규모 단위로 분산 시킬 수 있는 정책적인 방향성이 필요합니다. 수많은 이해가 상충되는 야생의 시대에 이런 협력이 필요한 전술과 전략은 구사되기 어려운 점들이 많을 것입니다.


따라서 앞으로도 위기는 계속 지속 될 것입니다. 모든 프로그래머가 Secure한 코딩이 일상화 되기 전까지는 상당히 오랜 시간 위기는 지속 될 것이고 이제 세계적인 시작은 큰 흐름이 벌써 시작된 상황이라 예측 됩니다.


- p4ssion. 2008.9




Posted by 바다란

manian쪽에 올린 글인데 예를 들어서 설명 하였으므로 참고할 부분이 있을 것입니다.

도움 되시길.

---------------------------

안녕하세요. 바다란입니다.

다른 사이트들이 기능상의 코딩을 못해서 생기는 문제가 아닙니다.
기능상으로는 최적화 되어 있죠. 작은 부분 하나를 신경 쓰지 못해서 생기는 문제입니다.
동일하게 manian 이 사이트도 똑같이 당합니다.

간단하게 말씀 드려 DB에 직접 인자를 전달하는 웹 코딩에 있어서 이 인자값에 대해 검사를 하지 않으면 DB에 직접 명령을 내릴 수 있습니다.

다들 밑에 게시물 보면 바이러스 제품에 걸리고 안 걸리고 이걸 가지고 언급을 많이 하시는데 이건 차후적인 문제입니다. 어떻게 해서 그 웹 소스에 바이러스 코드가 들어 갈 수 있는지가 가장 중요한 관점이 되어야 하지 않을까요?.

문제는 여기에서 부터 시작합니다.

예를 들어 이 글을 입력하는 URL을 보면 다음과 같습니다.
http://manian.dreamwiz.com/board/write.asp?bid=A010101&page=1&cate=6

Write.asp 라는 웹 소스내에 인자는 bid , page , cate 라는 세개의 인자를 가지고 있습니다.
물론 내부에 더 있을 수 있죠. 이 각각 인자를 가지고 DB에 해당하는 인자를 조합한 값에 일치 되는 결과를 돌려주고 그 결과가 화면상에 나타납니다. 그렇다면 bid 는 문자와 숫자가 조합이 되어 있고 page 와 cate 인자는 숫자가 입력 되도록 되어 있습니다.

만약 위의 인자에 다른 값들이 들어가면 어떻게 될까요? DB에서 인자의 구분은 ' 와 같은 인용부호를 통해 이루어 집니다. Bid=A010101 이라는 값에서 DB로 쿼리하기 전에 코딩상에서 'A010101' 이라는 값을 넣어서 select 쿼리가 들어가게 되겠죠. 이 값의 뒤에 ' 문자를 더 입력하면 어떻게 될까요?. 'A010101'' 입력이 되겠죠. 그러면 DB에서는 ' 인용부호가 닫혀지지 않았다는 에러가 발생하게 됩니다. 여기에서 부터 SQL Injection 공격이 이루어 지는 거죠. ' 문자를 입력하거나 And 문자를 입력하였을때 DB에 저장된 결과를 수십번의 반복 쿼리를 통해 결과값을 얻어 낼 수가 있습니다. 여기에 관련된 공격은 웹에서 SQL Injection 관련 문서를 찾으면 다수 나올 껍니다.

page와 cate에는 숫자만 들어 가야 하는데 이건 프로그래머의 가정이죠. 입력하는 사람이 숫자가 아닌 문자를 입력한다면 어떻게 될까요?. 스크립트 상에서 숫자만 있는지를 검색해야 하는데 안할 경우에는 DB로 바로 전달이 됩니다.
브라우저 상으로 볼때는 500 Internal Server error 가 발생되어 실행이 안되는 것으로 보이나 Raw Traffic상에는 DB에서 리턴되어 오는 결과가 저장 되어 있습니다.
Ethereal 등으로 트래픽을 보면 확인 할 수 있습니다.

위의 예에서 보듯이 지난 5월 부터 이루어진 국내사이트의 공격에서 가장 중요한 관점은 이겁니다. 인자에 대한 입력 체크 및 Validation 체크가 핵심입니다.
Type에 대한 체크 및 인자의 입력값에 대한 길이 체크 그리고 특수문자 입력에 대한 처리가 가장 중요한 부분입니다.

http://blog.naver.com/p4ssion/40015866029 게시물에 올려진 내용들도 참고 하시면 될 듯 싶네요.

paros 나 web application scanner 등을 이용하여 인자 단위의 유효성 체크와 SQL Injection 취약성 가능성을 체크 하는 것이 가장 중요합니다. 진단 툴의 경우도 만들어서 쓰고 있는 툴의 예를 들면 ScreammingCSS 라는 CSS 진단하는 펄 스크립이 있습니다. 이걸 변경하고 SQL Injection 이나 인자 단위의 입력값 검증을 하는 루틴을 첨가하면 손쉽게 만들 수 있습니다.

입장이 곤란해서 오픈을 못하는 것이 안타까울 따름입니다.

그럼 ...

------------

답변중에서:

 

로긴 창에 SQL Injection을 시도하는건 작년 까지의 버전입니다.
중국쪽에서 인자 각각에 대해 DB가 에러메시지를 보내는 것을 받아서 Blind SQL Injection 기법으로 DB user 및 계정 정보를 획득 합니다.
위에 설명을 잘 보시면 Form이나 로그인 창에 입력하는게 아닙니다.

길이제한이 없을 경우 이 글의 링크인 http://manian.dreamwiz.com/board/view.asp?bid=A060201&no=116895 에다 no가 숫자만이 아닌 문자도 받는다고 했을때 http://manian.dreamwiz.com/board/view.asp?bid=A060201&no=116895' and db_name() .. 등등 이렇게 쿼리를 하면 어떻게 결과가 나올까요?..
아마도 500 Internal Server error가 뜹니다. 그러나 위의 게시물대로 Raw Traffic을 보면 MSSQL의 경우  결과가 전송되는 것을 확인 할 수 있습니다. 즉 브라우저에 보여지는 것과 웹로그에는 500 Error라고 나타나도 DB와 조회는 가능하다는 거죠.

이 관계를 모르기 때문에 문제가 계속 되는겁니다.
분명히 인자에 대한 길이 제한 및 인자 값에 들어가 있는 특수 문자 제어등과 같은 Input validation check가 안되면 계속 됩니다. 예전과 같은 SQL Injection 로그인 기법을 생각하시면 안됩니다.

웹 프로그래머 이시면 이글의 링크를 예를 들어 bid 와 no 에 값으로 받는 것에 대해 숫자인지 아니면 특수문자가 들어가 있는지 일정 길이 이상이 넘는지를 체크하여 DB에 전송 해야 합니다. 이런 체크가 선행 되지 않으면 DB는 거져 먹는게 되죠.

그럼.

 

Posted by 바다란

오랜만입니다.

 

여러 개인 사정으로 인해 글을 쓸 여유가 없었습니다.

앞으로도 상황은 마찬가지 일 것 같습니다.

 

SQL Injection . 지금에 와서 이 공격의 유형을 모르는 한국이나 전 세계의 웹 개발자 혹은 보안 전문가는 없으리라 봅니다. 3~4년 전만 하여도 일선의 재빠른 사람들에게만 인지 되는 사안들이 이제는 글로벌화된 상황이라 할 수 있습니다.

 

이전에 존재 하였던 SQL Injection 유형과 현재 발생하는 유형의 차이점은 이 블로그의 Mass sql injection 관련 글을 찾아 보시면 좀 더 쉽게 이해가 되시리라 봅니다.

 

현재는 상황 그대로 세계적인 불황입니다. 얼마전 글에서 예측 하였듯이 앞으로 노골적인 공격들이 더욱 거세 질 것 이고 보다 전문화된 공격들도 직접 이용이 될 것입니다. 최근 MS에서 긴급패치가 이루어진 MS08-067의 경우에도 PoC( Proof of concept - 공격 개념코드)가 나오기 이전에 계정정보 유출을 위한 실제 Trojan이 배포 된 이후에 MS 측에서 대응을 한 내용입니다.

 

앞으로 이와 같은 상황은 더욱 거세질 것입니다.  공격의 전문성도 높아지고 유포되는 범주도 지속 되고 있습니다. 지금도 하루에 수 십차례 이상 공격을 받는 곳들이 대다수 일 것이고 문제가 심각한 기업들은 웹보안 장비들의 도입에 열을 올리고 있을 것입니다. 이런 웹 보안장비들의 근본적인 한계에 대해서는 본 블로그에서 여러 차례 지적한 바가 있습니다.

 

 

 

공격의 전문성 강화

 

공격의 전문성이 높아지는 것은 비단 이번의 MS08-067의 예를 들지 않더라도 2년 전 부터 나타난 현상입니다. 하나의 Trojan을 설치하기 위해 수 십가지 이상의 여러 Application에 대한 공격코드들이 최적화 되어 있고 주변으로 전파를 하고 있습니다. 심지어는 ARP spoofing까지도 이루어 지죠. ( SQL Injection 이든 Arp spoofing의 경우에도 기존의 공격 개념과는 다른 관점으로 상당히 발전적인 응용이라 할 수 있습니다. )  공격자들은 그만큼 기존의 공격 기법과 새로운 취약성의 접합과 연구에 적극적입니다.

 

그리고 그들은 이제 전문 영역을 지니게 되었습니다. 이 의미는 하나의 산업으로 존재할 만큼의 기술적인 (?) 공격 역량과 숙련도를 보유하고 있다는 것이라 할 수 있습니다. 이런 기술을 이용하여 이득을 취하기 위한 또 다른 산업 영역도 개척을 한 상태입니다. 즉 소비채널과 유통채널의 구축이 완료된 상태라 할 수 있습니다.  앞으로 더욱 심해 질 것입니다.

 

새로운 Exploit의 최초 발견과 적용이 연구자들 사이에서 나오는 것이 아니라 이제는 공격자들에게서 직접 발생이 되고 있습니다. 이 추세는 향후에도 증가 할 것으로 예상 됩니다. 더불어 SQL Injection의 경우에도 여러 번 거듭 말씀 드렸지만 단순 패턴매칭으로 차단하는 보안장비에서는 해결이 되지 않습니다. 지금도 정말 많은 우회 기법들이 나오고 있고 바로 적용이 되고 있습니다. 공격자는 코드 한번만 바꾸면 되지만 방어자는 수 천, 수 만 아니 그 이상의 장비들에 대해 개별적인 설정이 되어야만 합니다. 

 

이 싸움에서 이길 것이라 보십니까?  저는 진다고 봅니다.

 

 

(Mass sql injection)양식장을 손에 쥔 상어떼

 

이 표현이 적당한 가 모르겠습니다만 제 머리속에 그려지는 이미지로는 이 표현외에는 더 적당한 표현을 할 수가 없습니다. 양식장은 전 세계의 웹 서비스가 해당이 됩니다.

상어떼는 아시다 시피 공격자들이구요. 양식장에 갇힌게 아니라 언제든 잡을 수 있는 그물을 상어떼가 가지고 있는 모양새 입니다.  이 그물을 어떻게 끊을 수 있을까요? 

 

개별 웹 서비스들에 대해서는 가능하겠지만 전 세계적인 범주에서 보면 정말 어려운 일일 것입니다.  전 세계 웹 서비스의 인자 각각에 유효성 체크가 되어야만 하는데 현실적으로 어렵습니다. 스캐너를 이용한 진단의 경우에도 여러 한계가 있음을 지적한 바 있습니다. 앞으로도 오랜 시간이 흘러야 범위가 줄어들 것이고 그 이전까지는 광범위한 Trojan의 유포와 악성코드에 의해 전 세계의 개인 PC가 시달릴 것입니다. 윗 절의 공격의 전문성 강화와 겹쳐져 공격의 전문성과 파급력은 지속이 될 것이고 PC에 설치되는 다양한 Application에 대해 공격이 이루어 질 것입니다.

 

현재의 공격은 서비스에 대한 공격인 DDos 공격과 금전을 목적으로 한 Trojan 유포에 중점이 맞추어져 있습니다. Trojan 유포는 웜과 바이러스를 통한 유포의 범주보다 웹서비스를 통한 광범위한 유포가 일반화 되어 있습니다. 지금의 공격자들의 특성은 자신을 과시하지 않습니다. 오로지 금전적인 정보가 목적일 뿐입니다.

 

전 세계 모든 보안 채널 및 보안 관련 회사들이 새로운 유형의 공격기법이나 취약성이 출현 할때 마다 예전보다 휠씬 더 긴밀하게 협력을 하고 있습니다. 그래도 모자람이 너무 많습니다.

 

 

이런 그물을 끊어야만 하며 끊기 위해서는 개발자를 위한 자가진단이 가능한 저가 웹서비스 혹은 Open source 형태의 서비스가 필요하고 점진적으로 개선을 시킬 수 밖에는 없는 상황입니다.

 

현재 큰 범주에서 문제를 해결 하기 위한 해결책은 한정적입니다. 지역적인 측면이나 기업 측면에서는 비용을 투입하여 해결이 가능하나 웹서비스의 개편시 마다 비용 부담과 끊임없는 지속성을 유지 해야 하는 것이 관건입니다.  Penetration Test ( 모의해킹이라 부르며 시스템에 피해를 입히지 않는 범위에서 공격자의 입장에서 서비스 취약성을 사전 진단하는 유형 )를 할 수 있는 인력들도 한정이 되어 있습니다. 전문기술을 보유하고 있음에도 불구하고 돌쇠타입의 마당쇠로 전방위로 혹사 당하는 것이 지금의 보안 인력 혹은 보안 팀들이라 할 수 있습니다. 언제까지 버틸 수 있을까요? 또 언제까지 혹사를 강요할 수 있을까요? 인력으로 버틸 수 있는 정도는 절대로 아니기에 어려움이 충분히 예상 됩니다. ( 아닌 곳들이 있나요? )

 

 

결론적으로 앞으로 오랜 시간 문제는 지속되고 심화 될 것이고 이 문제를 줄여나가기 위해서는 악성코드 유포의 숙주로 활용되고 있는 웹서비스들의 안정성을 시급하게 보완하고 지속성을 가질 수 있도록 하는 것이 키라고 할 수 있습니다. 이렇게 하여야만 문제를 끝낼 수 있습니다. ( 기술적인 해결책이나 여러 방안들은 http://blog.naver.com/p4ssion 의 여러 Article들을 참조 하시면 됩니다. )   개별 서비스에 대한 해결책의 논의가 아니라 큰 범주에서의 해결 방안은 어떤 성격을 지녀야만 문제 해결에 다가 설 수 있는지를 언급하였습니다.

 

1년 이상을 이런 관점에서 계속적인 의견을 제시하였으나 아직 이런 형태의 서비스나 문제해결 시도는 출현 하지 않았습니다. 그러나 머지 않은 시일 내에 유사한 서비스들이 출현하여 문제점들을 줄여가고 세계적인 방향성을 선도할 것으로 믿어 의심치 않습니다. 누구도 하지 않는다면  저라도..~~

 

 

그럼 .

 

p4ssionable security explorer . 바다란

Posted by 바다란

뭐 하루 이틀 된 이야기도 아닙니다.

이미 5~6년 전 부터 징후가 있었고 그 이후 타임워프 하듯이 대규모로 공격 인력이 늘고 기법도 고도화 되어 왔습니다.

 

이젠 대규모적인 대응 없이는 불가능하다고 볼 수 있습니다.

단편적인 대응과 사법기관 공조 만으로는 빙산의 일각도 제거하기 어렵습니다.

 

체계적이고 근원적인 부분에 대해서 장기적인 처방이 필요한데.. 여유와 인내심을 가지고 정책을 진행하고 방향성을 제시 할 수 있을런지가 가장 중요한 부분입니다. 대책 부분에 대해서는 하두 여러번 언급 했었지만 시행에는 상당 시일이 걸리고 시간이 지난 지금에서도 유효한 대응은 적어 보입니다.

 

앞으로 어떻게 될런지..

http://news.naver.com/main/read.nhn?mode=LSD&mid=sec&sid1=105&oid=029&aid=0001974017

 

종합적인 대책과 향후 진행 해야 될 부분들에 대해서는 2007년에 언급한 대책과 문제 상황 부분이 있습니다. 정말 힘들고 위급한 상황이 닥쳐 올 것이라고 예상을 하고 좀 길게 설명을 했었는데 이제라도 일부분에 대해서 적극적인 시행이 되어야만 할 것입니다. 그렇지 않다면 문제는 더욱 더 심각도를 높여서 일어날 것으로 보입니다.

 

보안적인 문제를 해결 하지 않았을때 발생 되는 피해와 비용은 상상하기 어려울 정도이며 지금도 마찬가지 입니다. 초기에 대규모 노력이 들어가는 것으로 보이지만 이것이 가장 적은 비용을 들이고 문제를 해결 하는 길입니다.

 

다시 한번 문제 해결을 위한 방안들이 다각도로 ( 문제의 근원을 제대로 인식하고 ) 진행이 되었으면 합니다.

 

http://blog.naver.com/p4ssion/50024269739  <- 첨부파일을 참고하세요.

 

2007년에 작성한 글이나 노력이 진행 되지 않는한 향후 3~4년 이상 유효한 글이 될 것입니다.

 

Posted by 바다란

http://news.naver.com/news/read.php?mode=LSS2D&office_id=008&article_id=0000718196&section_id=105&section_id2=283&menu_id=105

 

manian 사이트가 해킹을 당해 악성코드 유포지로 활용이 되었다. 해당 사이트를 닫은 이후 재점검 하고 다시 올렸지만 이제는 또 다른 사이트다.. dvdprime ...

 

아무리 말을 해도 들으려 하지 않는자에게는 소용이 없다.

 

공격 기법도.. 또 방어 대책도.. 모두 있음에 하지 않는 것은 아직 피해 및 여파를 모르기 때문일 것이다. 국내 온라인 게임에 대한 해킹이 증가하고 있고 그 원인의 대부분은 사용자 PC를 공격하는 악성코드 때문이라 할 수 있다.

 

1차적으로는 보안상의 취약성을 내포한채 서비스가 계속 되고 있는 사이트가 가장 큰 문제이며 두번째로는 개인 PC의 보안 상태가 취약하여 악성코드가 설치될 수 밖에 없는 개인 사용자의 문제라 할 수 있다.

 

앞으로도 계속될 해킹과 개인 PC에 대한 집요한 공격.. 또 이를 이용한 온라인 게임 계정의 도용 및 유출은 상관 관계를 계속 지닐 수 밖에 없고.. 국내 사이트에 존재하는 다수의 문제가 해결 되지 않는한 이 문제는 내년을 지나 그 이후에도 또 다른 유형으로 나타날 수 밖에 없다.

 

취약성을 이용한 집중 해킹.. 그리고 악성코드 유포 [ 요즘은 링크나 프레임을 찾기도 어렵다.. ] , 그리고 온라인 게임 접속시의 다수 계정 유출 [ 악성코드를 통한 유출이다.]

 

과연 누구의 책임이라 할 수 있을까?. 일단 피해는 게임을 사용하는 유저에게 돌아간다. 그리고 책임은 온라인 게임사에게로 화살이 돌아온다. 과연 이게 정당할까?

 

국내 유명 IT 서비스 기업들은 대부분 해킹을 통해 악성코드가 유포된 적이 있다. 이미 기사화 된 곳들만해도 상당 규모에 달한다.  악성코드를 유포하기 위해 소스를 변조한다는 것은 이미 웹 소스를 변조할 권한을 지니고 있다는 것이고 공격 유형의 특성상 DB에 대한 제어권한을 지닐 수 밖에 없게 된다. 이 말인 즉.. 대규모 사용자의 계정 정보 및 사용자 정보가 이미 대량 유출 된지 오래 되었음을 의미 할 수 있다.

 

현재 중국에서는 악성코드를 유포하여 사용자 계정을 획득하고 넘겨 줌으로 인해 돈을 받는 모델이 성행하고 있다 한다. 사용자 계정 갯수당 얼마 하는 식으로 진행이 된다.

이 고리가 끊기지 않는한 국내의 해킹은 계속 될 수 밖에 없다. 그렇다고 끊을 수 있는 방안도 없다. 그렇다면 무엇을 해야 하는가?

 

지루하고 대규모의 작업이지만 전체 사이트에 대한 보안 점검을 통해 문제점을 수정하고 보완하고 개발자에 대한 교육등이 이루어져야 한다. 또 사용자 PC에 대한 대대적인 안정성 강화 플랜을 세워야만 한다.

 

경찰이 열이여도 도둑 하나를 잡기는 어렵다고 한다. 마찬가지이다. 공격자는 무작위로 대상을 추출하고 막는자는 전체를 다 틀어 막아야만 한다. 과연 이 싸움에서 얼마나 오래 갈 수 있을까?.

 

기나긴 작업이다. 그러나 하지 않으면 안되는 작업이다.

 

-

 

Posted by 바다란

12.25 1998   -p4ssion@gmail.com zdnet

 

 

2009년의 연말에 뜬금없이 10년도 더 지난 날짜의 크리스마스를 언급한다. 1998 12.25일에는 RFP (Rain Forest Puppy)에 의해 최초로 DB 웹애플리케이션간의 SQL Injection 대한 발표가 이루어 졌다. 해당 발표는 프랙이라는 해커들의 온라인 잡지를 통해 이루어 졌다. 현재의 인터넷 서비스를 곤경에 처하게 하는 SQL Injection 문제는 벌써 11년이나 된 문제인 것이다. 오래된 이 문제는 지금 어떤 모습이고 어떤 영향을 미치고 있을까? 우리는 어디쯤에 있는가?

 

그 당시에는 누구도 지금과 같은 사태를 예견하지 못했었다. 불과 3~4년 전만해도 전문가들은 전문가들 나름대로 관심을 두지 않았고 비전문가들은 전혀 모르는 상태였었다. 단 하나의 권한을 획득하기 위해서는 수없이 많은 시행착오와 쿼리를 던져야만 일정 수준의 결과를 가져 오는 것에 대해 누구도 심각성을 인지하지는 못했다. 중요성이나 심각성이 최초로 드러난 것은 대량으로 자동화된 공격 도구가 출현한 이후이다.

 

단일 웹사이트에 대한 자동화된 공격도구의 출현과 대규모 웹사이트에 대한 Mass sql injection 공격 도구의 출현이 지금의 상황을 만들고 있다. 상황은 점점 어려워 지고 있다.

시기별로 SQL Injection공격의 변화와 흐름은 지난 해에 정리한 글을 참고 하면 된다.

 

최초 출현 이후의 변화는 지난해에 작성한 글을 참고하면 되고 현재의 상황은 어떤 상황인지 살펴 보도록 하자.

IBM X-Force에서 2009 상반기 위협 동향과 리스크에 대해 종합한 보고서가 있다. 해당 리포트에서 요약 부분만을 보면 다음과 같은 동향을 관찰하고 있다.

 

1 .2009년 상반기중 발표된 전체 취약성의 50% 이상이 웹 애플리케이션에 대한 취약성이며 상반기중 발표된 취약성중 절반 가량이 패치가 발표되지 않은 취약성이다.

 

2. 웹사이트의 취약성을 공격하는 비율이 급증하고 있다. 2009 1Q의 공격 비율의 두 배 가량이 2Q에는 관찰이 되었다.

 

3. 일반적으로 사용자들이 안전하다고 생각되는 문서유형에 악성코드를 결합시키는 것이 늘고 있으며 어도비의 PDF 취약성은 최초로 Top 5 취약성 항목에 선정 되었다. MS Office 취약성과 PDF를 이용한 취약성이 일반적으로 사용이 되고 있으며 웹서비스를 통한 악성코드유포, 이메일을 통한 전파가 2009년 상반기 급증 하였다.

 

4. 2009년 상반기 악성코드를 유포하는 URL 링크는 508%로 폭증 하였다.

 

5. 스팸메일은 상반기에 40% 증가 하였다.

 

간단한 요약상으로 보면 웹애플리케이션의 관점으로 본 취약성 및 동향 보고서로 보이지만 실제 상반기 동향을 전체적으로 살펴보고 내린 종합 보고서라는 점에 의미를 두어야 한다.

 

특징적인 점은 웹 애플리케이션에 대한 공격은 시간이 지날수록 줄어 드는 것이 아니라 시기, 사안, 목적에 따라 급증 할 소지를 매우 많이 가지고 있다는 점이다. 얼마 전 있었던 중국 내 공공기관 및 교육기관에 대한 대규모 악성코드 유포 행위는 그 동안 공격자로만 인식 되어 왔던 중국 조차도 심각한 국면임을 생각하게 한다. 총 18여만개의 gov.cn, edu.cn 기관의 웹사이트에서 악성코드가 유포 되는 사례가 발견이 되었다.

 

단 기간에 몇 십만 대의 PC가 아닌 웹서비스에 대한 공격이 성공적으로 이루어 지고 도구로서 활용이 되는 것이 일상적인 인터넷 상황이라는 점이 가장 우려할 만한 점이고 향후에는 더 심각한 국면으로 전환이 될 것이다.

 

내부망에 대한 침입을 하는 도구로서 웹 애플리케이션을 직접 공격하는 행위와 무차별적인 악성코드 유포를 위해 웹 애플리케이션을 공격하는 행위는 동시에 발생 될 것이며 전자는 기업이나 기관의 내부망에 침입하여 자료를 탈취 하거나 금전적인 이득을 얻는 것에 사용이 되고 있으며 후자는 개인 PC의 금전 거래 관련 정보와 온라인 정보를 절취함으로써 이득을 얻는 것이 일상적인 현실이다.

 

국가 기반시설이라고 할 수 있는 기반시설망(전력, 가스, 통신, 교통)에 대해서도 심각성이 높으며 향후 강도 높은 주의가 필요하다는 점은 외부와 연결된 접촉지점을 가질 수 밖에 없기 때문에 경고를 하는 것이다. 앞으로의 위험은 더 크고 치밀한 양상으로 치달을 것은 명확하다.

 

IBM X-Force에서 발표된 자료를 조금 더 살펴보자.

 

 

대량 공격의 일반화에 대해 IBM에서 모니터링이 가능한 사이트들에서 발견된 공격로그들만을 살펴 보면 현황을 알 수 있다. 일단위로 2008년에는 평균 10만에서 20만 정도의 SQL 공격로그들을 관찰 할 수 있었으나 2009 5월에는 최고 70만건의 일별 공격로그가 관찰 되는 것을 볼 수 있다.

 

 

웹 애플리케이션에 대한 공격로그에서 공격기법 별 분류를 한 자료이다. XSS 취약성과 Injection 공격이 사실상 대부분을 차지하고 있다고 볼 수 있다. 그러나 여기에 공격의 파급도를 판단하면 Injection 공격은 사실상 월등히 높은 가중치를 지닐 수 밖에 없다.

물론 위의 데이터 자체는 IBM에서 판매하고 있는 침입탐지 장비에서 탐지된 로그를 기반으로 하고 있을 것이다. 지난 글로벌 보안 위협에 대한 분석에서 언급 하였듯이 전체적인 동향과 흐름을 인지하는 방식으로 참고를 할 수 있을 뿐이다.

 

해외 언론에서 언급하는 ‘New’ 라는 용어에 너무 겁먹을 필요 없다. 공격 방식은 동일하다. 약간의 변형들이 있을 뿐이다. 해외언론에서 언급하는 New SQL Injection 이라는 용어 자체는 단지 새로운 악성코드를 유포하는 링크가 변경 되었다는 점 외에는 없다. 따라서 새로운 유형의 공격은 아니라는 점이다.

 

국내의 모회사에 대한 해킹과 해외의 보안 회사들의 웹 서비스에 대한 해킹을 통해 위험성을 알리는 Unu라는 친구의 공격이 지금 시점에 중요한 것은 아니다. 공명심에 그러한 행동을 하는 것은 뒤에 더 큰 문제를 보이지 않게 만든다. 공개된 공격도구를 이용하여 특정 목표에 대해 꾸준하게 문제점을 찾고 공격 시도를 하는 것은 일반적인 스크립트 키드에 지나지 않는다.

 

정말 중요한 사안은 분 단위로 권한을 획득 당하고 소스코드가 변조되는 웹서비스들이다. 또 웹서비스들을 숙주 삼아 .정체를 전부 파악 하기 어려운 악성코드들이 전 세계를 대상으로 무작위로 유포가 된다는 점이 더 치명적인 사안이다.  오래된 이야기 이지만 준비는 어디에도 없다. 너무 많은 곳들이 당하다 보니 일상적인 상황이 되어 버렸다. 그만큼 치명적인 위험들도 더 가까이에 와 있다.

 

 

필자가 보는 관점은 명확하다.

문제가 될 것임은 이미 예측 되어온 바다. 그러나 어디에도 장기적인 해결책이나 방안을 마련 하려는 곳들은 없다. 이미 한 기업이나 조직에서 해결 하기에는 범위가 너무 커져 버렸다. 시간이 지날수록 점점 더 커져 갈 수 밖에 없을 것이다. 문제의 해결을 위해서는 현실을 직시하고 장기적인 방안을 마련 해야만 한다.

 

사이버 상의 스팸과 광고, 정보거래를 통해 금전적인 이득을 얻던 검은 그룹들은 이제 공개적으로 침입을 하고 권한을 획득하고 내부에 침입하여 노골적인 이득을 취하고 있다. 이러한 행위는 Heartland 대한 침입 7 eleven 대한 침입, 지난해에 있었던 Citibank에 대한 침입들이 모두 해당이 된다. 최근에 있었던 독일 대학생들의 국내 IT기업의 내부 기밀을 해킹한 이후 협박을 웃지 못할 경우도 동일한 사례이다. 국내의 사례는 뭐라 평하기 어려울 정도로 당혹스럽다.

 

독일에서 한국으로 접속해 느린 속도에도 불구하고 750기가나 되는 양을 빼내어 갈 그 많은 시간 동안 무얼 했을까? 문제점들은 찾아서 해결을 했을까? 하는 여러 단상들이 있다.

 

언급한 여러 사건들 중 상당 부분의 침입들이 내부망에 침입하기 위한 통로로서 웹 애플리케이션 공격을 선택 하였고 실제 성공 하였다는 점이다. 앞으로 더 많은 사례들을 볼 수 있을 것이다. 더 치명적이고 더 위험한 사례들은 머지않아 출현 할 수 밖에 없다.

 

11년이나 된 공격의 유효성은 지금에 와서야 대규모 피해를 입고서 인식이 된다. 그러나 해결책은 쉽지 않다. Secure Programming도 어려운 과제이고 보안도구들의 대량 도입도 난관이 많다. 풀어야 할 프로세스들도 산재해 있다. 무엇보다 중요한 것은 기업이나 산업에 보안은 치명적인 요소로 작용 한다는 것을 이해 하는 것이 먼저 일 것이다. 필자가 생각하는 해결방안에 대해서는 근 시일 내에 정리 하도록 하겠다.

 

중요성에 대한 인식은 너무 먼 곳에 있다. 세상이 어수선하다. 보이지 않는 인터넷 세상은 더 큰 좌절이 존재한다. 문제 해결까지는 정말 많은 시간이 소요 될 것이다. 가장 효율적인 도구가 존재 한다 하여도 최소 3~5년 이상은 이 어플리케이션의 문제로 치명적이 될 것이다. 모바일도 예외가 될 수는 없을 것이다. 모든 것은 이어져 있다. 이것이 인터넷이다.

 

사람 사는 세상에도 어둠이 짙듯이 인터넷에도 어둠이 짙다.

다음 컬럼은 연계된 내용으로 기반시설에 대한 (SCADA) 문제를 다룬다.

Posted by 바다란

 

2008.11.7  p4ssion.

 

 

한국은 바로미터다.

중국발 해킹의 전초 단계로서 향후의 전 세계로 확대되는 공격 양상을 짚어 볼 수 있는 중요한 척도점이 되어 있다. 그 시작은 2002년 부터라 할 수 있다.

필자가 처음 중국발 해킹에 대해 분석을 한 것이 ( http://blog.naver.com/p4ssion/50001879160 ) 2002년 8월 문서이니 그 이후로 여러 단계의 변천사를 볼 수 있다.

 

주관적인 경험하에 중국발 해킹을 분석해 보면 다음과 같은 단계로 요약이 가능하다.

 

1기: 2002~2005년초

 

특징: System에 대한 직접 공격 , 일부 운영체제에 대한 취약성 공격 및 주변 네트워크 공격을 위한 대량의 패키지를 동반하는 유형으로 진행 , 대부분 시스템의 권한 획득을 목적으로 이루어 짐 . 일부 DB의 정보를 빼내어 가기 위한 시도가 존재 하였음.  따라서 한국내의 정보유출 및 위기의 시작은 이 시기 부터라고 보는 것이 합당함.  

 

 

2기: 2005년 4월 ~ 2007년 중반

 

특징: SQL Injection 자동화 툴의 출현 시기와 동일하며 국내의 대부분의 웹사이트 (추정키로는 전체의 60% 이상)가 공격대상에 포함 되었음. 이 부분은 보안산업에서 조차도 예상치 못하여 대응에 시일이 다소 소요된 부분임. URL의 취약한 인자를 공격함으로써 DB의 권한을 획득하고 정보를 빼내어 가는 것이 일반화 된 공격으로 이루어 지며 지역적 혹은 소규모로 발생하던 해킹이 대규모로 변질 되는 기회가 되었음.

[참고  풀어쓴 Sql injection 공격  http://blog.naver.com/p4ssion/40017941957 ,

                                                 http://blog.naver.com/p4ssion/40018174273 

          Threat of china v2  . http://blog.naver.com/p4ssion/50009117423  - 첨부파일 참고 ]

 

대량의 개인정보 유출 시기로 확정하며 이 시기에 유출된 개인정보 범위는 상상을 초월할 정도로 예상됨. 

또한 웹을 통한 악성코드 유포의 시발점으로 볼 수 있으며 바이러스와 웜을 통한 악성코드 전파를 벗어나 웹을 통한 악성코드의 전파라는 새로운 공격 전략이 탄생된 시점으로 불 수 있음.

서비스에 대한 보호의 관점에서 일반 사용자를 위한 보호관점으로 포커싱을 급격하게 이동해야 하는 시점이나 일부 국내기업들을 제외하고는 변화에 대한 대응이 늦었으며 공격자들은 유유히 유린을 한 상태로 판단이 됨.

 

이후 웹보안 관련 장비들과 진단 스캐너들의 출현으로 문제는 표면적으로 드러나지는 않으나 우회적인 통로를 통한 SQL 공격으로 여전히 중요정보에 대한 유출 및 악성코드의 웹을 통한 유포는 계속 되었슴.

통계치로 잡기가 어려울 정도로 피해가 많았던 시기라고 볼 수 있음.  이 시기에 유출된 개인정보들로 인해 사회적인 혼란상은 현재에도 지속되고 있음. Voice Phishing의 정확도가 높아져서 피해도가 높아진 이유도 이 시기에 유출된 상세한 개인정보로 인한 것으로 예상.

 

 

3기 2007년 말 ~ 현재 (세부기법으로 별도 분류)

    

2007년말 ~ 2008년 8월

 

 Massl SQL Injection의 본격화 및 웹 보안장비의 본격적인 대응 시기. Get, Post 와 같은 HTTP Action에서 사용되는 특정 인자에 위험요소를 차단하는 방식으로 일차적인 대응들이 진행됨. 웹 보안장비의 대중적인 도입이 이루어짐. 그러나 기본적인 한계로 인해 문제가 발생됨은 이후에도 여러 차례 지적이 됨. 패턴매칭의 한계 및 모든 웹 프로그래밍이 획일화 될 수는 없으므로 각 사이트마다 커스터마이징 이슈가 대두됨. 즉 수익성이 그리 높지 않았을 것으로 예상이 됨. 이후 공격 패턴의 변화에 따라 상당히 많은 노력이 지속적으로 필요한 상황이라 할 수 있음.

 

국내의 상당수의 사이트에서 악성코드들은 지속적으로 유포되고 국내의 인터넷 환경은 오염도가 높아졌을 것으로 예상되나 신뢰도 있는 통계 추출의 도구가 존재하지 않음으로 인해 통계 작성이 불가능함. 평균적으로 일일 4~5만여개의 웹서비스에서 악성 코드가 유포되고 있는 것으로 추정이 됨. 근거는 Mass sql injection 분석 시에 작성한 자료를 참고 하며 5만에서 6만여대의 웹서비스에서 수시 악성코드 유포 되는 것을 확인 함.

 

이 시기에 다수의 주요 IT 서비스 기업들에서는 웹 보안 장비 및 문제점을 제거 할 수 있는 프로세스 (보안성 검수)를 도입 함으로써 피해의 최소화 및 방어가 가능한 상태로 돌입한 것으로 관측됨.

 

     2008년 8월~ 현재 

 

우회 패턴의 등장으로 위험요소가 증폭됨 Get / Post외에도 Cookie에 URL 인자를 넣어서 공격하는 우회 패턴 등장으로 일대 혼란 발생. 이 혼란은 웹보안장비에만 의존하여 근본적인 소스코드의 수정에는 등안시한 결과로서 문제는 계속 될 것임. 더불어 URL 인자에 다양한 우회패턴 (% 인자와 같은 )를 입력하여 패턴매칭에 의한 차단이라는 웹보안장비의 기본 룰을 가볍게 우회함으로써 혼란은 계속 되고 있음. 이 상황은 예견된 바 있음.

11.5일에 제보를 받은 SQL Injection 공격도구의 판매를 위한 자료화면에도 다양한 DB ( Mssql , mysql , access , oracle )와 공격기법이 명기되어 상용으로 판매가 되고 있는 상황임.

 

 < Mass sql injection attack tool - 다양한 DB 및 Cookie 및 Head verb에 대한 공격 기법이 별개로 존재하고 있다. >

 

각 시기별로 한국에 집중된 공격에 대해서는 위와 같이 정리가 가능하며 세계적인 확산의 시기는 시기적으로 늦게 나타나고 있다. 국내를 벗어나 이제 IT로 연결된 세계적인 관점에서의 공격동향은 다음과 같다.

 

세계적으로 SQL injection Attack의 최초 인지는 2008년 초쯤으로 예상되며 대규모로 인지가 된 시기는 2008년 4월의 Mass sql injection 관련 이슈이다. 

[ 상상하기 어려운 위협.       http://blog.naver.com/p4ssion/50031034464 ,

                                          http://blog.naver.com/p4ssion/50031227899    

  Mass sql injection에 대한 분석 참고  http://blog.naver.com/p4ssion/50035056195 ]

 

 

이후에는 4월 이후에 발견된 Mass sql injection issue가  세계적으로  지속되고 있는 상황이라 할 수 있다. 전 세계 인터넷 환경의 오염도는 따로 측정하기는 어렵지만 Google에서 협조를 하고 있는 사이트 (http://www.stopbadware.org/ 11.7일 현재)에 따르면 악성코드를 유포하고 있는 사이트는 현재 166000 여개 가량의 사이트에서 악성코드가 유포 되고 있는 것으로 나와 있다.  물론 실제는 이것보다 더욱 많다. 통계치로 잡히는 것은 백신이나 AV 사이트의 협조아래 탐지 되는 유형에 대한 것들만 나열 된 것으로서 실제로는 변형과 탐지가 안되는 항목이 더 많다고 보았을때 얼마나 많은 비율이 존재 할지는 상상하기 어렵다.

 

인터넷은 오염되어가고 있다. 금전거래와 일상생활 영위의 도구로서 사용이 되고 있는 현재의 인터넷은 사용자들에게 심각한 위협을 동시에 안겨주는 생활로 다가오는 실정이다.

 

대부분의 악성코드 유포 환경들이 SQL Injection에 의한 웹사이트 변조 (악성코드를 유포하는 코드 추가 형태) 그리고 게시물 등에 XSS 취약성을 이용해 악성코드 유포 사이트로 Redirection이 가능한 문제들이 다수라고 할 수 있다. 실제 전체의 90% 이상이 이 경우에 해당 될 것으로 예상된다.

 

 

 

결론

 

이상과 같이 간략하게 2002년 부터 시작된 중국으로 부터의 공격 동향에 대해서 살펴 보았다. 문제의 근본은 현재 Web application의 취약한 인자에 대한 필터링으로 귀결이 된다. 이 문제를 해결하지 않는 이상 모든 대책은 사후약방문이다. 이 문제만 완전하게 처리 된다 하여도 현재와 같은 혼란상은 발생 하지 않을 것이며 피해는 상당히 제한적일 것이다. 기업내의 정보유출뿐 아니라 개인 사용자에게도 심각한 피해를 입히는 현재의 공격유형을 그대로 둘 경우 인터넷 환경의 위험도는 심각한 양상을 넘어 서게 될 것이다.

 

악성코드를 유포하는 사이트를 찾아내는 것도 현재의 상황을 타개 하는 임시방편이며 악성코드를 탐지하여 제거하는 AV도 근원적인 해결책이 되지 못한다. 최근에 발견된 MS08-067과 같은 Zeroday exploit의 경우를 보더라도 손쉽게 인지를 할 수 있다.

 

중국발 해킹은 전 세계적인 불황시기에 더욱 확산이 될 것이고 중국내의 Black Market은 중국의 불황을 틈타 급격하게 확산되어 전 세계를 위협하게 될 것이다. ( 6년전에 한 예측이 이렇게 빨리 현실화 될 것이라고는 필자도 생각지 못한 부분이긴 하다. 그 만큼 공격 기술의 발전과 웹서비스의 세계화가 빠르게 진행 된 탓이라 할 수 있다. )

 

문제의 해결책은 이미 본 블로그의 여러 Article에서 제안한 바 있다. 개별 사이트에 대한 대응책들은 안전한 웹 코딩 가이드(KISA)를 이용하여 소스코드를 변경 하거나 웹보안장비를 도입하였다면 해당 장비의 상태를 최신 수준으로 상시 유지하는 것, 웹 취약성 진단 스캐너 ( Sourceforge.net 에서 검색 하여도 다양한 sql injection 진단 도구들이 존재한다.)를 활용하여 문제를 수시로 찾고 제거 하는 것이 최선의 대응이라 할 수 있다.

[ http://www.krcert.or.kr/secureNoticeView.do?num=287&seq=-1  이곳의 대응책을 참고.]

 

전 세계적인 움직임 혹은 범세계적인 서비스를 통해 웹 서비스의 코딩 수준을 높이지 않는 이상 현재의 중국발 해킹은 점점 더 심각한 양상으로 발전 할 것이다.

 

보안장비의 도입도 취약성 스캐너의 도입과 점검도 다 중요하다 그러나 가장 중요한 것은 웹개발자의 개발 코드가 안전한지 확인이 가능한 요소가 가장 중요하다 할 수 있다. Secure coding은 SDLC 방법론으로 따지자면 웹개발에는 맞지 않다. 개발의 속도가 너무 빠르기 때문이다. 개발 시기 보다 더 많은 시간이 투자 된다는 점에 있어서 방법론과 적용 기술의 변화가 필요하다. 

 

개발자가 매번 코딩 시에 반복된 오류를 하지 않도록 확인하고 문제를 제거하여 궁극적으로는 전 세계 웹 개발자들이 Secure coding이 생활화 될때 이 문제는 해결이 된다. 그러자면 개발자들의 접근이 용이하고 비용이 저렴하며 정확도를 확보한 url 인자 값의 유효성을 체크하는 도구의 개발과 서비스의 확산이 문제 해결의 첫 걸음이 될 것이다.

 

아직 갈 길은 멀었고 피해는 점차 심각한 양상으로 변질 될 것이다.

 

아무도 이야기 하지 않는 예상과 예측. p4ssionable security explorer . 바다란. 

 

Posted by 바다란

. p4ssion입니다.

 

지난 글에서 ( 한참 됐습니다. ^^) Mass sql injection 관련된 내용에 대해서 언급을 드린 적이 있습니다.

그 이후 업데이트를 할려고 생각 하다가 개인적인 사정으로 작성하지 못했습니다.

오늘 생각나서 잠시 써봅니다.

 

http://www.itjungle.com/two/two082708-story05.html 

http://www.technewsworld.com/story/Mass-SQL-Attack-a-Wake-Up-Call-for-Developers-62783.html?welcome=1209498513&welcome=1210717878 

http://www.theregister.co.uk/2008/05/21/china_sql_injection_attack/ 

http://blogs.zdnet.com/security/?p=1150

http://searchsecurity.techtarget.com/news/article/0,289142,sid14_gci1314697,00.html 

http://ddanchev.blogspot.com/2008/05/malware-attack-exploiting-flash-zero.html 

http://searchsecurity.techtarget.com/tip/0,289483,sid14_gci1317069,00.html

 

Mass sql injection에 관련된 기사들을 이 블로그에 글을 쓰지 않은 이후로 모아 봤습니다.

 

2005년 부터 활발하게 이루어진 SQL Injection 공격에 대해 이제서야 세계적으로 인지를 하고 부분 대응이 진행 되고 있습니다. 공격의 현황은 어떤 식으로 이루어 지고 있으며 또한 대응은 어떤 방식으로 이루어 지고 있는지 주마간산 식으로 살펴 보겠습니다.

 

* 이전에 알려진 SQL Injection 공격과는 조금 다른 범주라고 봐야죠. Login 창에 손으로 입력하여 인증을 우회하는 방식은 오래전에 알려졌으며 또 이후의 각 URL 인자마다 문제가 발생하는 부분에 대해서도 알려져 왔습니다. 현재의 SQL Injection이 다른 관점은 Automated SQL Injection 이라는 것입니다.

 

손으로 직접 수십~수백개의 조합을 통해 DB의 정보를 빼내가는 것이 아니라 특정 DB에 맞추어서 특정 쿼리들을 미리 준비해 놓은 이후 클릭 한번으로 진행을 합니다. 현재의 Mass sql은 여기에서 한 걸음 더 나아가 단일 사이트에 대해 이루어 지는 것이 아니라 수십개 이상의 사이트에 대해 일시적으로 발생 할 수 있도록 범위가 확산된 것입니다.

 

입력창에 대한 SQL Injection ( ' Or 1=1-- )  ->

수동에 의한 URL 인자의 SQL Injection (시간 오래 소요) ->

자동화된 툴의 쿼리에 의한 정보 유출 및 페이지 변조 (악성코드 유포 목적) ->

대규모 스캔 및 공격이 가능한 Automated Mass attack 기법 및 도구의 출현 ( 이것도 현재는 ASP+MSSQL만 공격 하지만 향후 타 언어 및 다른 종류의 DB로 확대 예상)

 

위와 같이 순서의 정리가 가능합니다.

대상규모가 한정적일 경우에는 장비의 도입 및 소스코드에 대한 컨설팅으로 문제의 해결이 가능하였으나 이제는 그 범주를 벗어나 악성코드가 범람하는 세상에 살게 될 수 밖에 없는 상황입니다. ( 전 세계의 웹 서비스의 문제를 한번에 없앨 수는 없으므로 )

 

악성코드에 대한 감염은 브라우저 ( 구글의 크롬, FireFox , IE ..)에 구애받지 않습니다.  악성코드가 사용자 PC에 특정 프로그램을 설치하기 위해 필요한 공격 코드들은 매우 다양하며 운영체제의 한계를 벗어나 여러 Application에 대한 권한 획득 코드들을 이용하는 것이 일반적입니다.  즉 브라우저와는 관계 없이 이 문제는 계속 되며 전 세계의 일반 PC 및 웹서비스가 영향권 내에 들어와 있다고 보는 것이 정답입니다.

 

< 어쩌면 지금의 상황은 Matrix 구조 같은 거대한 위협속에 놓은 것과 같지 않나 생각 됩니다.>

 

묻습니다.

 

1. 사용자 PC에 설치된 모든 Application의 취약성을 수시로 확인하고 문제가 있는지 여부를 확인 하는 것이 가능합니까?

2. 수시로 업데이트되고 갱신되는 ( 악성코드의 유형은 대부분 다운로드 형태를 지니고 있습니다. 즉 한 사이트나 몇 개의 악성코드 다운로드 사이트의 샘플만 변경해 주면 새로이 다운로드가 되는 클라이언트는 신종 악성코드에 감염이 됩니다. )  유형의 악성코드에 대한 대응이 가능합니까?

3. 방문하는 사이트가 안전한 웹사이트임을 확인 할 수 있습니까?

 

 

간단하게 위의 세 가지 질문입니다.

위의 답변은 1번은 불가능 , 2번도 수동적인 대응외에는 불가능 , 3번도 직관적인 신뢰가 없다가 정답이 아닐까 생각됩니다.

 

1번의 경우 운영체제를 벗어나 사용자가 사용하는 모든 Application 문제가 없다는 것은 보증하기가 매우 어렵습니다. 사실 불가능한 이야기 이구요. 이 문제는 웹 서비스를 통해 유포되는 악성코드의 전염을 막을 방도가 매우 부족함을 의미합니다.

 

2번의 경우에는 전 세계의 많은 AV 벤더들에서 대응을 하고 있지만 사실상 공격자의 행동에 대해 대응력은 부족하며 산발적인 대응만을 하고 있어서 노력대비 효과는 미미한 수준이라 할 수 있습니다. 발견을 못한 AV 벤더는 업데이트가 없이 그냥 가죠. 그리고 발견하여 대응을 한다고 하여도 이미 공격자는 또 다른 내용으로 손쉽게 변경하는 것이 가능합니다. 전 세계에 널리 자사의 AV 제품이 사용되고 있다면 최소 시차를 고려 하여도 1일 이상의 시간이 소요 되는 것이 현실 적입니다.

그러나 공격자는 단 몇 분이면 새로운 악성코드의 유포가 가능하며 사용자에게 전파가 가능한 유형이 됩니다. 따라서 뚜렷한 대응방안이라고 보기가 곤란한 상태라 할 수 있습니다.

 

3번은 더 말씀 드리지 않겠습니다.

 

이미 대책 부분과 필요한 부분에 대해서는 이전의 몇몇 Article에서 충분히 언급한 상황입니다.

[ 상상하기 어려운 위협 -1 http://blog.naver.com/p4ssion/50031034464 , 2 - http://blog.naver.com/p4ssion/50031227899  ]

[ IT 서비스의 현재 위험과 대응 - http://blog.naver.com/p4ssion/50024269739 ]

 

전 세계적인 대응 현황을 간략하게 살펴 본 주관적인 의지로 정의하면 빈익빈 부익부, 근본에 도달하지 못한 미봉책..

이 정도로 정의를 할 수 있습니다.

 

며칠전 MS에서는 웹 서비스에 대한 SQL Injection을 막기 위해 IIS의 Plugin 형식인 URLscan Filter 3.0를 배포 하고 있습니다.

[ http://www.microsoft.com/downloads/details.aspx?FamilyID=ee41818f-3363-4e24-9940-321603531989&displaylang=en ]

현재 타켓화 되고 있는 ASP+MSSQL+IIS 조합에 활용이 가능한 유형입니다.

 

물론 실제 적용 시에는 개발된 서비스의 소스에 따라 설정의 변경등이 필요한 상황이 되겠습니다.

 

또한 HP의 WebInspect and QAInspect라는 제품과 IBM의 Appscan , WVS의 Acunetix 라는 웹 취약성 스캐너들이 현재  전세계 시장의 다수를 차지하고 있습니다. 이 제품들의 특징은 스캔 할 수 있는 도메인이 한정 되어 있다는 점, 과도한 취약성 점검을 위해 컨텐츠를 다운로드 (?) 받아서 재현을 하다보니 대용량 사이트에 대해서는 진단의 한계를 보이는 점들이 있습니다.

가장 중요한 점은 가격이 후덜덜입니다.

 

왠만한 IT기업에서 제품군을 도입하려면 많은 전문인력 및 도구 구입에 상당한 비용을 들여야 할 것으로 보입니다.

 

자 위의 두 가지와 같은 대응 흐름이 있습니다. 솔루션을 이용한 근본 취약 부분을 찾아서 소스코드의 문제를 수정하는 방향과 현재 발생되는 공격이 유효하지 않도록 무력화 시키는 Filter 부분이 있는데 두 가지 모두 한계를 지니고 있습니다. Filter의 경우에는 우회가 가능한 패턴 유형이 발견 될 수 있다는 점과 기존의 정상 서비스 트래픽에 대한 제한을 지닐 수 있다는 점입니다.

 

또한 솔루션을 이용한 취약 부분 진단에 대해서는 고비용, 대형 사이트 진단 불가 , 도메인 스캔의 제한 , 속도의 문제로 인해 사용이 어려운 측면이 발생 합니다.

 

( Web Firewall 등에 대해서는 별도 언급 하지 않겠습니다. 도입시 마다 설정 변경이나 Customizing 없이 사용 가능한 제품이 없지 않나요? 어쩌면 소스코드 수정이 휠씬 빠를 수도 있는 Customizing이며 공격 패턴이 변경 되면 처음 부터 다시 설정 해야만 합니다. - 근본 문제 제거와는 관련 없는 부분이며 임시방책일 뿐이라 논의 하는 것은 부적절하다는 개인 판단입니다. )

 

 

빈익빈 부익부.

 

가난한 기업들과 여력이 없는 기업들을 위한 해결 방안은 어디에도 없습니다. 그나마 전문성을 지닌 인력이라도 있다면 이런 문제를 해결해 보겠으나 인력도 없으니 설상가상인 상태가 되겠죠. 앞으로도 오랜 기간 동안 대상이 될 것으로 예상 됩니다.

 

개인적인 예상으로는 향후 2~3년간은 이러한 대규모 악성코드의 유포에 의해 매우 시끄러울 것이고 특별한 해결책도 찾기 어려운 상황이 계속 될 것입니다. 그 이후에는 또 다른 부분으로 전이가 되겠지만...

 

부유한 기업들은 많은 비용을 투입하여 장비를 도입하고 소스코드에 대한 진단과 컨설팅등을 받습니다. 그러나 빈자들의 서비스를 통해 유포되는 악성코드들은 주로 부유한 서비스 기업을 노리고 있습니다. 이 점에 대해서는 간과를 하는 면이 많은 편입니다.

 

문제의 해결을 하기 위해서는 세계의 인터넷 환경을 일시에 ( 상당히 빠른 시간) 클린한 상태로 올려 줄 수 있는 부분이 필요하며 자신만의 서비스를 벗어나 전체적인 시각을 가지고 움직일때 자신의 서비스에게로 오는 위험을 줄 일 수 있습니다.

 

말그대로 네트웍 환경은 위협도 연결이 되어 있기 때문이죠.

 

빈자들을 위한 보안도구들은 언제쯤 출현 할까요? 상용도구의 정확성 만큼을 보유한 저렴하고 접근성이 뛰어난 도구의 출현이 현재의 상황을 좀 더 빠른 시기에 진화 할 수 있을 유일한 방안이라 생각 합니다.

 

전술과 전략이 있습니다. 개개의 싸움을 하는 전략은 현재대로 진행 하고 상호협력을 강화할 방안을 찾아야 하며 ( AV의 대응 , Scanner , Web Firewall, Vendor의 대응) 더불어 가장 중요한 전술적인 차원의 큰 방향성이 필요 합니다.

 

큰 방향성 차원에서 공격의 범주를 최대 확산이 불 가능 하도록 일정 수준 이하로 묶음으로써 피해의 광역화를 막는 것이 가장 큰 이슈가 될 것이고 가장 필요한 관점이 아닐까 생각 합니다. 전술적으로 확산 범주를 좁히기 위해서는 가장 필요한 것이 문제점을 찾을 수 있는 접근성 뛰어난 저렴한 비용의 도구의 확산이나 서비스화가 우선 되어야 할 것이구요.

 

전술과 전략은 구분되어야 하며 현재의 전략도 부족한 면들이 있으며 커버 가능한 범위를 더욱 넓힐 수 있는 도구와 서비스의 출현들이 심각하게 필요하며 전술적인 관점에서는 거대한 악성코드 유포 네트웍을 소규모 단위로 분산 시킬 수 있는 정책적인 방향성이 필요합니다. 수많은 이해가 상충되는 야생의 시대에 이런 협력이 필요한 전술과 전략은 구사되기 어려운 점들이 많을 것입니다.

 

따라서 앞으로도 위기는 계속 지속 될 것입니다. 모든 프로그래머가 Secure한 코딩이 일상화 되기 전까지는 상당히 오랜 시간 위기는 지속 될 것이고 이제 세계적인 시작은 큰 흐름이 벌써 시작된 상황이라 예측 됩니다.

 

- p4ssion. 2008.9

 

*오랜만에 썼더니 엉망이네요. 생각을 정리하는 것도 잘 안되니 조금씩 더 자주 쓰다보면 나아지리라 생각 합니다.

 

 

 

Posted by 바다란

manian쪽에 올린 글인데 예를 들어서 설명 하였으므로 참고할 부분이 있을 것입니다.

도움 되시길.

---------------------------

안녕하세요. 바다란입니다.

다른 사이트들이 기능상의 코딩을 못해서 생기는 문제가 아닙니다.
기능상으로는 최적화 되어 있죠. 작은 부분 하나를 신경 쓰지 못해서 생기는 문제입니다.
동일하게 manian 이 사이트도 똑같이 당합니다.

간단하게 말씀 드려 DB에 직접 인자를 전달하는 웹 코딩에 있어서 이 인자값에 대해 검사를 하지 않으면 DB에 직접 명령을 내릴 수 있습니다.

다들 밑에 게시물 보면 바이러스 제품에 걸리고 안 걸리고 이걸 가지고 언급을 많이 하시는데 이건 차후적인 문제입니다. 어떻게 해서 그 웹 소스에 바이러스 코드가 들어 갈 수 있는지가 가장 중요한 관점이 되어야 하지 않을까요?.

문제는 여기에서 부터 시작합니다.

예를 들어 이 글을 입력하는 URL을 보면 다음과 같습니다.
http://manian.dreamwiz.com/board/write.asp?bid=A010101&page=1&cate=6

Write.asp 라는 웹 소스내에 인자는 bid , page , cate 라는 세개의 인자를 가지고 있습니다.
물론 내부에 더 있을 수 있죠. 이 각각 인자를 가지고 DB에 해당하는 인자를 조합한 값에 일치 되는 결과를 돌려주고 그 결과가 화면상에 나타납니다. 그렇다면 bid 는 문자와 숫자가 조합이 되어 있고 page 와 cate 인자는 숫자가 입력 되도록 되어 있습니다.

만약 위의 인자에 다른 값들이 들어가면 어떻게 될까요? DB에서 인자의 구분은 ' 와 같은 인용부호를 통해 이루어 집니다. Bid=A010101 이라는 값에서 DB로 쿼리하기 전에 코딩상에서 'A010101' 이라는 값을 넣어서 select 쿼리가 들어가게 되겠죠. 이 값의 뒤에 ' 문자를 더 입력하면 어떻게 될까요?. 'A010101'' 입력이 되겠죠. 그러면 DB에서는 ' 인용부호가 닫혀지지 않았다는 에러가 발생하게 됩니다. 여기에서 부터 SQL Injection 공격이 이루어 지는 거죠. ' 문자를 입력하거나 And 문자를 입력하였을때 DB에 저장된 결과를 수십번의 반복 쿼리를 통해 결과값을 얻어 낼 수가 있습니다. 여기에 관련된 공격은 웹에서 SQL Injection 관련 문서를 찾으면 다수 나올 껍니다.

page와 cate에는 숫자만 들어 가야 하는데 이건 프로그래머의 가정이죠. 입력하는 사람이 숫자가 아닌 문자를 입력한다면 어떻게 될까요?. 스크립트 상에서 숫자만 있는지를 검색해야 하는데 안할 경우에는 DB로 바로 전달이 됩니다.
브라우저 상으로 볼때는 500 Internal Server error 가 발생되어 실행이 안되는 것으로 보이나 Raw Traffic상에는 DB에서 리턴되어 오는 결과가 저장 되어 있습니다.
Ethereal 등으로 트래픽을 보면 확인 할 수 있습니다.

위의 예에서 보듯이 지난 5월 부터 이루어진 국내사이트의 공격에서 가장 중요한 관점은 이겁니다. 인자에 대한 입력 체크 및 Validation 체크가 핵심입니다.
Type에 대한 체크 및 인자의 입력값에 대한 길이 체크 그리고 특수문자 입력에 대한 처리가 가장 중요한 부분입니다.

http://blog.naver.com/p4ssion/40015866029 게시물에 올려진 내용들도 참고 하시면 될 듯 싶네요.

paros 나 web application scanner 등을 이용하여 인자 단위의 유효성 체크와 SQL Injection 취약성 가능성을 체크 하는 것이 가장 중요합니다. 진단 툴의 경우도 만들어서 쓰고 있는 툴의 예를 들면 ScreammingCSS 라는 CSS 진단하는 펄 스크립이 있습니다. 이걸 변경하고 SQL Injection 이나 인자 단위의 입력값 검증을 하는 루틴을 첨가하면 손쉽게 만들 수 있습니다.

입장이 곤란해서 오픈을 못하는 것이 안타까울 따름입니다.

그럼 ...

------------

답변중에서:

 

로긴 창에 SQL Injection을 시도하는건 작년 까지의 버전입니다.
중국쪽에서 인자 각각에 대해 DB가 에러메시지를 보내는 것을 받아서 Blind SQL Injection 기법으로 DB user 및 계정 정보를 획득 합니다.
위에 설명을 잘 보시면 Form이나 로그인 창에 입력하는게 아닙니다.

길이제한이 없을 경우 이 글의 링크인 http://manian.dreamwiz.com/board/view.asp?bid=A060201&no=116895 에다 no가 숫자만이 아닌 문자도 받는다고 했을때 http://manian.dreamwiz.com/board/view.asp?bid=A060201&no=116895' and db_name() .. 등등 이렇게 쿼리를 하면 어떻게 결과가 나올까요?..
아마도 500 Internal Server error가 뜹니다. 그러나 위의 게시물대로 Raw Traffic을 보면 MSSQL의 경우  결과가 전송되는 것을 확인 할 수 있습니다. 즉 브라우저에 보여지는 것과 웹로그에는 500 Error라고 나타나도 DB와 조회는 가능하다는 거죠.

이 관계를 모르기 때문에 문제가 계속 되는겁니다.
분명히 인자에 대한 길이 제한 및 인자 값에 들어가 있는 특수 문자 제어등과 같은 Input validation check가 안되면 계속 됩니다. 예전과 같은 SQL Injection 로그인 기법을 생각하시면 안됩니다.

웹 프로그래머 이시면 이글의 링크를 예를 들어 bid 와 no 에 값으로 받는 것에 대해 숫자인지 아니면 특수문자가 들어가 있는지 일정 길이 이상이 넘는지를 체크하여 DB에 전송 해야 합니다. 이런 체크가 선행 되지 않으면 DB는 거져 먹는게 되죠.

그럼.

 

Posted by 바다란

오랜만입니다.

 

여러 개인 사정으로 인해 글을 쓸 여유가 없었습니다.

앞으로도 상황은 마찬가지 일 것 같습니다.

 

SQL Injection . 지금에 와서 이 공격의 유형을 모르는 한국이나 전 세계의 웹 개발자 혹은 보안 전문가는 없으리라 봅니다. 3~4년 전만 하여도 일선의 재빠른 사람들에게만 인지 되는 사안들이 이제는 글로벌화된 상황이라 할 수 있습니다.

 

이전에 존재 하였던 SQL Injection 유형과 현재 발생하는 유형의 차이점은 이 블로그의 Mass sql injection 관련 글을 찾아 보시면 좀 더 쉽게 이해가 되시리라 봅니다.

 

현재는 상황 그대로 세계적인 불황입니다. 얼마전 글에서 예측 하였듯이 앞으로 노골적인 공격들이 더욱 거세 질 것 이고 보다 전문화된 공격들도 직접 이용이 될 것입니다. 최근 MS에서 긴급패치가 이루어진 MS08-067의 경우에도 PoC( Proof of concept - 공격 개념코드)가 나오기 이전에 계정정보 유출을 위한 실제 Trojan이 배포 된 이후에 MS 측에서 대응을 한 내용입니다.

 

앞으로 이와 같은 상황은 더욱 거세질 것입니다.  공격의 전문성도 높아지고 유포되는 범주도 지속 되고 있습니다. 지금도 하루에 수 십차례 이상 공격을 받는 곳들이 대다수 일 것이고 문제가 심각한 기업들은 웹보안 장비들의 도입에 열을 올리고 있을 것입니다. 이런 웹 보안장비들의 근본적인 한계에 대해서는 본 블로그에서 여러 차례 지적한 바가 있습니다.

 

 

 

공격의 전문성 강화

 

공격의 전문성이 높아지는 것은 비단 이번의 MS08-067의 예를 들지 않더라도 2년 전 부터 나타난 현상입니다. 하나의 Trojan을 설치하기 위해 수 십가지 이상의 여러 Application에 대한 공격코드들이 최적화 되어 있고 주변으로 전파를 하고 있습니다. 심지어는 ARP spoofing까지도 이루어 지죠. ( SQL Injection 이든 Arp spoofing의 경우에도 기존의 공격 개념과는 다른 관점으로 상당히 발전적인 응용이라 할 수 있습니다. )  공격자들은 그만큼 기존의 공격 기법과 새로운 취약성의 접합과 연구에 적극적입니다.

 

그리고 그들은 이제 전문 영역을 지니게 되었습니다. 이 의미는 하나의 산업으로 존재할 만큼의 기술적인 (?) 공격 역량과 숙련도를 보유하고 있다는 것이라 할 수 있습니다. 이런 기술을 이용하여 이득을 취하기 위한 또 다른 산업 영역도 개척을 한 상태입니다. 즉 소비채널과 유통채널의 구축이 완료된 상태라 할 수 있습니다.  앞으로 더욱 심해 질 것입니다.

 

새로운 Exploit의 최초 발견과 적용이 연구자들 사이에서 나오는 것이 아니라 이제는 공격자들에게서 직접 발생이 되고 있습니다. 이 추세는 향후에도 증가 할 것으로 예상 됩니다. 더불어 SQL Injection의 경우에도 여러 번 거듭 말씀 드렸지만 단순 패턴매칭으로 차단하는 보안장비에서는 해결이 되지 않습니다. 지금도 정말 많은 우회 기법들이 나오고 있고 바로 적용이 되고 있습니다. 공격자는 코드 한번만 바꾸면 되지만 방어자는 수 천, 수 만 아니 그 이상의 장비들에 대해 개별적인 설정이 되어야만 합니다. 

 

이 싸움에서 이길 것이라 보십니까?  저는 진다고 봅니다.

 

 

(Mass sql injection)양식장을 손에 쥔 상어떼

 

이 표현이 적당한 가 모르겠습니다만 제 머리속에 그려지는 이미지로는 이 표현외에는 더 적당한 표현을 할 수가 없습니다. 양식장은 전 세계의 웹 서비스가 해당이 됩니다.

상어떼는 아시다 시피 공격자들이구요. 양식장에 갇힌게 아니라 언제든 잡을 수 있는 그물을 상어떼가 가지고 있는 모양새 입니다.  이 그물을 어떻게 끊을 수 있을까요? 

 

개별 웹 서비스들에 대해서는 가능하겠지만 전 세계적인 범주에서 보면 정말 어려운 일일 것입니다.  전 세계 웹 서비스의 인자 각각에 유효성 체크가 되어야만 하는데 현실적으로 어렵습니다. 스캐너를 이용한 진단의 경우에도 여러 한계가 있음을 지적한 바 있습니다. 앞으로도 오랜 시간이 흘러야 범위가 줄어들 것이고 그 이전까지는 광범위한 Trojan의 유포와 악성코드에 의해 전 세계의 개인 PC가 시달릴 것입니다. 윗 절의 공격의 전문성 강화와 겹쳐져 공격의 전문성과 파급력은 지속이 될 것이고 PC에 설치되는 다양한 Application에 대해 공격이 이루어 질 것입니다.

 

현재의 공격은 서비스에 대한 공격인 DDos 공격과 금전을 목적으로 한 Trojan 유포에 중점이 맞추어져 있습니다. Trojan 유포는 웜과 바이러스를 통한 유포의 범주보다 웹서비스를 통한 광범위한 유포가 일반화 되어 있습니다. 지금의 공격자들의 특성은 자신을 과시하지 않습니다. 오로지 금전적인 정보가 목적일 뿐입니다.

 

전 세계 모든 보안 채널 및 보안 관련 회사들이 새로운 유형의 공격기법이나 취약성이 출현 할때 마다 예전보다 휠씬 더 긴밀하게 협력을 하고 있습니다. 그래도 모자람이 너무 많습니다.

 

 

이런 그물을 끊어야만 하며 끊기 위해서는 개발자를 위한 자가진단이 가능한 저가 웹서비스 혹은 Open source 형태의 서비스가 필요하고 점진적으로 개선을 시킬 수 밖에는 없는 상황입니다.

 

현재 큰 범주에서 문제를 해결 하기 위한 해결책은 한정적입니다. 지역적인 측면이나 기업 측면에서는 비용을 투입하여 해결이 가능하나 웹서비스의 개편시 마다 비용 부담과 끊임없는 지속성을 유지 해야 하는 것이 관건입니다.  Penetration Test ( 모의해킹이라 부르며 시스템에 피해를 입히지 않는 범위에서 공격자의 입장에서 서비스 취약성을 사전 진단하는 유형 )를 할 수 있는 인력들도 한정이 되어 있습니다. 전문기술을 보유하고 있음에도 불구하고 돌쇠타입의 마당쇠로 전방위로 혹사 당하는 것이 지금의 보안 인력 혹은 보안 팀들이라 할 수 있습니다. 언제까지 버틸 수 있을까요? 또 언제까지 혹사를 강요할 수 있을까요? 인력으로 버틸 수 있는 정도는 절대로 아니기에 어려움이 충분히 예상 됩니다. ( 아닌 곳들이 있나요? )

 

 

결론적으로 앞으로 오랜 시간 문제는 지속되고 심화 될 것이고 이 문제를 줄여나가기 위해서는 악성코드 유포의 숙주로 활용되고 있는 웹서비스들의 안정성을 시급하게 보완하고 지속성을 가질 수 있도록 하는 것이 키라고 할 수 있습니다. 이렇게 하여야만 문제를 끝낼 수 있습니다. ( 기술적인 해결책이나 여러 방안들은 http://blog.naver.com/p4ssion 의 여러 Article들을 참조 하시면 됩니다. )   개별 서비스에 대한 해결책의 논의가 아니라 큰 범주에서의 해결 방안은 어떤 성격을 지녀야만 문제 해결에 다가 설 수 있는지를 언급하였습니다.

 

1년 이상을 이런 관점에서 계속적인 의견을 제시하였으나 아직 이런 형태의 서비스나 문제해결 시도는 출현 하지 않았습니다. 그러나 머지 않은 시일 내에 유사한 서비스들이 출현하여 문제점들을 줄여가고 세계적인 방향성을 선도할 것으로 믿어 의심치 않습니다. 누구도 하지 않는다면  저라도..~~

 

 

그럼 .

 

p4ssionable security explorer . 바다란

Posted by 바다란

뭐 하루 이틀 된 이야기도 아닙니다.

이미 5~6년 전 부터 징후가 있었고 그 이후 타임워프 하듯이 대규모로 공격 인력이 늘고 기법도 고도화 되어 왔습니다.

 

이젠 대규모적인 대응 없이는 불가능하다고 볼 수 있습니다.

단편적인 대응과 사법기관 공조 만으로는 빙산의 일각도 제거하기 어렵습니다.

 

체계적이고 근원적인 부분에 대해서 장기적인 처방이 필요한데.. 여유와 인내심을 가지고 정책을 진행하고 방향성을 제시 할 수 있을런지가 가장 중요한 부분입니다. 대책 부분에 대해서는 하두 여러번 언급 했었지만 시행에는 상당 시일이 걸리고 시간이 지난 지금에서도 유효한 대응은 적어 보입니다.

 

앞으로 어떻게 될런지..

http://news.naver.com/main/read.nhn?mode=LSD&mid=sec&sid1=105&oid=029&aid=0001974017

 

종합적인 대책과 향후 진행 해야 될 부분들에 대해서는 2007년에 언급한 대책과 문제 상황 부분이 있습니다. 정말 힘들고 위급한 상황이 닥쳐 올 것이라고 예상을 하고 좀 길게 설명을 했었는데 이제라도 일부분에 대해서 적극적인 시행이 되어야만 할 것입니다. 그렇지 않다면 문제는 더욱 더 심각도를 높여서 일어날 것으로 보입니다.

 

보안적인 문제를 해결 하지 않았을때 발생 되는 피해와 비용은 상상하기 어려울 정도이며 지금도 마찬가지 입니다. 초기에 대규모 노력이 들어가는 것으로 보이지만 이것이 가장 적은 비용을 들이고 문제를 해결 하는 길입니다.

 

다시 한번 문제 해결을 위한 방안들이 다각도로 ( 문제의 근원을 제대로 인식하고 ) 진행이 되었으면 합니다.

 

http://blog.naver.com/p4ssion/50024269739  <- 첨부파일을 참고하세요.

 

2007년에 작성한 글이나 노력이 진행 되지 않는한 향후 3~4년 이상 유효한 글이 될 것입니다.

 

Posted by 바다란

http://news.naver.com/news/read.php?mode=LSS2D&office_id=008&article_id=0000718196&section_id=105&section_id2=283&menu_id=105

 

manian 사이트가 해킹을 당해 악성코드 유포지로 활용이 되었다. 해당 사이트를 닫은 이후 재점검 하고 다시 올렸지만 이제는 또 다른 사이트다.. dvdprime ...

 

아무리 말을 해도 들으려 하지 않는자에게는 소용이 없다.

 

공격 기법도.. 또 방어 대책도.. 모두 있음에 하지 않는 것은 아직 피해 및 여파를 모르기 때문일 것이다. 국내 온라인 게임에 대한 해킹이 증가하고 있고 그 원인의 대부분은 사용자 PC를 공격하는 악성코드 때문이라 할 수 있다.

 

1차적으로는 보안상의 취약성을 내포한채 서비스가 계속 되고 있는 사이트가 가장 큰 문제이며 두번째로는 개인 PC의 보안 상태가 취약하여 악성코드가 설치될 수 밖에 없는 개인 사용자의 문제라 할 수 있다.

 

앞으로도 계속될 해킹과 개인 PC에 대한 집요한 공격.. 또 이를 이용한 온라인 게임 계정의 도용 및 유출은 상관 관계를 계속 지닐 수 밖에 없고.. 국내 사이트에 존재하는 다수의 문제가 해결 되지 않는한 이 문제는 내년을 지나 그 이후에도 또 다른 유형으로 나타날 수 밖에 없다.

 

취약성을 이용한 집중 해킹.. 그리고 악성코드 유포 [ 요즘은 링크나 프레임을 찾기도 어렵다.. ] , 그리고 온라인 게임 접속시의 다수 계정 유출 [ 악성코드를 통한 유출이다.]

 

과연 누구의 책임이라 할 수 있을까?. 일단 피해는 게임을 사용하는 유저에게 돌아간다. 그리고 책임은 온라인 게임사에게로 화살이 돌아온다. 과연 이게 정당할까?

 

국내 유명 IT 서비스 기업들은 대부분 해킹을 통해 악성코드가 유포된 적이 있다. 이미 기사화 된 곳들만해도 상당 규모에 달한다.  악성코드를 유포하기 위해 소스를 변조한다는 것은 이미 웹 소스를 변조할 권한을 지니고 있다는 것이고 공격 유형의 특성상 DB에 대한 제어권한을 지닐 수 밖에 없게 된다. 이 말인 즉.. 대규모 사용자의 계정 정보 및 사용자 정보가 이미 대량 유출 된지 오래 되었음을 의미 할 수 있다.

 

현재 중국에서는 악성코드를 유포하여 사용자 계정을 획득하고 넘겨 줌으로 인해 돈을 받는 모델이 성행하고 있다 한다. 사용자 계정 갯수당 얼마 하는 식으로 진행이 된다.

이 고리가 끊기지 않는한 국내의 해킹은 계속 될 수 밖에 없다. 그렇다고 끊을 수 있는 방안도 없다. 그렇다면 무엇을 해야 하는가?

 

지루하고 대규모의 작업이지만 전체 사이트에 대한 보안 점검을 통해 문제점을 수정하고 보완하고 개발자에 대한 교육등이 이루어져야 한다. 또 사용자 PC에 대한 대대적인 안정성 강화 플랜을 세워야만 한다.

 

경찰이 열이여도 도둑 하나를 잡기는 어렵다고 한다. 마찬가지이다. 공격자는 무작위로 대상을 추출하고 막는자는 전체를 다 틀어 막아야만 한다. 과연 이 싸움에서 얼마나 오래 갈 수 있을까?.

 

기나긴 작업이다. 그러나 하지 않으면 안되는 작업이다.

 

-

 

Posted by 바다란

12.25 1998   -p4ssion@gmail.com zdnet

 

 

2009년의 연말에 뜬금없이 10년도 더 지난 날짜의 크리스마스를 언급한다. 1998 12.25일에는 RFP (Rain Forest Puppy)에 의해 최초로 DB 웹애플리케이션간의 SQL Injection 대한 발표가 이루어 졌다. 해당 발표는 프랙이라는 해커들의 온라인 잡지를 통해 이루어 졌다. 현재의 인터넷 서비스를 곤경에 처하게 하는 SQL Injection 문제는 벌써 11년이나 된 문제인 것이다. 오래된 이 문제는 지금 어떤 모습이고 어떤 영향을 미치고 있을까? 우리는 어디쯤에 있는가?

 

그 당시에는 누구도 지금과 같은 사태를 예견하지 못했었다. 불과 3~4년 전만해도 전문가들은 전문가들 나름대로 관심을 두지 않았고 비전문가들은 전혀 모르는 상태였었다. 단 하나의 권한을 획득하기 위해서는 수없이 많은 시행착오와 쿼리를 던져야만 일정 수준의 결과를 가져 오는 것에 대해 누구도 심각성을 인지하지는 못했다. 중요성이나 심각성이 최초로 드러난 것은 대량으로 자동화된 공격 도구가 출현한 이후이다.

 

단일 웹사이트에 대한 자동화된 공격도구의 출현과 대규모 웹사이트에 대한 Mass sql injection 공격 도구의 출현이 지금의 상황을 만들고 있다. 상황은 점점 어려워 지고 있다.

시기별로 SQL Injection공격의 변화와 흐름은 지난 해에 정리한 글을 참고 하면 된다.

 

최초 출현 이후의 변화는 지난해에 작성한 글을 참고하면 되고 현재의 상황은 어떤 상황인지 살펴 보도록 하자.

IBM X-Force에서 2009 상반기 위협 동향과 리스크에 대해 종합한 보고서가 있다. 해당 리포트에서 요약 부분만을 보면 다음과 같은 동향을 관찰하고 있다.

 

1 .2009년 상반기중 발표된 전체 취약성의 50% 이상이 웹 애플리케이션에 대한 취약성이며 상반기중 발표된 취약성중 절반 가량이 패치가 발표되지 않은 취약성이다.

 

2. 웹사이트의 취약성을 공격하는 비율이 급증하고 있다. 2009 1Q의 공격 비율의 두 배 가량이 2Q에는 관찰이 되었다.

 

3. 일반적으로 사용자들이 안전하다고 생각되는 문서유형에 악성코드를 결합시키는 것이 늘고 있으며 어도비의 PDF 취약성은 최초로 Top 5 취약성 항목에 선정 되었다. MS Office 취약성과 PDF를 이용한 취약성이 일반적으로 사용이 되고 있으며 웹서비스를 통한 악성코드유포, 이메일을 통한 전파가 2009년 상반기 급증 하였다.

 

4. 2009년 상반기 악성코드를 유포하는 URL 링크는 508%로 폭증 하였다.

 

5. 스팸메일은 상반기에 40% 증가 하였다.

 

간단한 요약상으로 보면 웹애플리케이션의 관점으로 본 취약성 및 동향 보고서로 보이지만 실제 상반기 동향을 전체적으로 살펴보고 내린 종합 보고서라는 점에 의미를 두어야 한다.

 

특징적인 점은 웹 애플리케이션에 대한 공격은 시간이 지날수록 줄어 드는 것이 아니라 시기, 사안, 목적에 따라 급증 할 소지를 매우 많이 가지고 있다는 점이다. 얼마 전 있었던 중국 내 공공기관 및 교육기관에 대한 대규모 악성코드 유포 행위는 그 동안 공격자로만 인식 되어 왔던 중국 조차도 심각한 국면임을 생각하게 한다. 총 18여만개의 gov.cn, edu.cn 기관의 웹사이트에서 악성코드가 유포 되는 사례가 발견이 되었다.

 

단 기간에 몇 십만 대의 PC가 아닌 웹서비스에 대한 공격이 성공적으로 이루어 지고 도구로서 활용이 되는 것이 일상적인 인터넷 상황이라는 점이 가장 우려할 만한 점이고 향후에는 더 심각한 국면으로 전환이 될 것이다.

 

내부망에 대한 침입을 하는 도구로서 웹 애플리케이션을 직접 공격하는 행위와 무차별적인 악성코드 유포를 위해 웹 애플리케이션을 공격하는 행위는 동시에 발생 될 것이며 전자는 기업이나 기관의 내부망에 침입하여 자료를 탈취 하거나 금전적인 이득을 얻는 것에 사용이 되고 있으며 후자는 개인 PC의 금전 거래 관련 정보와 온라인 정보를 절취함으로써 이득을 얻는 것이 일상적인 현실이다.

 

국가 기반시설이라고 할 수 있는 기반시설망(전력, 가스, 통신, 교통)에 대해서도 심각성이 높으며 향후 강도 높은 주의가 필요하다는 점은 외부와 연결된 접촉지점을 가질 수 밖에 없기 때문에 경고를 하는 것이다. 앞으로의 위험은 더 크고 치밀한 양상으로 치달을 것은 명확하다.

 

IBM X-Force에서 발표된 자료를 조금 더 살펴보자.

 

 

대량 공격의 일반화에 대해 IBM에서 모니터링이 가능한 사이트들에서 발견된 공격로그들만을 살펴 보면 현황을 알 수 있다. 일단위로 2008년에는 평균 10만에서 20만 정도의 SQL 공격로그들을 관찰 할 수 있었으나 2009 5월에는 최고 70만건의 일별 공격로그가 관찰 되는 것을 볼 수 있다.

 

 

웹 애플리케이션에 대한 공격로그에서 공격기법 별 분류를 한 자료이다. XSS 취약성과 Injection 공격이 사실상 대부분을 차지하고 있다고 볼 수 있다. 그러나 여기에 공격의 파급도를 판단하면 Injection 공격은 사실상 월등히 높은 가중치를 지닐 수 밖에 없다.

물론 위의 데이터 자체는 IBM에서 판매하고 있는 침입탐지 장비에서 탐지된 로그를 기반으로 하고 있을 것이다. 지난 글로벌 보안 위협에 대한 분석에서 언급 하였듯이 전체적인 동향과 흐름을 인지하는 방식으로 참고를 할 수 있을 뿐이다.

 

해외 언론에서 언급하는 ‘New’ 라는 용어에 너무 겁먹을 필요 없다. 공격 방식은 동일하다. 약간의 변형들이 있을 뿐이다. 해외언론에서 언급하는 New SQL Injection 이라는 용어 자체는 단지 새로운 악성코드를 유포하는 링크가 변경 되었다는 점 외에는 없다. 따라서 새로운 유형의 공격은 아니라는 점이다.

 

국내의 모회사에 대한 해킹과 해외의 보안 회사들의 웹 서비스에 대한 해킹을 통해 위험성을 알리는 Unu라는 친구의 공격이 지금 시점에 중요한 것은 아니다. 공명심에 그러한 행동을 하는 것은 뒤에 더 큰 문제를 보이지 않게 만든다. 공개된 공격도구를 이용하여 특정 목표에 대해 꾸준하게 문제점을 찾고 공격 시도를 하는 것은 일반적인 스크립트 키드에 지나지 않는다.

 

정말 중요한 사안은 분 단위로 권한을 획득 당하고 소스코드가 변조되는 웹서비스들이다. 또 웹서비스들을 숙주 삼아 .정체를 전부 파악 하기 어려운 악성코드들이 전 세계를 대상으로 무작위로 유포가 된다는 점이 더 치명적인 사안이다.  오래된 이야기 이지만 준비는 어디에도 없다. 너무 많은 곳들이 당하다 보니 일상적인 상황이 되어 버렸다. 그만큼 치명적인 위험들도 더 가까이에 와 있다.

 

 

필자가 보는 관점은 명확하다.

문제가 될 것임은 이미 예측 되어온 바다. 그러나 어디에도 장기적인 해결책이나 방안을 마련 하려는 곳들은 없다. 이미 한 기업이나 조직에서 해결 하기에는 범위가 너무 커져 버렸다. 시간이 지날수록 점점 더 커져 갈 수 밖에 없을 것이다. 문제의 해결을 위해서는 현실을 직시하고 장기적인 방안을 마련 해야만 한다.

 

사이버 상의 스팸과 광고, 정보거래를 통해 금전적인 이득을 얻던 검은 그룹들은 이제 공개적으로 침입을 하고 권한을 획득하고 내부에 침입하여 노골적인 이득을 취하고 있다. 이러한 행위는 Heartland 대한 침입 7 eleven 대한 침입, 지난해에 있었던 Citibank에 대한 침입들이 모두 해당이 된다. 최근에 있었던 독일 대학생들의 국내 IT기업의 내부 기밀을 해킹한 이후 협박을 웃지 못할 경우도 동일한 사례이다. 국내의 사례는 뭐라 평하기 어려울 정도로 당혹스럽다.

 

독일에서 한국으로 접속해 느린 속도에도 불구하고 750기가나 되는 양을 빼내어 갈 그 많은 시간 동안 무얼 했을까? 문제점들은 찾아서 해결을 했을까? 하는 여러 단상들이 있다.

 

언급한 여러 사건들 중 상당 부분의 침입들이 내부망에 침입하기 위한 통로로서 웹 애플리케이션 공격을 선택 하였고 실제 성공 하였다는 점이다. 앞으로 더 많은 사례들을 볼 수 있을 것이다. 더 치명적이고 더 위험한 사례들은 머지않아 출현 할 수 밖에 없다.

 

11년이나 된 공격의 유효성은 지금에 와서야 대규모 피해를 입고서 인식이 된다. 그러나 해결책은 쉽지 않다. Secure Programming도 어려운 과제이고 보안도구들의 대량 도입도 난관이 많다. 풀어야 할 프로세스들도 산재해 있다. 무엇보다 중요한 것은 기업이나 산업에 보안은 치명적인 요소로 작용 한다는 것을 이해 하는 것이 먼저 일 것이다. 필자가 생각하는 해결방안에 대해서는 근 시일 내에 정리 하도록 하겠다.

 

중요성에 대한 인식은 너무 먼 곳에 있다. 세상이 어수선하다. 보이지 않는 인터넷 세상은 더 큰 좌절이 존재한다. 문제 해결까지는 정말 많은 시간이 소요 될 것이다. 가장 효율적인 도구가 존재 한다 하여도 최소 3~5년 이상은 이 어플리케이션의 문제로 치명적이 될 것이다. 모바일도 예외가 될 수는 없을 것이다. 모든 것은 이어져 있다. 이것이 인터넷이다.

 

사람 사는 세상에도 어둠이 짙듯이 인터넷에도 어둠이 짙다.

다음 컬럼은 연계된 내용으로 기반시설에 대한 (SCADA) 문제를 다룬다.

Posted by 바다란