운영하는 웹에서 자꾸 null로의 접근시도가 발견되었다.
아무리 코드를 뒤적거려봐도 나는 null로 fetch를 주거나 redirect하거나 한 적이 없는데 어느 페이지를 가든지 무조건 /null에 접근하려는 것 아닌가? 아무것도 respone 해주지 않으니 당연히 404 Not Found가 나오는 상태.
아래는 관련 포스팅.
어쨌거나 단순히 콘솔이 보기 싫은거면 모르겠지만,
나의 경우에는 특정 페이지에서 params를 받아올때 에러가 떠서 서버가 멈추는 현상이 발생했다. 배포환경에서는 자동 재부팅이 이루어지지만, 개발환경에서는 계속 강제 종료후 재시작해줘야하는 상황..
숫자가 와야할 params 자리에 CrxMouse가 null을 시도하니, Mongoose가 castError를 뿜어냈던 것.
정확히는 BSONTypeError: Argument passed in must be a string of 12 bytes or a string of 24 hex characters or an integer 였다.
하지만 이 현상이 개발자용 브라우저로 쓰고 있는 곳에서만 발생한다는 의심이 들어서 몇가지 테스트를 진행해보았다.
그랬더니 정말로 특정 브라우저에서만 문제가 발생하는게 아닌가?
그래서 몇몇 의심이 가는 확장프로그램을 꺼보기도 하고, 설정을 만져보기도 하였지만 원인을 알 수 없었다.
왜냐하면 CrxMouse는 아닐거라고 단정 짓고, 꺼보려는 시도조차 하지 않았기 때문이다.
왜 아닐거라고 단정지었냐하면..
- 오류를 내지 않는 다른 브라우저에도 깔려있다는 점
- CrxMouse를 쓴게 하루 이틀이 아니라 몇 년이 넘었다는 점 때문이었다.
하지만 너무 이상해서.. 그냥 모든 확장프로그램을 다 꺼버리고 하나하나 켜보면서 테스트하던 찰나... 가장 마지막 남은 녀석이 CrxMouse 였으니... 설마설마하며 켜서 새로고침을 누르니 바로 /null로의 접근 시도가 발생하였다.
그래서 빡쳐서 바로 지워버렸다가...다시 소심하게 재설치 하였다....
어쨌거나 버그리포팅은 한글로 대충 휘갈겨 써놓은 상태.. 곧 고쳐주겠지 뭐..
그나저나 나는 왜 이런 일이 발생하는지 궁금해졌다.
왜냐하면 앞서 말한 것처럼 다른 브라우저에서도 쓰고 있는데 여기서는 오류가 발생하지 않기 때문이다.
그래서 개발자툴로 원인을 찾아볼까하고 켜봤더니, 바로 차이점이 눈에 들어왔다.
보이는가? 문제가 발생하는 브라우저는 body style에 "cursor:url("null"), default;"가 깔려 있다.
CrxMouse의 슈퍼드래그 기능인가 싶어서 꺼봤는데도, 이 스타일은 사라지지 않는다.
그리고, 콘솔을 보면 이번에도 어김없이 /null에 접근시도하였다는 점을 알 수 있다.
GET https://www.naver.com/null 404
두 브라우저에 모두 CrxMouse가 설치되어있지만, 다른 점은 버전 뿐이다.
문제가 발생하는 버전은 5.0.1
문제가 발생하지 않는 버전은 4.4.6
나머지 모든 환경을 동일하게 세팅하여 비교해보았으므로, 버전의 문제가 확실하다고 볼 수 있다.
하루 빨리 버그를 수정해주길 바란다.
/null로 무지성 접근이 발견되는가?
범인은 CrxMouse v5.0.1이다.
'Learning-Log > Computer Science' 카테고리의 다른 글
[JS/함수] 함수의 유형 (1) - 즉시 실행 함수 (0) | 2022.06.07 |
---|---|
[JS/함수] 화살표 함수 1분만에 이해하기 : 함수(Function)을 정의하는 4가지 방법 (0) | 2022.06.07 |
[Node.js/MongoDB] Mongoose에서 ObjectId 값을 제대로 못 받아오는 현상 (0) | 2022.05.30 |
Parsing(파싱)과 Parser(파서) (0) | 2022.05.30 |
[Multer] Crash in HeaderParser in dicer (0) | 2022.05.30 |