하우리 로고 이미지

전체메뉴 열기

Security issues analysis

주의해야 할 보안위협요소에 대한 분석자료 제공

보안이슈 분석

바이러스 게놈 지도를 활용한 변형 바이러스 추론 Part III (마지막편)
등록일 :
2006.04.13
[원고출처 : Monthly 사이버시큐리티 2005.12월호]
최원혁 ㈜하우리 바이러스대응센터장
whchoi@hauri.co.kr


4. 바이러스 게놈 지도

(주)하우리 바이러스 대응센터에서는 F-Secure의 Virus Genome Map의 알고리즘들을 새롭게 재구성하여 자체 “바이러스 게놈 지도”를 완성하였고 이를 통해서 바이러스 명명을 자동화 하려고 준비중에 있다.

우선 “바이러스 게놈 지도”를 완성하기 위해서는 IDA Pro가 존재해야 하며, IDA Pro SDK도 설치가 되어야 한다. IDA Pro SDK에는 IDA Pro를 통해 역어셈블 된 코드를 자유 자재로 결과값을 얻을 수 있기 때문에 상당히 유용한 툴이다. 이 SDK를 통해 함수의 호출 관계를 나열하면 그림 7과 같은 값을 얻어 낼 수 있다.



이 호출 관계를 그래픽 툴인 Graphviz[9]을 통해서 dot 형태로 구성을 하면 그림 8과 같은 형태의 바이러스 게놈 지도를 얻을 수 있다.



바이러스 게놈 지도의 활용 예는 F-Secure에 존재하는 자료를 통해서 확인해 볼 수 있다. F-Secure에서는 2004년 10월 21일 새로운 Netsky 변종을 발견했으며, 바이러스 내부에서 “Bucheon” 과 “SoonChunHyang” 이라는 단어를 발견했으며, 한국에서 제작 했을 것으로 판단되며 더 많은 변종이 한국에 있을 것으로 추측했다[10]. 그리고 발견된 Netsky 변형을 Netsky.AG로 명명하였다.



하지만, F-Secure에서는 다음날인 22일에 Netsky.AG로 명명한 위의 바이러스를 Buchon으로 새롭게 명명했다[11].



그에 대한 부가적인 설명으로 Netsky와 Buchon 바이러스의 게놈 지도를 비교 설명하고 있다. 즉, 그림 10에서 보는 바와 같이 Netsky와 Buchon은 그 형태가 상당히 다르다는 것을 보여준다. 하지만, 동일한 Mimail들의 변형은 그림 11에서와 같이 흡사한 모양을 띈다.






바이러스 게놈 지도는 함수의 호출 관계를 그래프화 한 것이므로 동일한 함수 호출을 가진 경우에는 유사한 모습을 가지게 되며 새로운 기능이 추가되게 되면 그 모양은 심하게 달라지게 된다. 그림 12는 그 변형의 차이가 심하지는 않다(붉은색으로 표시된 부분이 서로 다른 부분이다). 하지만, 그림 13을 보면 기능이 다소 복잡해지면서 그 내용이 많이 달라지게 되었다.





그림 13과 같이 두 게놈 지도의 모양이 심하게 다른데도 불구하고 Mytob로 명명된 이유는 Mytob.W가 Mytob.K를 포함하고 있기 때문이다. 이는 역시 두 그래프를 비교하는 것으로는 알 수가 없고 이를 수식화하여 해당 두 그래프의 포함 관계를 체크하게 된다. 또한 수식화만 가능하다면 이들은 서로 어떤 바이러스에서 파생되었는지도 쉽게 찾아낼 수 있다.

먼저 두 개의 그래프를 수식화 하기 위해서는 먼저 그림 7에서 보여준 함수의 호출 관계를 가지고 수식화한다.

각 그래프의 위치를 (i, j)로 표시하면, 이때 i는 호출 함수를 의미하며, j는 피호출 함수를 의미한다고 가정하면 다음과 같은 방법으로 두 그래프를 비교할 수 있다.



이렇게 하면 두 그래프의 포함 관계를 알아낼 수 있게 된다. 또한 두 그래프의 유사도를 측정하기 위해서는 아래와 같은 방법으로 알아낼 수 있다.



해당 값이 1이면 두 개의 함수 호출이 동일하므로 동일 바이러스이며, 0이면 두 개의 함수호출에서는 공통점이 없다는 의미가 되므로 전혀 다른 바이러스라는 의미이다.

