Scriptless Attacks
2013.01.10 10:38
웹 보안에서 가장 문제가 되었던게 XSS 공격이라는 것인데요, 스크립트(자바 스크립트 등)를 이용해서 다른 사이트로 정보를 유출시키는 공격기법을 이야기합니다. 케이퍽이 기반으로 하는 XE도 XSS 취약점을 막기 위해 많은 보안패치를 제공하고 있고, 때에 따라서는 보안상의 이유로 매이저 업그레이드를 하기도 했습니다.
XSS는 No Script 등의 기법을 통해 상당부분 막히는 추세인데..
Scriptless Attacks가 등장했네요.
XSS 공격이 가능한 세 가지의 조건은
1. 스크립트 인젝션 가능
2. 인젝션된 스크립트가 실행 가능
3. 타 사이트로 정보 전송이 가능
인데요,
Scriptless Attacks는 CSS를 기반으로 하는 공격인데,
1. CSS 인젝션 가능
2. 타 사이트로 정보 전송이 가능
이 두 조건만으로 정보를 털 수 있습니다.
CSS는 무조건 실행이 되니, No Script 등의 기법이 먹히지 않습니다.
애초에 CSS 인젝션을 막아야 하는데.. 쉽지 않은 일입니다.
지금 XSS를 막는 기법이 javascript의 인젝션을 막는다기 보다는, 인젝션 되더라도 실행이 안되도록 막는 방법이라서요.
인젝션은 비교적 쉽게 가능합니다.
사실 CSS가 단순히 HTML을 도와주는 수준을 넘어서 거의 미리 정의된 스크립트(Predefined Script)가 되어버렸죠;;
CSS와 웹폰트를 이용해서 HTML5의 샌드박스까지 뚫려버리는군요.
WebKit 엔진은 이 문제에 더 취약하고요. (Safari, Chrome, Android Browser 등)
CSS가 너무 강력해지면서 보안 문제가 슬슬 생기는군요.
역시 편의성과 보안은 반비례한다는게 정답인듯 싶습니다.
자세한 내용이 궁금하신 분은 첨부파일을 보세요. ACM CCS에 출판된 논문입니다.
매우 흥미로운 논문입니다. 저도 역시 이 글 보면서 마지막에 느낀게... 편의와 보안은 반비례 생각을 했습니다. ㅎㅎ 잠깐 생각해 보니... CSS 의 CSS이군요. 뭔가 재미있는 이름입니다. ㅎㅎ