NoScript 를 제거하고 uMatrix 으로 대체하다

얼마 전엔 Adblock Plus 를 대신에 uBlock Origin 을 설치한 이야기를 썼었었다. 그런데 이번에는 NoScript(이하 NS) 도 제거했다. NS는 여러가지 불편한 점이 많았지만 그래도 원하지 않는 스크립트 및 플러그인을 차단하고 이를 선택적으로 허용할 수 있다는 점에서 오랫동안 사용해왔었다.

그런데 며칠 전부터 이 NS가 오작동했다. 문제는 아이콘의 오동작인데, 스크립트가 차단되어 있음에도 모두 허용된 것으로 표시되거나 혹은 그 반대인 현상이 발생한 것이다. 최근에 문제가 발생한 점에서 uBlock 과 관련이 있지 않을까 싶어서 이를 비활성화 해보니 NS의 문제가 해결되는 것이 확인되었다. 설치한 당시에는 이런 문제가 없었던 것 같은데 아무튼 현재는 uBlock 과 NS 를 모두 활성화하면 NS 에 이러한 문제가 생긴다.

그래서 uBlock 을 끄든가 NS를 끄던가 골라야 했는데, 이번에는 NS를 끄기로 했다. 얼마 전의 discovery pane 문제라던가, Pocket 문제라던가, 기본적인 파이어폭스 기능과도 많이 충돌했기 때문에 이번에는 uBlock 으로 NS로 대체하는 것을 시도해보기로 했다.

UI 설명은 좀 부실하지만 설명서가 잘 되어있어 NS가 하던 일을 uBlock 으로 흉낸내는데 성공했다. XSS, ABE, 기타 플러그인(플래시 등)

까지 쓰다가, uMatrix 라는 같은 개발자가 만든 다른 플러그인을 알게 되어 이것을 설치해 보기로 했다.

uBlock 에 비해 더 자세한 설정이 가능하다. 또한 NS가 제공하던 ABE나 XSS 도 실질적으로 지원하는데, 이렇게 하려면 기본적으로 모든 리소스에 대한 기본 정책을 block 으로 두고 필요한 자원만을 선택적으로 허용하게 하면 된다.

예를 들면 이러한 식이다. 위키피디아의 CSRF 설명을 참조하여 localhost 서버에 대한 이미지를 요청하는 예제 페이지를 만들었는데, 아래를 보면 웹 사이트에서 localhost 에 대한 요청이 차단된 것을 확인할 수 있다. 자기 자신을 제외한 모든 서버에 대한 요청에 대한 기본값이 차단이므로 ABE 나 XSS 의 효과를 얻게 된다.

현재는 사이트 허용에 대한 기본값도 css, image 만 허용하게 해뒀는데 쿠키를 추가해야 하나 고민중이다. 쿠키도 명시적 제어가 필요할 것 같아서인데, 음… 유튜브 히스토리 문제를 해결한다고 잠시 씨름해봤더니 쿠키까지 관리하려고 하면 너무 손이 많이 가는 거 같기도 하고…

 

Leave a Reply

Your email address will not be published. Required fields are marked *