MitM (Man in the Middle) 공격은 가해자가 사용자와 응용 프로그램간의 대화에서 자신을 도청하거나 당사자중 하나를 가장하여 일반적인 정보 교환처럼 보이게 하는 일반적인 용어입니다.
공격의 목표는 로그인 자격 증명, 계정 세부 정보 및 신용 카드 번호와 같은 개인 정보를 도용하는 것입니다. 대상은 일반적으로 금융 애플리케이션, SaaS 비즈니스, 전자 상거래 사이트 및 로그인이 필요한 기타 웹사이트 사용자입니다.
공격중에 얻은 정보는 신원 도용, 승인되지 않은 자금 이체 또는 불법적인 비밀번호 변경을 포함하여 많은 목적으로 사용될 수 있습니다.
또한 APT (Advanced Persistent Threat) 공격의 침투 단계에서 보안 경계 내부에서 발판을 확보하는데 사용할 수 있습니다.
대체로 MitM 공격은 우체부가 은행 계좌 명세서를 개설하고 계좌 정보를 기록한 다음 봉투를 다시 봉인하여 문으로 전달하는 것과 같습니다.
MitM 공격 진행
성공적인 MitM 실행에는 Interception와 Decryption이라는 두가지 단계가 있습니다.
Interception
첫번째 단계는 공격자가 의도한 대상에 도달하기 전에 공격자의 네트워크를 통해 사용자 트래픽을 가로챕니다.
가장 일반적이고 간단한 방법은 공격자가 공개적으로 악의적인 WiFi 핫스팟을 무료로 제공하는 수동 공격입니다. 일반적으로 해당 위치에 해당하는 방식으로 이름이 지정되며 비밀번호로 보호되지 않습니다. 피해자가 그러한 핫스팟에 연결되면 공격자는 온라인 데이터 교환에 대한 완전한 가시성을 얻습니다.
보다 적극적으로 차단에 접근하려는 공격자는 다음 공격중 하나를 시작할 수 있습니다.
▲ IP Spoofing은 IP 주소의 패킷 헤더를 변경하여 공격자가 자신을 응용프로그램으로 위장하는 것을 포함합니다. 결과적으로 응용프로그램에 연결된 URL에 액세스하려는 사용자는 공격자의 웹사이트로 전송됩니다.
▲ ARP Spoofing은 가짜 ARP 메시지를 사용하여 공격자의 MAC 주소를 근거리 통신망에 있는 합법적인 사용자의 IP 주소와 연결하는 프로세스입니다. 결과적으로 사용자가 호스트 IP 주소로 보낸 데이터는 대신 공격자에게 전송됩니다.
▲ DNS Cache Poisoning이라고도 하는 DNS Spoofing에는 DNS 서버에 침투하여 웹사이트의 주소 레코드를 변경하는 작업이 포함됩니다. 결과적으로 사이트에 액세스하려는 사용자는 변경된 DNS 레코드를 통해 공격자의 사이트로 전송됩니다.
Decryption
Interception후 사용자 또는 응용프로그램에 알리지 않고 양방향 SSL 트래픽을 해독해야 합니다. 이를 달성하기위한 여러가지 방법이 있습니다.
▲ HTTPS Spoofing은 보안 사이트에 대한 초기 연결 요청이 이루어지면 피해자의 브라우저로 가짜 인증서를 보냅니다. 브라우저는 손상된 응용프로그램과 관련된 디지털 지문을 가지고 있으며 브라우저는 기존의 신뢰할 수 있는 사이트 목록에 따라 확인합니다. 그런 다음 공격자는 응용프로그램으로 전달되기 전에 피해자가 입력한 모든 데이터에 액세스할 수 있습니다.
▲ SSL BEAST (SSL / TLS에 대한 브라우저 악용)는 SSL의 TLS 버전 1.0 취약점을 대상으로 합니다. 여기서 피해자의 컴퓨터는 웹 응용프로그램에서 보낸 암호화된 쿠키를 가로채는 악성 JavaScript에 감염되었습니다. 그런 다음 쿠키와 인증 토큰을 해독하기 위해 앱의 암호화 블록 체인 (CBC)을 가로채도록 됩니다.
▲ SSL 하이재킹은 TCP 핸드 셰이크 중에 공격자가 위조된 인증키를 사용자와 응용프로그램 모두에 전달할때 발생합니다. 이것은 실제로 중간에 있는 사람이 전체 세션을 제어할때 안전한 연결로 보이는 것을 설정합니다.
▲ SSL Stripping은 애플리케이션에서 사용자에게 전송된 TLS 인증을 차단하여 HTTPS 연결을 HTTP로 다운그레이드합니다. 공격자는 응용프로그램과의 보안 세션을 유지하면서 응용프로그램 사이트의 암호화되지 않은 버전을 사용자에게 보냅니다. 한편, 사용자의 전체 세션은 공격자가 볼 수 있습니다.
댓글 없음:
댓글 쓰기