# JSON Formatter Chrome 확장 프로그램이 폐쇄형으로 전환되고 광고성 코드가 포함됨

> Clean Markdown view of GeekNews topic #28446. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=28446](https://news.hada.io/topic?id=28446)
- GeekNews Markdown: [https://news.hada.io/topic/28446.md](https://news.hada.io/topic/28446.md)
- Type: GN+
- Author: [neo](https://news.hada.io/@neo)
- Published: 2026-04-13T02:34:49+09:00
- Updated: 2026-04-13T02:34:49+09:00
- Original source: [github.com/callumlocke](https://github.com/callumlocke/json-formatter)
- Points: 3
- Comments: 1

## Topic Body

- Chrome에서 **JSON 데이터를 구조적으로 시각화**하던 확장 프로그램이 더 이상 오픈소스로 유지되지 않음  
- 프로젝트는 **폐쇄형 상용 모델**로 전환되며, 새 버전은 **프리미엄 기능을 포함한 API 탐색 도구**로 개발 중임  
- 기존 사용자를 위해 **JSON Formatter Classic**이 최종 오픈소스 버전으로 공개되어, **로컬 전용 포맷터** 형태로만 제공됨  
- Classic 버전은 **업데이트가 중단**되며, Chrome Web Store 또는 소스 코드로 설치 가능함  
- 이번 전환으로 인해 **광고성 코드 삽입 및 신뢰성 저하 우려**가 제기됨  
  
---  
  
### 프로젝트 종료 및 전환 공지  
- **JSON Formatter**는 오픈소스 개발을 종료하고 **폐쇄형 상용 모델**로 전환됨  
  - 새 버전은 **프리미엄 기능을 포함한 API 탐색 도구**로 개발 중임  
- 기존 오픈소스 사용자를 위해 **최종 오픈소스 버전**이 **JSON Formatter Classic**으로 공개됨  
  - Chrome Web Store에서 설치 가능하며, **로컬 전용 JSON 포맷팅 확장**으로 유지  
  - 더 이상 업데이트는 제공되지 않음  
  
### JSON Formatter 개요  
- Chrome 브라우저에서 **JSON API 응답을 구조적으로 시각화**하는 확장 프로그램  
- **긴 JSON 페이지에서도 빠른 처리 속도**를 제공하며, **Dark Mode**와 **문법 하이라이트**를 지원  
- **트리 구조 접기/펼치기**, **들여쓰기 가이드**, **클릭 가능한 URL** 기능 포함  
- JSON이 아닌 페이지에서는 **1밀리초 미만의 성능 영향**만 발생  
- **Raw / Parsed JSON 전환 버튼** 제공, 파싱된 JSON은 전역 변수 `json`으로 콘솔 접근 가능

## Comments



### Comment 55155

- Author: neo
- Created: 2026-04-13T02:34:51+09:00
- Points: 1

###### [Hacker News 의견들](https://news.ycombinator.com/item?id=47721946) 
- 오늘 Chrome Inspector에서 **give-freely-root-bcjindcccaagfpapjjmafapmmgkkhgoa**라는 수상한 요소를 발견했음  
  확인해보니 인기 오픈소스 [JSON Formatter 확장 프로그램](https://chromewebstore.google.com/detail/json-formatter/bcji...)이 한 달 전쯤 **폐쇄 소스**로 전환되었고, 결제 페이지에 **광고 코드와 위치 추적**을 삽입하기 시작했음  
  이제는 브라우저 확장 마켓플레이스 자체가 실패한 실험처럼 느껴짐. 그냥 직접 JSON 포매터를 만들어 쓰는 게 낫겠다는 생각임
  - Google 정책상 광고를 **삽입하는 건 허용되지만 제거하는 건 금지**되어 있는 게 아이러니함
  - 앱스토어의 **보안 필터링 기능**은 여전히 일정 가치가 있음. 완벽하진 않지만, 아무 통제 없는 환경보다는 낫다고 봄
  - 기존 사용자를 속이고 광고를 삽입한 건 정말 **비윤리적인 행위**라고 생각함. 폐쇄형 상업 버전으로 전환하는 건 괜찮지만, 사전 고지 없이 광고를 넣는 건 선 넘은 일임
  - 이런 행위는 공개적으로 **비판과 책임 추궁**을 받아야 함. 물론 농담 섞인 말이지만, 이런 ‘팔아넘김’이 사회적 제재를 받는 것도 필요하다고 봄
  - 어떻게 그런 수상한 요소를 발견했는지 궁금함. 평소에 DOM을 자주 살펴보는 편인지 묻고 싶음

- 이 사건의 저자인 **Callum Locke**가 실존 인물이라는 점이 흥미로움  
  예전엔 이런 ‘실명 개발자’가 신뢰의 신호였는데, 이제는 꼭 그렇지도 않다는 걸 보여줌
  - 사용자 수가 수백만 명이면 **매각 유혹**이 상당히 큼. 나도 30만 명 규모의 확장을 운영하는데, 몇 년간 받은 제안만 해도 꽤 큰돈이었음  
    관련 논의는 [HoverZoom GitHub 토론](https://github.com/extesy/hoverzoom/discussions/670)에 있음
  - 인기 확장 프로그램을 가진 개발자라면 이런 **유혹**을 피하기 어렵다는 걸 잘 알고 있음
  - 브라우저 확장 유지보수자는 종종 **수상한 제안 메일**을 받음. 이번 일도 그런 제안에 넘어간 사례로 보임
  - 어쨌든 Callum Locke는 이번 일로 **평판을 완전히 잃은 셈**임

- 2년 전 작성자가 직접 남긴 [HN 댓글](https://news.ycombinator.com/item?id=37067908)을 보면,  
  자신이 JSON Formatter의 창작자이며 **절대 사용자 데이터를 전송하거나 팔지 않겠다**고 맹세했었음  
  여러 차례 거액의 인수 제안을 받았지만 **명예를 지키기 위해 거절했다**고 밝힘
  - “영웅으로 죽거나, 오래 살아 악당이 된다”는 말이 떠오름
  - 요즘은 **직접 도구를 만드는 비용이 거의 0**이라 굳이 타인을 신뢰할 이유가 없다고 생각함
  - 결국 이런 약속도 **판매 전략**이었을 뿐일 수도 있음. 오픈소스는 제대로 된 **지속가능한 자금 구조**가 필요함
  - 그래도 그가 끝까지 원칙을 지켰다면 잘한 일임

- 작성자가 남긴 [Chrome Web Store 리뷰 답변](https://chromewebstore.google.com/review-reply/b4a787df-64e5...)에 따르면,  
  ‘Give Freely’는 스파이웨어가 아니라 **기부용 제휴 링크 시스템**이라고 설명함  
  사용자가 제휴 상점에서 결제할 때 클릭하면, 수익 일부가 **Code.org** 같은 단체에 기부되는 구조라고 함  
  개인 정보나 브라우징 데이터를 수집하지 않으며, 원치 않으면 **설정에서 완전히 비활성화**할 수 있다고 강조함  
  ‘Give Freely’ 코드가 없는 [JSON Formatter Classic 버전](https://chromewebstore.google.com/detail/json-formatter-clas...)도 제공 중이라고 함
  - 의도와 상관없이 **실행 방식이 미숙**했고, 브라우저 확장 배포 모델의 **보안 취약점**을 드러낸 사례라고 봄

- 핵심 문제는 **자동 업데이트 이념**에 있다고 생각함  
  업데이트는 보안 취약점을 해결하지만, 동시에 사용자가 원치 않는 변경이나 **공급망 공격** 위험을 초래함  
  특히 개인 개발자의 확장은 **자동 업데이트를 꺼야 함**. 하지만 Chrome은 이를 허용하지 않음  
  Google은 광고 중심의 철학 때문에 이런 **애드웨어 전환**을 문제로 인식하지 못함  
  Firefox는 조금 낫지만, 자체 빌드 확장을 영구 설치할 수 없다는 점이 아쉬움
  - Firefox에서도 완전히 불가능한 건 아님. `about:debugging`에서 임시 로드하거나, `xpinstall.signatures.required`를 끄면 가능함
  - 개인적으로는 모든 로컬 실행 프로그램은 **자동 업데이트 금지**가 원칙임. 그렇지 않으면 사회적으로 허용된 **RCE 백도어**일 뿐임
  - JSON Formatter처럼 기능이 고정된 확장은 설치 직후 **업데이트를 비활성화**하는 게 최선임.  
    다만 uBlock처럼 필터 리스트를 주기적으로 갱신하는 확장은 예외일 수 있음

- Chrome Web Store의 **바이너리와 공개 소스 간 불일치**가 가장 큰 문제라고 생각함  
  스토어는 개발자가 올린 패키지를 그대로 신뢰하며, 실제 공개 코드와 일치하는지 검증하지 않음  
  내가 직접 몇몇 확장을 **재현 빌드**해봤지만 대부분 일치하지 않았음  
  Firefox AMO는 소스 제출 후 **클린 빌드와 비교(diff)** 를 수행하지만 Chrome은 그렇지 않음  
  **재현 가능한 빌드와 서명된 커밋 연결**이 없다면, 악성 코드 삽입을 사전에 탐지할 방법이 없음

- Google이 **Manifest V3**를 밀어붙이면서도 이런 문제는 방치하고 있음  
  오히려 [Blaze VPN, Safum VPN, Snap VPN](https://palant.info/2025/01/13/chrome-web-store-is-a-mess/) 같은 악성 확장에 ‘Featured’ 배지를 달아줌  
  이들은 과거 악성 확장을 만든 PDF Toolbox 그룹의 **복제본**이며, 실제로는 작동조차 하지 않음  
  Chrome Web Store의 **검증 체계가 엉망**이라는 걸 보여주는 사례임

- 같은 일이 **ModHeader** 확장에서도 발생했음  
  [ModHeader 링크](https://chromewebstore.google.com/detail/modheader-modify-ht...)  
  Google 검색 결과마다 광고를 삽입하기 시작했고, 신고했지만 여전히 스토어에 남아 있음

- 일주일 전에 이 문제를 알아차리고, 직접 내가 좋아하던 기능을 모아 **새로운 JSON 포매터**를 만들었음  
  [GitHub - JSON Alexander](https://github.com/wesbos/JSON-Alexander)
  - 이름이 정말 멋지다는 칭찬을 받았음

- 이번 사건은 **설치된 확장 프로그램을 정리할 좋은 계기**가 되었음  
  꼭 필요한 것만 남기고 나머지는 삭제할 예정임
