지난 주말, 9월 25일부터 26일까지 인터넷 서점 중 하나인 알라딘에서 악성코드를 유포하는 악성 스크립트가 메인 사이트에 삽입된 사건이 있었습니다. 해당 사이트에서는 (얼마나 빨리 대처했는지는 모르지만) 빠른 대응을 통해 악성코드를 제거하고 모니터링을 강화하고 있다고 자사 홈페이지에서 공지로 알리고 있습니다다.
아래 코드는 어베스트! 안티바이러스 제품에서 알라딘 홈페이지에서 진단한 스크립트의 URL 및 진단 이름입니다. URL의 일부분은 안전을 위해 변경했습니다.
2010-09-26 오후 1:11:23 http://218.237.66.1xx/End.asp [L] JS:Downloader-RN [Trj] (0)
2010-09-26 오후 4:45:40 http://210.116.104.xx/l.asp [L] JS:Downloader-RN [Trj] (0)
그런데, 알라딘 웹사이트에서만 이러한 문제점이 나타난다고 볼 수 있을까요?
네이버에서 보안에 관련된 유명한 카페 중의 하나인 바제2(바이러스제로 시즌2)에서 악성코드 유포 신고 라는 게시판을 살펴 보면, 거의 매일 유명한(누구나 한번 정도 들어 봄직한) 사이트들이 언급되곤 합니다. 몇 페이지 넘겨가면서 보다 보면, 아! 이것도 '단골'이 있구나 하는 생각이 들기도 합니다.
게다가,여기 이외에도 발견되는 공격 패턴(예. 스크립트의 URL 경로)을 구글을 이용하여 검색해 보면 다양한 결과를 볼 수도 있습니다.
실제로 국내 웹사이트의 보안에 대해서는 아무도 선듯 얘기하지 못하는 것이 사실입니다. 잘못 벙긋~ 했다가는 아마도 명예훼손, 업무방해, 해킹 등의 이유로 인해 법정을 왔다갔다할 수 있다는 우려 때문입니다.
외국의 경우에는 이러한 부분에 대해서는 더 관대(이 용어가 적절한지는 의문이지만)하다고 볼 수 있습니다. 아래는 필자가 외국 웹사이트에서 웹 관련 취약점을 찾아 블로그에 공개한 링크입니다.
BBC 뉴스: http://moonslab.com/1040 (SQL Injection 취약점)
애플 아이튠즈: http://moonslab.com/1064 (XSS 취약점)
마이크로소프트: http://moonslab.com/1089 (XSS 취약점)
LA 타임즈: http://moonslab.com/1117 (XSS 취약점)
물론 이렇게 공개는 하지만, 스크립트 키드들이 사용할 수 없도록 일부 정보를 숨기고 있습니다. 아마도 해당 개발자들은 스크린샷에 있는 항목이나 메뉴만 보더라도 문제점을 충분히 유추하여 해결할 수 있을 것으로 보입니다.
하여튼, 이러한 예로 볼 때, 국내에서 보안에 대한 경각심이나 보안을 강화하고자 하는 노력을 위해서는 보안을 바라보는 시선부터 바꿔야 할 것입니다.
이 문서에 따르면 가장 위협이 되는 취약점은 INJECTION, XSS(Cross-Site Script) 순으로 분류되어 있습니다.
이 중에서 SQL Injection 취약점은 그 공격의 결과가 서버의 장악이나 데이터베이스(데이터) 손상이 발생하기 때문에 상대적으로 보안 관리자가 인식하기가 쉽습니다.
하지만, XSS 공격은 실제로 취약점이 있는 웹서버를 공격하는 것이 아니라 제 3자를 공격하는 공격 경유지 성격을 띠고 있기 때문에 취약점으로 인해 공격이 발생하는지 알아차리기가 쉽지 않습니다.
XSS 취약점을 이용하여 공격자는 웹 애플리케이션에 접근하는 다른 사용자에게 자바스크립트를 실행할 수 있게끔 허용함으로써 공격이 시작됩니다. 즉, 사용자는 위험할 수도 있다는 생각은 전혀 하지 않은 상태에서 교묘하게 조작된 악성 스크립트가 실행되어 이로 인해 크나큰 피해가 발생할 수 있습니다.
XSS 공격의 예로 가장 대표적인 것이 계정 정보를 빼내는 기술입니다. 아래와 같은 방식으로 공격이 진행되며 최후의 단계에서는 공격자가 피해자의 정보를 도용하여 로그온할 수 있게 됩니다.
TYPO3는 국내에서 그리 많이 알려져 있진 않지만, 계속 소개하는 이유는 바로 오픈소스 계열의 웹 애플리케이션의 취약점에 대해 알리기 위해서 입니다.
실제 외국의 사례를 볼 때, Joomla, WordPress와 같이 널리 사용되는 프로그램에서 취약점이 발생할 경우에는 엄청난 위력을 발휘하기 때문입니다.
하여튼, 지난 번에 TYPO3에 관련된 웹 취약점을 언급한 적이 있습니다. TYPE3에서는 XSS(cross-site scripting) 리디렉션, SQL Injection, 인증 및 세션에 관련된 문제점, 정보 누출, 의도적인 코드 실행 등등, 취약점 종합백화점이라고 말할 수 있었습니다.
A Vietnamese hacker called "Thuat Nguyen" had hacked into iTunes accounts and manipulated the rating and sales for his book apps in July.
Apple does not confirmed an official statement regarding this hacks. But I guess that attack point of this hacks caused by phishing(such as E-mail) or malware such as keylogger.
I assumed that iTunes website may be vulnerable to SQL Injection or XSS attack.
Finally, I've found that iTunes website is vulnerable to XSS attack.
<#1. XSS Attack. iTunes likes google? >
While there are a huge numbers of XSS attack vectors, secure coding (input validation, output escaping) can defend against XSS attack(and SQL Injection).
Please email me(moonslab@gmail.com) if you’re security administrator of Apple or iTunes site.