ApiCatcher for macOS

macOS HTTP/HTTPS 패킷 캡처와 디버깅을 더 간단하게

macOS 저수준 메커니즘을 기반으로 구축된 ApiCatcher는 시스템 프록시 설정을 자동으로 전환하여 모든 시스템 트래픽을 투명하게 가로챕니다. 키체인 인증서 자동 가져오기 및 신뢰 메커니즘을 내장하여 깔끔하고 사용하기 쉬운 경험을 제공합니다.

ApiCatcher for macOS | HTTP Capture
ApiCatcher for macOS | HTTP Request Details
ApiCatcher for macOS | Remote Realtime Sync
ApiCatcher | Request History
ApiCatcher | Request Details
ApiCatcher | JSON Viewer
ApiCatcher | Request Details Window
ApiCatcher | JSON Diff
ApiCatcher | Request Replay

전문 패킷 캡처 및 API 디버깅 도구

종합적인 네트워크 요청 캡처, Mock 재작성, AI 스크립팅, 요청 재생을 하나의 효율적인 네트워크 디버깅 서비스로 제공합니다.

HTTPS 트래픽 캡처

iOS 기기에서 HTTPS 요청과 응답을 직접 캡처하고 분석합니다.

WebSocket 트래픽 캡처

WS/WSS 트래픽 캡처를 지원하며 데이터 프레임을 채팅 메시지 목록으로 표시합니다.

허용/차단 호스트 리스트

호스트별 허용/차단 리스트를 설정하여 특정 서비스 외의 불필요한 트래픽 캡처를 방지할 수 있습니다.

요청 리플레이

원탭으로 요청을 다시 실행하여 문제를 신속하게 재현하고 검증합니다.

조합 리플레이

여러 요청을 드래그 앤 드롭으로 조합할 수 있습니다. 파라미터 연동 및 순차 실행을 지원합니다.

요청 리라이트

Mock, 데이터 수정, 요청 드랍 등 다양한 리라이트 규칙을 지원하여 디버깅 니즈를 충족합니다.

스크립트 실행

복잡한 데이터 처리나 암호화 알고리즘에 대응하는 스크립트 기능을 제공하며, 즉시 테스트가 가능합니다.

예약 리플레이

스케줄에 따른 자동 리플레이를 지원하여 자동화 테스트 및 회귀 검증을 돕습니다.

요청 기록 내보내기

요청 기록을 공유하거나 문제 재현을 위해 파일로 내보낼 수 있습니다.

API 내보내기

API 문서를 자동으로 생성하며 Postman이나 Apifox로 내보낼 수 있습니다.

미디어 파일 추출

이미지, 영상, 오디오 요청을 자동 식별하여 추출합니다. 분할 다운로드된 파일의 통합 저장도 지원합니다.

API 스캔

캡처된 트래픽을 기반으로 규칙 탐지 및 통계를 수행하며, 사용자 정의 스캔 규칙을 지원합니다.

DNS 매핑

도메인 이름을 특정 IP 주소로 확인하는 사용자 정의 DNS 규칙을 정의합니다.

Protobuf 디코딩

Protobuf로 인코딩된 요청/응답 Body를 자동으로 디코딩합니다.

깔끔하고 사용하기 쉬운 macOS 네트워크 캡처 및 디버깅 경험

Mac 개발자가 HTTP 및 WebSocket 트래픽을 효율적으로 찾아 분석할 수 있도록 지원합니다.

로컬 시스템 프록시 자동 전환

macOSPROXY

원클릭 macOS 프록시 관리. 캡처 시작 시 자동 설정하고 종료 시 원활하게 복원합니다. Chrome 및 기타 주요 브라우저 트래픽을 완벽하게 캡처하며 연결 문제를 일으키는 네트워크 잔여물을 방지합니다.

스마트 키체인 인증서 주입

KEYCHAINTRUST

로컬에서 생성된 안전한 CA 루트 인증서를 macOS 키체인에 원클릭으로 가져오고, 자동으로 상승된 권한을 요청하여 '항상 신뢰'로 설정합니다. 번거로운 수동 단계를 건너뛰고 빠르게 HTTPS 복호화를 활성화합니다.

iOS 트래픽 밀리초 실시간 동기화

WEBSOCKETSYNC