이를 두 가지 유형의 바이러스에 대해서 살펴보면 다음과 같다.



위는 Mimail 바이러스들에 대해서 서로의 유사도를 측정한 결과이다. 실제 나오는 유사도 값에 100을 곱하여 값을 크게 하였다. Mimail.B이 등장한 경우에는 비교 대상이 Mimail.A 밖에 없다. 따라서 Mimail.A와 Mimail.B 가 90% 이상 일치한다는 것을 의미한다. Mimail.C의 경우 Mimail.A와는 85%, Mimail.B와는 84% 정도 일치성을 보인다. 따라서 Mimail.C는 Mimail.B 보다는 Mimail.A에서 파생되어 나왔을 가능성이 많다는 의미이다. 같은 의미로 Mimail.D는 Mimail.B에서 파생되었고, Mimail.E는 Mimail.C에서 파생되었다는 것을 의미한다.



그림 14와 같은 방법으로 계속적으로 Mimail의 변종이 나올 때 마다 파생도를 추가하게 되면 그림 15와 유사한 형태의 파생도를 최종적으로 완성할 수 있다.




5. 결론

바이러스들에 대한 분석 및 명명을 자동화하는 연구는 현재도 계속되고 있다. 이들은 엄밀히 말하면 바이러스 면역 시스템 연구의 일부분에 해당하는 기술들이며, 이들이 모두 통합된다면 실시간 바이러스 대응이 가능해지게 된다. 이미 외국에서는 어느정도 초기 단계를 지났으나, 아쉽게도 국내에서는 이들 연구가 아직은 초기 단계에 불구한 실정이다. 실제 학계에서의 연구가 절실하지만, 이들 연구는 대체로 업체에서 각각 수행하고 있으니 아쉬울 따름이다. 이들에 대한 연구가 좀 더 활성화 되어 빠른 바이러스 대응이 가능해 진다면 바이러스로부터의 해방은 그리 멀지 않은 미래의 일이 될 것이다.


참고문헌
[1] "인터넷 연결 15분만에 웜 감염 - KISA 조사", 전자신문 2005-11-09,
http://news.naver.com/news/read.php?mode=LOD&office_id=030&article_id=0000123259§ion_id=001&menu_id=001
[2] 최원혁, "악성코드 소식", Kei의 바이러스 세상 2005-11-09,
http://blog.naver.com/hanul93/80019271283
[3] "인터넷 침해사고 동향 및 분석 월보", 한국정보보호진흥원 2005-10,
http://www.krcert.or.kr/statistics/download.jsp?file=0510_statistics.pdf&mode=reps/hack/guest
[4] "업데이트 History", ㈜하우리 바이러스대응센터 내부 보고서
[5] 차민석, "현재 시점에서 적절한 분석 인력", 쿨캣의 악성 코드 뉴스 2005-10-03,
http://blog.naver.com/xcoolcat7.do?Redirect=Log&logNo=20017718635
[6] Peter Szor, "The art of Computer Virus Research and Defense", p613, p656~659,
Symantec Press, ISBN 0-321-30454-3
[7] Costin Raiu, "M.I.R.A. - searching for the lost kids", AVAR 2001,
http://www.noh.ro/craiu.com/papers/abstracts/avar2001.html
[8] "Graphing malware", F-Secure Weblog, 2004-10-25,
http://www.f-secure.com/weblog/archives/archive-102004.html#00000324
[9] "Graphviz - Graph Visualization Software",
http://www.graphviz.org/
[10] "New Netsky found", F-Secure Weblog, 2004-10-21,
http://www.f-secure.com/weblog/archives/archive-102004.html#00000319
[11] "On the differences between Buchon and Netsky", F-Secure Weblog, 2004-10-22,
http://www.f-secure.com/weblog/archives/archive-102004.html#00000321
[12] Ero carrera, Gergely Erdelyi, "Digital Genome Mapping", VB2004, p195
  • - 본 정보의 저작권은 (주)하우리에 있으므로 허가없이 전체 또는 일부를 사용 시 저작권 침해로 간주될 수 있습니다.
  • - 상업적인 목적이나 단체에서 사용할 경우, 별도로 허가를 받으셔야 합니다. (정보 이용 문의 skim@hauri.co.kr)

Top