2006/08/01

웹서버로 솔라리스를 사용해야 하는 이유(security)

자바스크립트 보안 자세히 들여다보기

http://www.zdnet.co.kr/news/internet/etc/0,39031281,39149821,00.htm

웹 사이트들은 자바스크립트 덕분에 점점 더 대화형으로 발전하고 있지만 10년 정도된 자바스크립트의 사용으로 보안 이슈가 제기되고 있다.

자 바스크립트는 웹 2.0 붐에서 주요한 역할을 하고 있다. 2.0은 웹사이트의 영역을 넓혀가고 있으며 자바스크립트가 큰 역할을 하고 있기 때문이다. 그러나 악성 자바스크립트는 특히 웹사이트의 보안상 결함과 결합되어 웹기반 공격을 개시할 수 있다고 보안 전문가들은 경고한다.

자 바스크립트와 이것이 왜 보안 위협이 될 수 있는지에 대한 질문에 답을 하는 과정에서 CNET 뉴 스닷컴은 아래 항목들로 FAQ 를 만들었다.

자 바스크립트는 무엇인가?

자 바스크립트는 스트립트 프로그래밍 언어있다. ECMA스크립트에서 유래된 것으로 넷스케이프 커뮤니케이션즈가 개발했으며 1995년 넷스케이프 브라우저에 도입됐다. 자바스크립트는 웹 사이트에서의 사용으로 잘 알려져 있다.

자 바스크립트는 자바인가?

아 니다. 이름과 달리 자바스크립트는 썬마이크로시스템즈의 자바와는 관계가 거의 없다. 자바는 자바 프로그램을 수행하는 프로그래밍 언어이자 소프트웨어이다.

썬 의 공동 설립자 중 한명인 빌 조이가 자바스크립트라는 이름이 나온데 전적으로 책임이 있는데 그는 이 것이 "잘못된 결정"이라고 최근에 있었던 한 행사에서 말했다. 그 는 "내가 넷스케이프가 자바스크립트라는 이름을 작명하도록 허용했다. 그들은 전화를 했다. 공황상태에 있었으며 자바스크립트란 이름을 사용하길 원했다. 나는 가족과 함께 밖에서 시간을 보내고 있었으며 별 생각을 하지 않았다"라고 말했다.

자 바스크립트가 웹 2.0과 어떻게 관계되는가?

2.0은 정확한 정의가 없다. 평범한 정적인 페이지만을 담고 있는 웹 사이트들을 모두 지칭하기 위해 주로 사용되는 용어이기 때문이다. 2.0 사이트들은 보다 대화성이 강하며, 예를 들어 사용자들이 온라인으로 게재하는 사진에 태그를 붙일 수 있도록 한다. 기존 웹과는 달리 데스크톱 애플리케이션을 사용하는 것에 보다 가까운 경험을 사용자에게 제공한다.

웹 사이트를 더 멋지게 만드는 핵심 기법의 하나는 AJAX(Asynchronous JavaScript and XML) 라는 프로그래밍 방식이다. 지난 해 출범한 구글 맵스는 AJAX 개발 기법의 이점을 널리 확산시킨 서비스로 사용자는 마우스로 스크린 상의 지도를 이동시킬 수 있다.

캘 리포니아 주립대 버클리 캠퍼스의 전산학과 교수인 데이비드 와그너는 "자바스크립트는 보안에 나쁘며 재앙이라고 할 수 있다. 현재 우리는 자바스크립트에 발목이 잡혀있다. AJAX는 더 많은 자바스크립트를 뜻하기 때문에 우리는 더 오래 발목이 잡혀있을 수 있다"라고 최근의 한 행사에서 말했다.

자 바스크립트를 어떻게 악성으로 만드는가?

해 커들은 사용자가 원하지 않는 일을 하도록 자바스크립트를 프로그램할 수 있다. 예를 들어 최근의 야마너 웜은 야후 메일을 목표로 삼았다. 이메일 주소를 수집하고 이를 해커에게 보낸 후 사용자의 야후 주소록에 있는 모든 수신자에게 스스로를 보낸다.

마 이스페이스에서 확산된 새미 웜은 인기가 많은 소셜 네트워킹 사이트인 마이스페이스의 프로파일을 바꾼다. 두 웜 모두 자바스크립트로 만들었다.