스캔하여 연결! 고성능 WebSocket을 활용하여 iOS 기기(ApiCatcher 앱)에서 캡처된 패킷을 Mac 데스크톱 화면으로 즉시 동기화하여 손쉬운 오프라인 패킷 분석이 가능합니다.

매우 간단하고 직관적인 인터랙션 디자인

UIUX

데스크톱 대화면을 최대한 활용한 인터랙션 디자인. 요청 및 응답 세부 정보를 한눈에 파악하여 트래픽 분석이 더 효율적입니다.

macOS 패킷 캡처 구성 가이드 및 제한 사항

비시스템 프록시 애플리케이션의 트래픽을 캡처하기 위한 심층 구성 및 가로채기 가이드

1패킷 캡처 작동 방식

1. 로컬 프록시 시작

ApiCatcher에서 캡처를 활성화하면 컴퓨터에서 안전한 HTTP/HTTPS 프록시 서비스가 로컬로 시작됩니다. 수신 포트는 메인 인터페이스 또는 설정에서 확인하고 수정할 수 있습니다(기본 포트: 8888).

2. 시스템 프록시 자동 설정

캡처를 활성화하면 ApiCatcher가 macOS 시스템 네트워크 설정을 자동으로 변경하여 HTTP 및 HTTPS 프록시 서버 주소를 127.0.0.1:포트로 설정합니다.

3. 트래픽 리디렉션 및 복호화

이 시점에서 컴퓨터의 네트워크 요청은 자동으로 ApiCatcher 프록시 서비스로 리디렉션됩니다. HTTPS 암호화 트래픽을 복호화하기 위해 ApiCatcher는 시스템에 설치되어 신뢰된 CA 루트 인증서를 사용하여 요청된 도메인에 대한 인증서를 동적으로 발급함으로써 중간자(MITM) 복호화 및 분석을 수행합니다.

시스템 프록시를 기본 지원하는 애플리케이션(직접 캡처):

  • Chrome 브라우저: Chrome은 기본적으로 macOS 시스템 프록시 설정을 자동으로 읽고 따릅니다. 캡처를 활성화하면 Chrome의 HTTP/HTTPS 트래픽이 ApiCatcher에 직접 표시됩니다.
  • 기본적으로 시스템 네트워크 연결을 사용하는 대부분의 데스크톱 클라이언트.

시스템 프록시를 지원하지 않는 시나리오(수동 구성 필요):

  • 명령줄 터미널 도구(curl, wget, git 등)는 기본적으로 시스템 프록시 설정을 자동으로 읽지 않습니다.
  • 많은 개발 디버깅 도구나 프로그래밍 언어 런타임(Node.js, Python, Go 또는 Java 애플리케이션 등)은 네트워크 요청 시 기본적으로 시스템 프록시를 무시합니다.
  • SSL Pinning(인증서 바인딩)이 활성화된 고보안 클라이언트.

>_명령줄 도구(curl) 프록시 구성

macOS 터미널의 curl은 기본적으로 시스템 프록시를 따르지 않습니다. 프록시 매개변수를 명시적으로 지정해야 합니다:

1. 단일 요청을 프록시로 라우팅

명령 실행 시 -x 매개변수로 프록시 주소를 지정할 수 있습니다(ApiCatcher가 8888 포트에서 수신 대기 중이라고 가정):

curl -x http://127.0.0.1:8888 https://api.github.com

ApiCatcher가 HTTPS 요청에 대해 중간자 복호화를 수행하므로, 터미널이 아직 ApiCatcher 인증서를 신뢰하지 않은 경우 curl이 인증서 보안 오류를 표시할 수 있습니다. -k 매개변수를 추가하여 일시적으로 인증서 검증을 무시할 수 있습니다:

curl -k -x http://127.0.0.1:8888 https://api.github.com

2. 현재 터미널 창(셸 세션)에 전역 프록시 구성

현재 터미널 창의 모든 후속 명령이 자동으로 프록시를 통과하도록 하려면 환경 변수를 설정할 수 있습니다:

export http_proxy="http://127.0.0.1:8888"
export https_proxy="http://127.0.0.1:8888"

프록시를 취소하려면 환경 변수를 지우면 됩니다:

unset http_proxy https_proxy