Charles Proxy
(charlesproxy.com)- HTTP 및 HTTPS 트래픽을 시각적으로 분석할 수 있는 웹 디버깅 프록시 도구로, 요청·응답·헤더 정보를 모두 확인 가능
- Reverse Proxy, SSL Proxy, HTTP Monitor 기능을 통합해 개발자가 네트워크 통신을 세밀하게 추적할 수 있음
- 최신 버전 Charles 5.0.3은 macOS 성능 문제를 수정하고 소규모 개선을 포함
- UI 개선, 다크 모드 지원, 성능 향상 등은 5.x 베타 단계부터 지속적으로 추가됨
- 2000년대 중반부터 꾸준히 업데이트되어 온 대표적 웹 디버깅 도구로, 모바일·플래시·iOS 개발 환경에서도 폭넓게 활용됨
개요
-
Charles는 개발자가 자신의 컴퓨터와 인터넷 간의 HTTP 및 SSL/HTTPS 트래픽을 모두 볼 수 있게 하는 웹 디버깅 프록시
- 요청(request), 응답(response), HTTP 헤더(쿠키 및 캐시 정보 포함)를 모두 표시
- HTTP Proxy, HTTPS Proxy, Reverse Proxy, HTTP Monitor 기능을 통합 제공
최근 개발 동향
- 2025년 9월 20일: Charles 5.0.3 릴리스, macOS 성능 문제 수정 및 소규모 개선
- 2025년 8월 9일: 5.0.2 릴리스, 버그 수정 및 소규모 개선
- 2025년 3월 12일: Charles 5 정식 출시
- 2024년 1월 24일: 5 베타 13 공개, Windows UI 개선 및 다크 모드 지원
- 2023년 7월~4월: 베타 9~11 버전에서 UI·성능 개선, 신규 기능 추가, 버그 수정
- 2022년 9월: 4.6.3 릴리스, Java 11 업데이트 및 버그 수정
- 2021년 12월: log4j2 취약점 관련 공지 — Charles는 log4j를 사용하지 않아 영향 없음
- 2020~2019년: 4.6~4.5 버전에서 Dark Mode 지원, SSL 인증서 개선, 보안 취약점 패치
- 2018년 5월: iOS용 Charles 출시
- 2016년: HTTP/2, IPv6 지원 추가된 Charles 4 릴리스
- 2006~2009년: AMF, SOAP, JSON 지원 추가 및 UI 대폭 개선
- 2005년: Firefox 자동 프록시 설정, Flash Remoting 분석 기능 도입
- 2003~2004년: SSL, Reverse Proxy, SOCKS Proxy 등 핵심 기능 확립
주요 기능
- HTTP/HTTPS 트래픽 모니터링: 요청·응답·헤더·쿠키·캐시 정보 실시간 확인
- SSL Proxy 및 Reverse Proxy: 암호화된 통신 분석 및 서버 응답 추적 지원
- UI 기반 분석 도구: 요청/응답 비교, 트래픽 필터링, 세션 저장 기능 제공
- 다양한 플랫폼 지원: macOS, Windows, iOS 등에서 동작
- 성능 및 안정성 개선: 지속적인 버그 수정과 코드 서명 업데이트
외부 리뷰 및 활용 사례
- Andrew Bardallis: 모바일 기기와 함께 Charles를 사용해 트래픽을 관찰·수정하는 방법 소개
- Tobias Sjösten: Charles를 이용한 모니터링 및 디버깅 사례 설명
- Dan Grigsby: iPhone App Store XML 데이터를 분석하는 데 Charles 사용
- Gary Rogers: iPhone HTTP 연결 디버깅에 Charles 활용
- MadeByPi, Frankie Loscavio, Darren Richardson, uberGeek 등은 Flash 및 Flex 개발 환경에서의 디버깅 효율성을 강조
종합 평가
- 20년 이상 지속된 업데이트를 통해 웹·모바일 개발자에게 필수적인 네트워크 분석 도구로 자리
- 다양한 프로토콜 지원과 직관적 UI로 디버깅 효율을 높이며, 보안·성능·호환성 개선이 꾸준히 이어짐
Hacker News 의견들
-
예전에 정말 사랑했던 Fiddler를 꼭 언급하고 싶음
거의 20년 전쯤 처음 써봤을 때 미래에서 온 도구 같았음. 당시엔 Charles보다 강력했던 걸로 기억함
원래는 Windows 전용이었지만, 다른 플랫폼용 빌드도 준비 중이었음. 이후 인수되면서 로드맵이 바뀌었고, 나도 Windows를 떠났음
Fiddler 공식 사이트- 완전 공감함. 그 멋진 도구의 추억을 종종 이야기하곤 함
혹시 macOS용 대체 도구를 찾은 적 있는지 궁금함. 나는 아직까지 제대로 된 걸 못 찾았음
- 완전 공감함. 그 멋진 도구의 추억을 종종 이야기하곤 함
-
숨겨진 보석 같은 도구였음
무료 대안 중 가장 가까운 건 mitmproxy인데, 솔직히 비교가 안 됨
물론 Wireshark도 있지만 너무 범용적이고 학습 곡선이 큼
예전엔 구독 없이 쓸 수 있었고, 그만한 돈 값은 충분했음- 여름에 Charles Proxy의 클론을 만들어봤음. iOS VPN → mitm → 커스텀 루트 인증서 → 로깅 구조로 구성했음
gomitmproxy를 이용해 트래픽 스니핑과 재암호화를 처리했음
소스는 여기에 올렸었는데, git 서버가 깨져서 복구를 못 함
요즘 AI가 내 허술한 코드를 완전한 Charles 클론으로 바꿔줄 수 있을지 궁금함
다만 Apple이 Packet Tunnel API 접근에 유료 개발자 계정을 요구하는 게 짜증남. 시뮬레이터에서도 테스트가 안 돼서 하루 넘게 삽질했음 - 2016~17년쯤 mitmproxy와 mitmdump를 정말 잘 썼음. 강력하고 스크립트화가 쉬워서 내 목적엔 Charles보다 훨씬 나았음
- 예전에 브라우저 확장이나 모바일 앱을 리버스 엔지니어링할 때 mitmproxy로 충분히 해결했음
- 내가 mitmproxy를 좋아하는 이유는 서버에서 직접 돌릴 수 있고, 내 폰에 신뢰된 인증서를 설치해 트래픽을 WireGuard로 연결하면 모든 트래픽을 웹에서 볼 수 있음
요즘은 certificate pinning 때문에 막히는 앱이 많지만, 그럴 땐 Frida로 해결함 -
Burp도 무료 버전(Community Edition)이 있음
Burp 다운로드 링크
- 여름에 Charles Proxy의 클론을 만들어봤음. iOS VPN → mitm → 커스텀 루트 인증서 → 로깅 구조로 구성했음
-
Burp Suite도 비슷한 기능을 하지만, 방향성이 다름
Charles는 HTTP(S) 트래픽 관찰과 디버깅에 초점이 맞춰져 있어서 빠른 문제 파악에 좋음
반면 Burp는 보안 중심으로, 인터셉트·재전송·자동화·공격면 분석에 특화되어 있음
그래서 단순 가시성이 필요할 땐 Charles, 보안 분석이 목적일 땐 Burp를 씀- Caido도 대안으로 볼 만함. 새로 등장했지만 빠르게 성장 중이며, 최근 Burp의 여러 기능이 사실상 Caido에서 영감을 받은 것들임
- 내 사용 사례에선 Burp만으로 충분함. 커뮤니티 버전도 꽤 잘 작동함
- 또 다른 대안으로 ZAP(Zed Attack Proxy) 이 있음. 완전 무료이자 오픈소스임
-
복잡한 기능은 필요 없어서 오랫동안 Charles를 써왔는데, 몇 년 전 Proxyman으로 바꾸고 훨씬 쓰기 편했음
- Proxyman은 가격이 조금 더 비싸지만 가치가 100배쯤 됨. 네이티브 UI, 단축키, 인증서 설치 도우미, 그리고 스크립트 편집기가 Charles보다 훨씬 강력함
- 나도 10년 넘게 Charles를 썼지만, macOS 사용자라면 Proxyman이 훨씬 자연스럽고 편리함
- 예전 직장에서는 Charles가 승인된 소프트웨어 목록에 없어서 Requestly를 썼음. 나중에 Charles를 다시 써봤지만, 결국 Requestly가 더 단순해서 돌아감
- Charles는 기능적으로 거의 완벽하지만, UI 개선만 조금 하면 완전한 도구가 될 것 같음
메뉴 구조가 복잡하고 DNS 관련 기능이 부족함. Proxyman도 써봤지만, 체감상 더 낫진 않아서 라이선스를 추가로 사진 않았음 - 두 도구를 병행해서 쓰고 있음. Proxyman에는 세션 그룹화 기능이 없어서 Charles를 완전히 버리긴 어려움
두 개발자 모두에게 감사함
-
왜 이게 지금 Hacker News 메인에 있는지 의아했음. 이미 잘 알려진 도구라고 생각했음
- 처음 들어본 사람도 있어서, 소개된 게 반가웠다고 함
- 나도 혼란스러움. 최근 업데이트가 없는데 왜 다시 주목받는지 모르겠음
-
단순한 용도로는 HTTP Toolkit 무료 버전을 사용 중임
자체 Firefox 창을 띄워서 트래픽을 가로채기 때문에, 작업용 브라우저 설정을 건드릴 필요가 없어 편함 -
2011년 iOS 개발을 시작할 때 HTTP API 디버깅에 Charles가 필수였음
아직도 꾸준히 유지되고 있는 걸 보니 반가움 -
작년에 Charles Proxy를 처음 써봤는데 정말 훌륭했음
모바일 앱용 SSL 프록시가 필요할 때 쓸 수 있는 모바일 앱 버전도 있음- 몰랐는데, iOS용 설정 문서가 따로 있음
-
여전히 최고의 소프트웨어 중 하나라고 생각함
요즘은 Proxyman을 사용 중임- 나도 Charles에서 Proxyman으로 옮겼음. 리모트 디버깅도 가능해서, 아이폰을 케이블로 연결해 바로 확인할 수 있음
-
나는 Burp 사용자지만, 요즘은 Caido가 뜨고 있음
가볍고 헤드리스 모드로 실행 가능함. 여전히 보안 중심이지만, VPS나 컨테이너에서 모든 트래픽을 프록시하도록 설계되어 있음- Caido 공동 창업자임. 언급해줘서 고맙고, 이제 DevSecOps 영역으로도 확장 중임