본문 바로가기
공부/etc

크롬 개발자 도구 코드 붙여넣기 이슈

by Piva 2024. 9. 8.
  • 개발을 하던 와중, 코드에 바로 도입하기 전 확인차 크롬의 개발자 도구 콘솔을 사용해 넣으려던 코드를 실행하려 했었다. 그런데 갑자기 아래와 같은 에러가 뜨며 입력한 코드가 실행되지 않는 현상이 발생했다.
Warning: Don't paste code into the DevTools Console that you don't understand or haven't reviewed yourself.
(하략)

 

  • 여태까지는 이런 적이 없었는데? 싶어서 어떻게 해결하는지 알아봄과 동시에, 왜 갑자기 이런게 뜨기 시작했는지? 간단히 알아봤다.

크롬의 Self-XSS 경고

Self-XSS란?

  XSS(Cross Site Scripting) 공격은 웹페이지에 부적절한 악성 스크립트가 실행되는 공격이다. 예를 들어, 사이트 내 DOM을 조작하여 민감한 정보를 빼내거나 부적절한 행위를 하게끔 만드는 것이다.

 

  Self-XSS는 말그대로 Self, 즉 공격자가 아닌 공격의 대상이 되는 피해자가 직접 악성 코드를 실행하게끔 하는 공격을 의미한다.

 

 

크롬의 Self-XSS 예방책

  크롬에서 이런 경고가 뜨기 시작한 이유는 이러한 Self-XSS 공격을 방지하기 위함이다. 개발자 도구는 아무래도 클릭 몇 번으로 누구나 쉽게 접근할 수 있다보니, 자바스크립트나 웹 등에 대한 지식이 전무한 사람들이 혹시 모를 악성 스크립트를 실행하여 피해를 입지 않도록 최소한의 안전장치를 마련한 것으로 보인다.

 

  관련 내용을 크롬 개발자 사이트 및 아래 업데이트 내역 영상에서 확인할 수 있었다.

크롬 DevTools 119-120 업데이트 설명 영상

해당 경고를 더 이상 보지 않으려면 간단히 아래의 구문을 콘솔창에 입력하기만 하면 됐다.

allow pasting

 

 

  위 글에서도 설명되어있듯 이 경고 자체는 1회성이기 때문에, 위 문장을 입력한 후로는 다시 재발하지 않는 것으로 보인다.


  • XSS 공격 자체는 알고 있었는데 Self-XSS는 이번에 좀 깊이 확인해본 것 같다.
  • 사실 개발자다보니 개발자 도구에 접근한다는 것에 둔감해질 때가 있는데, 웹의 DOM을 들여다보고 접근할 수 있는 개발자 도구가 이렇게 악용될 수 있겠다는 걸 다시금 느끼게 되어서, 좀 귀찮을 순 있더라도 이러한 예방책을 넣어둔 결정에 대해 이해가 갔다.
  • 별개로 이 경고를 띄울지, 말지에 대해선 크롬 자체적으로 사용자의 콘솔 기록을 통해 판단한다는 것 같은데... 왜 이제서야 갑자기 뜬 거지? 싶기도 하다. 열심히 콘솔 창 확인하면서 개발했는데...!