보 안 전문가들은 또한 최근 자바스크립트를 사용하여 홈 혹은 기업 네트워크의 지도를 그리고 서버 혹은 라우터나 프린터와 같은 장비를 공격할 수 있는 방법을 알아냈다.

내 컴퓨터에서 모든 자바스크립트가 동작하는가?

현 대식 웹 브라우저는 전부 자바스크립트를 지원한다. 악성 스크립트는 웹 페이지에 숨겨둘 수 있으며 통상적인 브라우저에서 볼 때 경고없이 동작하게 된다.

악 성 자바스트립트에 어떻게 대처하면 되나?

해 커들은 자신들이 만든 웹사이트로 희생자를 끌어들일 수도 있다. 그러나 크로스-사이트 스크립팅이라는 공통된 결함을 악용하여 사람들이 믿는 사이트를 이용할 수도 있다. 구글, MS, 이베이를 포함한 웹 대기업들은 이러한 결함을 치유해야만 했다. 지난 주 AOL Netscape.com은 경쟁사 Digg.com의 팬들이 자사 웹사이트에 자바스크립트를 심는 바람에 이를 수정해야만 했다.

공 격은 어떻게 이뤄지는가?

해 커는 악성 자바스크립트를 만들고 이 스크립트를 호스트할 수 있는 결함있는 웹사이트를 찾는다. 보 안 전문가들은 웹 사이트들이 크로스-사이트 스크립팅 결함을 많이 지니고 있다고 말한다. 해커는 이러한 결함을 이용하여 악성 코드를 웹 사이트에 심는다. 이 사이트를 방문하는 사용자들은 공격을 받게 된다. 예를 들어 이번 주 Netscape.com 사에 대한 공격을 보면 방문객들은 경쟁사 Digg.com 의 광고를 담은 자바스크립트 팝업을 만나게 되며 일부 경우 소셜 미디어 사이트인 Digg.com 으로 자동 안내된다.

나 의 PC 와 네트워크를 어떻게 보호하는가? 자 바스크립트는 내 컴퓨터에서 동작할까?

모 든 현재의 웹 브라우저는 자바스크립트를 지원한다. 웹 브라우저에서 자바스크립트를 꺼 버릴 수 있으며 자바스크립트가 수행되지 않을 것이다. 그러나 그렇게 되면 많은 웹사이트의 기능도 함께 꺼지게 된다.

자 바스크립트가 수행되면 사용자의 브라우저를 통하기 때문에 방화벽과 같은 보안 장치를 뚫게 된다고 보안 전문가들은 말했다. 웹 애플리케이션 보안 업체 화이트햇 시큐리티의 CTO 인 제레미아 그로스만은 "브라우저를 악용하여 내부 네트워크를 해킹할 수 있다"라고 말했다.

일 부 PC 보안 소프트웨어는 악성 자바스크립트를 탐지할 수 있지만 한번의 공격이 있고난 이후에 가능하다. 공격을 막기 위해서는 공격 시그니처 (위협의 "핑거프린트")에 의존하기 때문이다. 효과적인 보안 조치는 웹 서버 쪽에서만 가능하다고 보안 전문가들은 말한다.

웹 사이트 운영자가 할 일은?

크 로스-스크립팅 결함이 있는지 웹사이트를 점검하고 이를 고쳐야 한다. 사용자가 제공한 모든 자바스크립트도 확인할 필요가 있다.

그 로스만은 "사용자들은 그들이 방문하는 웹사이트에 운명을 맡기고 있다"라고 말했다.

웹 사이트 결함의 증가로 일부 보안 전문가들은 웹 개발자들이 보안 이슈에 많은 관심을 기울이지 않는다고 우려하고 있다. 2.0 의 관심 때문에 사람들은 새로운 웹사이트를 개발하고 있다(돈을 많이 벌 수 있다는 희망에). 그러나 개발 동인은 기능에만 매달려 있으며 보안은 무시되고 있다고 전문가들은 말한다.

왜 이 문제를 10년 전이 아닌 지금 읽고 있는가?

자 바스크립트가 10년 전에 나온 것은 맞다. 그 러나 최근 AJAX 덕분에 인기가 더 높아졌다. 더욱이 악성 자바스크립트가 오래 전부터 가능했던 것은 사실이지만 보안 전문가들은 별로 관심을 기울이지 않았으며 더 빠르고 간단한 PC 장악을 가능하게 하는 웹 브라우저 버그 발견에 치중했다고 보안 전문가들은 말한다.