HTTPS 복호화 (중간자 공격, MitM)

Chute는 MitM을 통해 HTTPS 트래픽을 복호화할 수 있습니다. 자세한 내용은 Wikipedia 문서를 참조하세요.

인증서 생성기는 디버깅을 위해 새 CA 인증서를 생성하고 시스템에서 인증서를 신뢰하도록 설정하는 데 도움을 줍니다. Chute Mac 및 Chute iOS Chute Editor에서 사용할 수 있습니다. 이 인증서는 로컬에서 생성되며 프로필 파일과 시스템 키체인에만 저장됩니다. 새 인증서의 키는 OpenSSL을 사용하여 무작위로 생성됩니다.

기존 CA 인증서를 사용할 수도 있습니다. 인증서를 PKCS#12 형식(.p12)으로 암호와 함께 내보내세요. 시스템 제한으로 인해 암호는 비워둘 수 없습니다. "base64" 명령어를 사용하여 base64 문자열로 인코딩하고 아래 설정을 설정 파일에 추가하세요.

[MITM]
enable = true
ca-p12 = MIIJtQ.........
ca-passphrase = password
hostname = *google.com

Chute는 여기에 선언된 호스트에 대한 트래픽만 복호화합니다.

와일드카드 문자 및 ?가 지원됩니다. 단, ?는 규칙에 `도 포함되어 있을 때만 와일드카드로 동작하며,?`만 포함된 규칙은 리터럴로 비교됩니다.

  • 접두사 -를 사용하여 호스트명을 제외합니다.
  • 기본적으로 포트 443에 대한 요청만 복호화됩니다.
    • 접미사 :port를 사용하여 다른 포트를 허용합니다.
    • 접미사 :0을 사용하여 모든 포트를 허용합니다.

예:

  • -*.apple.com: 포트 443에서 *.apple.com으로 전송된 모든 요청을 제외합니다.
  • www.google.com: 포트 443에서 www.google.com에 대한 MitM을 허용합니다.
  • www.google.com:8080: 포트 8080에서 www.google.com에 대한 MitM을 허용합니다.
  • www.google.com:0: 모든 포트에서 www.google.com에 대한 MitM을 허용합니다.
  • *: 포트 443에서 모든 호스트명에 대한 MitM을 허용합니다. (권장하지 않음)
  • *:0: 모든 포트에서 모든 호스트명에 대한 MitM을 허용합니다. (권장하지 않음)

호스트명 항목은 첫 번째 / 뒤에 경로 패턴을 포함할 수도 있습니다. 먼저 호스트 부분이 매칭되어 연결의 복호화 여부가 결정되고, 그다음 경로 패턴이 어떤 요청을 복호화하고 처리할지 필터링합니다.

  • example.com/api/*: 포트 443에서 example.com에 대한 MitM을 허용하되, 경로가 /api/*와 일치하는 요청으로 제한합니다.

일반적인 구성은 다음과 같습니다:

hostname = -*.apple.com, -*.icloud.com, *

Chute는 모든 MitM 요청에 URL 재작성, 헤더 재작성, 본문 재작성 및 모의 응답(Map Local) 규칙과 스크립트를 적용합니다.

MitM은 HTTP/2를 지원합니다: Chute는 ALPN을 통해 클라이언트에 h2http/1.1을 모두 제공합니다. Surge의 [MITM]h2tcp-connection은 설정 파일에서 허용되지만 무시됩니다.

일부 애플리케이션은 고정된 인증서나 CA를 사용하는 엄격한 보안 정책을 가지고 있습니다. 이러한 호스트에 대한 복호화를 활성화하면 문제가 발생할 수 있습니다.

CA 인증서 설치 및 신뢰

CA를 생성(또는 가져오기)하는 것은 설정의 절반일 뿐입니다 — 운영 체제가 이를 신뢰하기도 해야 합니다. 두 단계가 모두 완료되기 전까지는 복호화되는 모든 사이트가 인증서 경고와 함께 실패합니다. 앱의 인증서 페이지에 현재 상태가 표시됩니다("신뢰할 수 있는 CA 인증서" / "신뢰할 수 없는 CA 인증서").

Chute iOS — 설정 편집기에서 MITM → CA 구성을 엽니다:

  1. 새 CA 인증서 생성(기존 인증서가 있다면 P12 인증서 가져오기).
  2. 시스템에 CA 인증서 설치를 탭합니다. Safari 페이지가 열립니다 — Install Certificate를 탭하고 다운로드를 허용한 다음, 설정 → 일반 → VPN 및 기기 관리에서 다운로드된 프로파일을 설치합니다.
  3. 신뢰 설정: 설정 → 일반 → 정보 → 인증서 신뢰 설정에서 Chute CA에 대한 완전한 신뢰를 활성화합니다. 이 단계가 대부분의 사람이 놓치는 부분입니다 — 이 단계가 없으면 인증서는 설치만 되고 신뢰되지 않아 복호화가 계속 실패합니다.

Chute Mac — 설정 창에서 MitM을 엽니다:

  1. Generate New Certificate(또는 기존 인증서는 Import Certificate from PKCS#12 File).
  2. Install the Certificate to System을 클릭합니다. macOS가 관리자 암호를 요청한 뒤 인증서를 신뢰할 수 있는 루트로 시스템 키체인에 추가합니다 — 키체인 접근에서의 수동 작업은 필요하지 않습니다.
  3. Export the Certificate는 다른 기기에 설치할 수 있도록 .pem 사본을 저장합니다.

인증서가 신뢰되는데도 특정 앱이 여전히 실패한다면, 그 앱은 자체 인증서를 고정(pin)했을 가능성이 큽니다 — 맞서 싸우기보다 - 접두사로 해당 호스트를 hostname에서 제외하세요.

옵션

skip-server-cert-verify

skip-server-cert-verify = true

MitM 수행 시 원격 호스트의 인증서를 확인하지 않습니다. 활성화되면 Chute는 자체 서명된 인증서나 유효하지 않은 인증서를 포함하여 업스트림 서버가 제시하는 모든 인증서를 수락합니다. 이는 개발 환경에 유용하지만 보안이 저하됩니다.

[MITM]
enable = true
ca-p12 = MIIJtQ.........
ca-passphrase = password
skip-server-cert-verify = true
hostname = *google.com

보안 참고: skip-server-cert-verify를 활성화하면 Chute와 업스트림 서버 간의 MitM 연결이 중간자 공격에 취약해집니다. 신뢰할 수 있는 네트워크나 개발 목적으로만 활성화하세요.

S. Smart Rabbit LLC © All Rights Reserved            updated 2026-08-18 12:06:42

이 페이지는 영어판의 번역본입니다. 내용이 다를 경우 영어판이 우선합니다.

results matching ""

    No results matching ""