CHAP(Challenge-Handshake Authentication Protocol)란?
CHAP(챌린지 핸드셰이크 인증 프로토콜)는 사용자 또는 호스트를 인증 주체(authenticating entity)에 대해 검증하는 컴퓨팅 프로토콜입니다. 여기서 인증 주체는 인터넷 서비스 제공업체(ISP)가 될 수 있습니다. PPP(Point-to-Point Protocol) 서버는 원격 클라이언트의 신원을 확인할 때 CHAP을 사용하며, 3방향 핸드셰이크(three-way handshake)를 주기적으로 수행해 상대방의 신원을 지속적으로 검증합니다.
PPP 세션에서의 인증: PAP와 CHAP
PPP 세션에서 인증을 수행하기 위해서는 PAP와 CHAP 두 가지 프로토콜을 사용할 수 있습니다. PAP(Password Authentication Protocol)는 비밀번호 인증에 사용되며, 로그인 방식이 일반 계정 로그인과 유사합니다. 원격 시스템은 고정된 사용자 이름과 비밀번호를 사용해 인증하고 데이터에 접근합니다. 반면 CHAP은 '챌린지(challenge)' 방식을 통해 인증을 수행합니다.
CHAP의 핵심 보안 기능
CHAP에서 비밀(secret)의 평문은 클라이언트와 서버 양쪽 모두가 알고 있어야 하지만, 그 외 어떤 당사자와도 절대 교환되어서는 안 됩니다. 즉, 비밀 정보 자체가 네트워크 링크를 통해 전송되지 않으므로 도청이나 재전송 공격으로부터 보호할 수 있습니다. 이러한 이유로 CHAP은 PAP보다 훨씬 강력한 보안성을 제공합니다.
PAP와 CHAP의 차이점
PAP는 비밀번호를 평문(plain-text) 형태로 그대로 전송하는 가장 기본적인 인증 방식으로, 추가적인 보안 장치가 없습니다. 반면 CHAP은 비밀 값을 회선상으로 전송하지 않기 때문에 훨씬 안전합니다. 따라서 네트워크에서 PAP와 CHAP 인증이 모두 활성화된 경우에는 항상 CHAP 인증이 우선 적용됩니다. 참고로 PAP는 대화형 요소가 없어 인증 속도가 빠르다는 장점이 있어, 일부 ISP에서 아직 사용되기도 합니다.
MS-CHAP의 보안성과 폐기(deprecated) 여부
MS-CHAP v1은 공식적으로 폐기(deprecated)된 프로토콜입니다. 자세한 내용은 Microsoft 기술 자료 문서 926170을 참조하시기 바랍니다. 중간자(man-in-the-middle) 공격은 공격자가 두 사용자 사이의 통신을 사용자가 알아차리지 못한 상태에서 자신의 컴퓨터를 경유하도록 우회시키는 공격 기법을 말합니다. 과거 다이얼업 환경에서는 중간에서 통신을 가로챌 가능성이 낮았지만, 오늘날의 네트워크 환경에서는 암호화되지 않은 인증 방식은 심각한 보안 위협이 될 수 있습니다.
Cisco 환경에서의 PAP 설정
PAP는 P2P(지점 간) 네트워크에서 포인트 투 포인트 통신을 통한 인증을 가능하게 하는 프로토콜입니다. Cisco의 Packet Tracer 소프트웨어를 사용하면 두 라우터 간에 PAP 인증을 손쉽게 구성하고 실습해 볼 수 있습니다.
SPAP(Shiva Password Authentication Protocol)란?
PAP는 암호화되지 않은 비밀번호를 사용하는 가장 단순한 인증 방식 중 하나입니다. SPAP(Shiva Password Authentication Protocol)는 Shiva사가 PAP의 보안을 한층 강화하기 위해 개발한 솔루션입니다. 레거시 장비나 SPAP를 요구하는 구형 시스템을 사용할 때는 해당 프로토콜을 함께 지원하는 것이 좋은 선택으로 여겨집니다.