보도자료

> PR CENTER > 보도자료

[테크칼럼] 웹을 보다 강력하게, 하지만 안전하게 구현하는 방법
엔시큐어 2019-03-25

[테크 칼럼] 웹을 보다 강력하게, 하지만 안전하게 구현하는 방법


자바스크립트, 구글 지메일과 구글맵에 활용하면서 급속도로 성장
브라우저에서 지원하는 'HTML 보기' 기능에 의해서 소스코드가 그대로 노출되는 취약점
자바스크립트 난독화 등 보안 지원하는 'Arxan for Web', 'Jscrambler' 같은 상용화 솔루션 등장



웹은 프로토콜의 단순함에 비해 거의 모든 업무시스템과 일상생활에서 사용하고 있다. 웹에서 사용되는 언어들은 지속적으로 업데이트되면서 다양한 기능을 제공하고 있고, 이를 제대로 활용할 수 있다면 배포에 부담이 없는 클라이언트/서버 기반의 프로그래밍이 가능해질 수 있는 수준에 이르렀다고 생각한다. 브라우저만 있다면 접속하는 곳마다 다른 클라이언트용 어플리케이션을 마음껏 사용할 수 있으니 놀라운 일이 아닐 수 없다.


하지만, 프로토콜의 단순함 때문에 안전하게 개발하고 배포함에 있어 가장 큰 걸림돌 중 하나는 역시 보안이다. SSL/TLS 보안 통신 및 Active X를 이용해서 지금까지 보안을 해왔다고는 하지만, 통신과정 상의 안정성 확보에만 주력한 측면이 있고, 설치과정 상에서 너무 불편함을 가중시켜 사용자에게 많은 인내심을 요구해왔다. 더욱이 콘텐츠 자체에 대한 보호 방법은 거의 존재하지 않았다.


필자는 웹을 보다 안전하게 개발 및 제공하기 위해서 지금보다 효과적이고 안전하게 보호 할 수 있는 방법 중 한가지에 대해 설명하고자한다. 바로 자바스크립트(JavaScript)다.


자바스크립트의 화려한 등장
클라이언트인 브라우저로 전달되는 웹 응답 값은 기본적으로 'HTML'이라는 언어로 구성되어 있다. HTML은 브라우저에서 보이는 정적인 화면을 구성하는데, 역시 주목할 것이 바로 자바스크립트다. 자바스크립트는 화면에는 나타나지않고 메모리에 로딩되어 실행되는 코드다. 따라서 동적으로 페이지를 구성하거나 HTML에서 이벤트가 발생했을 때 이를 처리하는 역할을 지원한다. 친사용자 화면(UI/UX) 구성일수록 클라이언트에서 자바스크립트의 역할은 매우 중요하다 할 수 있겠다.


(중략)


자바스크립트의 치명적 약점
이렇게 많은 능력을 가지고 있는 강력한 자바스크립트도 결정적인 취약점이 존재한다. 그것은 브라우저에서 지원하는 'HTML 보기' 기능에 의해서 소스코드가 그대로 노출된다는 점이다. 또한, Proxy 도구를 이용하면 웹서버와 브라우저간 통신과정에서 코드를 임의로 조작할 수가 있다.


(중략)


앞으로의 자바스크립트 보안
자바스크립트를 통해서 다양한 기능을 안전하게 구현할 수 있다면 개발이 용이하고 편리해질 것이다. 코드 분산을 통해서 서버 측 구현 및 부하 부담을 현저히 줄일 수 있는 것은 물론이고 다양한 아키텍처 구현의 가능으로 보다 쾌적한 웹 환경을 구현할 수 있을 것이다. 이러한 부분이 가능하려면 현재 공개되어 있는 수준의 난독화가 아닌 식별이 불가능한 수준의 보다 강력한 자바스크립트 난독화 기술이 필요하다. 게다가 다음 기술들이 필요로 할 것이라 판단된다. 그 이외에 브라우저의 특성 등에 따라서 추가적인 고려가 있을 수 있다.


△복원이 매우 어려운 수준의 난독화 기술들
△자바스크립트 코드 위변조 차단
△디버깅을 원천적으로 차단
△DOM 객체 위변조 차단

참고로 DOM 객체에 대한 위변조 방지 된다는 것은 단순히 HTML이나 자바스크립트만 보호 된다는 것이 아니라 쿠키값도 보호되기 때문에 XSS 스크립트 공격을 통한 쿠키값 유출을 막을 수가 있고, 쿠키에 존재하는 세션값도 위변조를 차단할 수 있어 세션값 어뷰징도 자동 차단이 가능해진다. 뿐만 아니라 정보 접속 URL 정보 및 기타 관련 로직 등을 보호함으로써 다양한 형태의 공격을 방어할 수 있게 된다. 이러한 부분은 웹서버만을 방어하던 웹방화벽이 막아주지 못하던 부분이다. 웹방화벽과 함께 구성이 된다면 상당히 큰 도움이 될 것이라 확신한다.


(중략)


출처 : 보안뉴스; 원병철 기자; 2019.03.25;


기사보러가기 -> GO!


임직원과 고객이 함께하는 엔시큐어


 


 

웹의 대세, 자바 스크립트의 마지막 퍼즐 ‘소스코드 보호’
다음 글이 없습니다.