Burp Suite · 2026-05-02

Burp로 클라이언트 인증서 기반 인증 검사

Burp Suite를 이용한 클라이언트 인증서 기반 인증 테스트 절차와 설정 방법, 필요한 인증서 생성과 검증 방법에 대한 설명

작성일 : 2026-05-02 ㆍ 작성자 : 관리자
post
목차

개요

클라이언트 인증서 기반 인증(mTLS)을 점검할 때 Burp Suite를 활용하면 프록시를 통한 트래픽 관찰과 재현이 가능하다. 본문은 처음 접하는 이도 이해하기 쉽도록 인증서 준비부터 Burp 설정, 검증까지 순서대로 설명한다. 주요 키워드로는 Burp 클라이언트 인증 테스트, 클라이언트 인증서 Burp, Burp mTLS 검사 등이 포함된다.

필수 준비물

  • Burp Suite (커뮤니티 또는 프로페셔널)

  • OpenSSL(로컬에서 클라이언트 인증서 생성용)

  • 테스트용 브라우저(프로필 분리 권장)

  • 테스트 대상 서버(클라이언트 인증을 요구하는 엔드포인트)

클라이언트 인증서 생성

간단한 자체 서명 클라이언트를 예제로 생성하는 절차다. 다음 명령어로 개인키와 인증서를 만든다.

openssl genrsa -out client.key 2048
openssl req -new -key client.key -subj "/CN=test-client" -out client.csr
openssl x509 -req -in client.csr -signkey client.key -days 365 -out client.crt
# 브라우저용 PKCS#12 변환
openssl pkcs12 -export -out client.p12 -inkey client.key -in client.crt -passout pass:password

서버가 CA 서명을 요구하면 CA로 서명 받는 과정이 필요하다. 테스트 목적이면 자체 서명으로도 동작하는 서버가 많다.

브라우저에 인증서 추가

브라우저에 client.p12를 임포트한다. 개인 프로필이나 테스트 프로필을 사용하면 기존 환경에 영향이 적다. 일부 브라우저는 임포트 후 인증서 사용 여부를 묻는 UI를 제공한다.

Burp 설정: 클라이언트 인증서 매핑

Burp에서 클라이언트 인증서를 사용하도록 설정하면 프록시를 통한 mTLS 요청을 재현할 수 있다. 일반적으로 다음 흐름으로 설정한다.

  • Burp의 설정 화면(프로젝트 또는 사용자 옵션)에서 SSL/TLS 관련 섹션으로 이동

  • Client TLS Certificates 또는 유사 항목에서 호스트별 매핑 추가

  • 호스트:포트 형태로 대상 서버를 지정하고, PKCS#12 파일 또는 PEM(key+cert)을 연결

이 방식은 브라우저 대신 Burp가 클라이언트 인증서를 제시하도록 만든다. 필요 시 Burp의 자체 CA를 브라우저에 신뢰시켜 HTTPS 프록시를 원활히 사용한다.

테스트 흐름

일반적인 테스트 순서는 다음과 같다.

  • 브라우저를 Burp 프록시로 연결

  • 클라이언트 인증서가 요구되는 페이지 요청

  • Burp가 매핑된 인증서를 서버에 제시하며 세션 성립 여부 확인

  • 인터셉트 또는 Repeater로 요청/응답 검사

curl을 이용한 검증 예시

로컬에서 Burp 없이 직접 인증서 동작을 확인할 때 유용한 예시 명령이다.

curl --cert client.crt --key client.key https://example.com/secure-endpoint -v

서버가 인증서를 수락하면 200 응답을 받는다. 거부 시 TLS 핸드셰이크 단계에서 실패 메시지를 확인한다.

문제 해결 포인트

  • 인증서 체인 불일치: 서버가 특정 CA로 서명된 클라이언트만 수락할 수 있다. CA 체인 확인 필요

  • 프록시 인증서 간 충돌: 브라우저와 Burp 사이의 신뢰 설정 미비로 TLS 연결 실패 가능

  • 호스트 매핑 오류: Burp에 등록한 호스트:포트가 정확한지 재확인

  • 브라우저 자동 선택 문제: 브라우저가 여러 인증서 중 선택을 요구할 때 테스트에 영향

권장 검사 항목

  • 클라이언트 인증서의 유효기간과 CN(subject) 확인

  • 서버 로그에서 인증서 검증 실패 사유 확인

  • Burp에서 요청 헤더와 TLS 핸드셰이크 정보를 함께 분석

  • 재현 가능한 테스트 케이스로 자동화 스크립트 구성

결론

Burp Suite는 클라이언트 인증서 기반 인증의 관찰과 재현에 유용하다. 인증서 생성과 브라우저/프록시 설정을 정확히 맞추면 mTLS 경로의 문제를 효율적으로 진단할 수 있다. 테스트 시 로그와 TLS 핸드셰이크 정보를 중점적으로 확인하면 원인 파악이 수월하다.

Burp 클라이언트 인증 테스트 클라이언트 인증서 Burp Burp mTLS 검사 mTLS 클라이언트 인증서 Burp Suite TLS 클라이언트 인증 프록시 설정