중간자 공격
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
중간자 공격은 통신 당사자 사이에서 공격자가 메시지를 가로채거나 조작하는 방식으로 이루어지는 사이버 공격이다. 공격자는 앨리스와 밥 사이의 통신을 가로채 앨리스에게 밥의 공개 키를 위조하여 전달하거나, 앨리스의 메시지를 가로채 내용을 수정하여 밥에게 전달하는 방식으로 정보를 탈취한다. 이러한 공격을 막기 위해서는 공개 키의 진위 여부를 확인하는 절차가 필요하다. 중간자 공격은 HTTPS 스푸핑, SSL/TLS 스트리핑, ARP 스푸핑, DNS 스푸핑 등 다양한 형태로 나타나며, Dsniff, Cain and Abel, Ettercap, Karma, SSL Strip, Mallory 등 여러 도구를 통해 수행된다. 중간자 공격에 대한 방어는 공개 키 기반 구조(PKI), 상호 인증, 변조 탐지 기술을 활용하며, 네트워크 포렌식 분석을 통해 공격 여부를 판단할 수 있다. 실제 사례로는 디지노타 보안 침해, 노키아 익스프레스 브라우저의 HTTPS 트래픽 해독, 카자흐스탄 정부의 HTTPS 트래픽 검사 요구 등이 있다.
더 읽어볼만한 페이지
- 첩보 기술 - 방첩
방첩은 적대 세력의 스파이 활동, 파괴 행위, 전복, 테러 등을 방지하고 무력화하는 활동이며, 수사, 작전, 정보 수집, 분석 등을 통해 자국 내 취약점을 파악하고 적대 세력의 시도를 차단하는 임무를 수행한다. - 첩보 기술 - 방범
방범은 개인, 지역사회, 국가 차원에서 범죄를 예방하고 사회 안전을 확보하기 위한 활동으로, 물리적/사회적 환경 개선, 기술 활용 시스템 도입, 제도적 노력, 홍보 활동 등을 포함한다. - 전송 계층 보안 - 공개 키 기반 구조
공개 키 기반 구조(PKI)는 공개 키 암호화를 기반으로 안전한 통신과 개체 식별을 가능하게 하는 기술로서, 디지털 인증서를 통해 공개 키를 특정 개체에 연결하고 인증서를 관리하며, 인증 기관(CA), 등록 기관(RA) 등 다양한 구성 요소로 이루어져 인증서 발급, 관리, 배포, 사용 및 폐기와 관련된 역할, 정책, 하드웨어, 소프트웨어 및 절차의 집합을 포함한다. - 전송 계층 보안 - HTTPS
HTTPS는 HTTP에 보안 기능이 더해진 통신 규약으로, 웹 브라우저와 서버 간 통신을 암호화하여 보안을 강화하지만, 인증서 비용, 서버 부하, 혼합 콘텐츠 문제 등의 단점도 존재한다. - 취약점 공격 - 보안 취약점
보안 취약점은 시스템의 설계, 구현, 운영, 관리상 결함이나 약점으로, 위협에 의해 악용되어 시스템 보안 정책을 위반할 수 있는 요소이며, ISO 27005, IETF RFC 4949, NIST SP 800-30, ENISA 등 다양한 기관에서 정의하고 있다. - 취약점 공격 - 인터넷 보안
인터넷 보안은 사이버 위협, 악성 소프트웨어, 서비스 거부 공격 등으로부터 정보와 시스템을 보호하기 위해 네트워크 계층 보안, 다단계 인증, 방화벽 등 다양한 기술과 방법을 포괄한다.
중간자 공격 |
---|
2. 중간자 공격의 예시
앨리스가 밥과 통신을 하려고 할 때, 맬러리가 중간에 끼어들어 메시지를 가로채고 조작하는 상황을 예로 들어 설명한다.
1. 앨리스가 밥에게 공개 키를 요청한다.
2. 맬러리가 이 요청을 가로채 자신의 공개 키를 앨리스에게 전달한다. 앨리스는 맬러리의 키가 밥의 키라고 믿는다.
3. 밥은 앨리스의 요청 메시지를 받고 자신의 암호화 키를 보낸다.
4. 맬러리는 밥의 키를 자신의 키로 바꾸어 앨리스에게 전달한다.
5. 앨리스는 맬러리의 키를 밥의 키라고 생각하고 메시지를 암호화하여 보낸다.
6. 맬러리는 앨리스의 메시지를 자신의 키로 해독하고, 내용을 읽거나 변경한다.
7. 맬러리는 밥의 키로 메시지를 다시 암호화하여 밥에게 전달한다.
8. 밥은 이 메시지가 앨리스로부터 온 안전한 통신이라고 생각한다.
이러한 과정은 다음과 같이 도식화할 수 있다.
- 앨리스 ''"안녕 밥, 앨리스야. 내 암호 키를 줘."'' → 맬러리 밥
- 앨리스 맬러리 ''"안녕 밥, 앨리스야. 내 암호 키를 줘."'' → 밥
- 앨리스 맬러리 ← ''[밥의 키]'' 밥
- 앨리스 ← ''[맬러리의 키]'' 맬러리 밥
- 앨리스 ''"버스 정류장에서 만나!" [맬러리의 키로 암호화]'' → 맬러리 밥
- 앨리스 맬러리 ''"공원에서 만나!" [밥의 키로 암호화]'' → 밥
이 예시는 앨리스와 밥이 서로의 공개 키를 실제로 사용하고 있는지, 공격자의 공개 키를 사용하고 있지 않은지를 확인하는 수단이 필요하다는 것을 보여준다.[13]
3. 중간자 공격의 유형
중간자 공격(MITM)은 크게 다음과 같은 유형으로 나눌 수 있다.
- HTTPS 스푸핑: 공격자는 가짜 SSL/TLS 인증서를 사용하여 피해자가 자신의 연결이 안전하다고 믿도록 속인다.
- SSL/TLS 스트리핑: HTTPS 트래픽을 HTTP로 다운그레이드하여 암호화되지 않은 데이터를 가로챈다.
- ARP 스푸핑: 가짜 ARP 메시지를 보내 공격자의 MAC 주소를 대상 IP에 연결하여 로컬 네트워크 트래픽을 가로챈다.
- DNS 스푸핑/포이즈닝: DNS 쿼리를 악성 서버로 리디렉션하여 피해자를 가짜 웹사이트로 유도한다.
- 세션 하이재킹: 활성 세션에서 합법적인 사용자로 가장하기 위해 세션 쿠키 또는 토큰을 훔친다.
- 브라우저 중간자 공격 (MITB): 멀웨어는 브라우저 활동을 변경하여 실시간으로 트랜잭션을 가로채거나 조작한다.
- 와이파이 MITM (악성 트윈 공격): 연결된 장치의 통신을 가로채기 위해 가짜 Wi-Fi 핫스팟을 만든다.
- 재전송 공격: 유효한 데이터를 캡처하여 다시 전송하여 작업을 반복하거나 통신을 방해한다.
- 가짜 인증 기관 (CA): 사기 CA를 사용하여 가짜 인증서에 서명하여 피해자가 악성 연결을 신뢰하도록 속입니다.
3. 1. 이메일 하이재킹
갑이 을과 통신하려고 할 때, 병이 중간에 끼어들어 을에게 잘못된 메시지를 전달한다. 먼저 갑이 을에게 공개키를 요청한다. 을이 갑에게 을의 암호 키를 보낼 때, 병이 이 사이에 끼어들 수 있다면 중간자 공격이 시작된다. 병은 갑에게 자신의 암호 키를 보내며, 갑은 자신이 받은 키가 을의 암호키라고 믿게 된다.갑 | 병 | 을 |
---|---|---|
"안녕 을! 너의 암호 키 좀 줘!" → | 을 | |
"안녕 을! 너의 암호 키 좀 줘!" → | 을 | |
← [을의 암호 키] | 을 | |
← [병의 암호 키] | 을 | |
"버스 정류장에서 봐!"(병의 암호 키로 암호화한 암호문) → | 을 | |
"지하철 6번 출구에서 봐!"(을의 암호 키로 암호화한 암호문) → | 을 |
4. 방어 및 탐지 방법
공개 키 기반 구조(PKI)를 통한 상호 인증, 강력한 암호키 사용, 대기 시간 점검, 다른 보안 채널 검증, one-time pads 같은 방법들이 중간자 공격을 방어하는 데 사용된다. 양자암호는 양자역학적 특성을 활용하여 공격자가 키를 읽으려는 시도를 감지하고 데이터를 무효화하여 도청 없는 통신을 가능하게 한다.[18]
중간자 공격은 인증과 변조 탐지 두 가지 방법으로 예방하거나 탐지할 수 있다. 인증은 메시지가 합법적인 출처에서 왔음을 확인해주고, 변조 탐지는 메시지가 변경되었을 가능성을 보여준다. 인터록 프로토콜을 제외하고, 중간자 공격에 안전한 모든 암호 시스템은 보안 채널을 통해 추가 정보를 교환하거나 전송해야 한다. 다양한 키 합의 절차는 이러한 보안 채널의 요구 사항에 맞춰 개발되었다.
중간자 공격 방어를 위한 인증 기술에는 공개 키 기반 구조, 더 강력한 상호 인증, 비밀 키 (높은 정보량의 비밀), 패스워드 (낮은 정보량의 비밀), 음성 인식이나 생체 인식 등 다른 요소의 이용, 인스턴트 메시징을 위한 기록 외 메시징 등이 있다.
공개 키는 인증 기관이나 웹 오브 트러스트를 통해 확인될 수 있으며, DH 키 교환 같은 공통 키 배송 기술도 안전하게 사용될 수 있다.
4. 1. 인증
공개 키 기반 구조는 중간자 공격(MITM)을 방어하는 주요 기술 중 하나로, 상호 인증을 통해 이루어진다. 이 방식에서는 사용자의 기기뿐만 아니라 애플리케이션도 서로를 평가하고 판단한다.[15]전송 계층 보안과 같은 공개 키 기반 구조는 전송 제어 프로토콜을 강화하여 MITM 공격을 막을 수 있다. 클라이언트와 서버는 인증 기관(CA)이라는 신뢰받는 제3자가 발행하고 검증하는 인증서를 교환한다. 이 CA의 인증 키가 공격받지 않았다면, CA가 발행한 인증서를 통해 메시지를 보낸 사람을 인증할 수 있다. 서버와 클라이언트 모두 서로의 통신을 검증하는 상호 인증을 사용하면 MITM 공격의 양쪽 끝을 모두 처리할 수 있다. 하지만 대부분의 연결에서는 서버만 인증하는 것이 기본 동작이므로, 상호 인증이 항상 사용되지 않아 MITM 공격이 발생할 수 있다.[15]
공유 값에 대한 구두 의사 소통(예: ZRTP)이나 공개 키 해시의 오디오/비주얼 녹화와 같은 증명[16]은 MITM 공격을 막는 데 사용된다. 시각적 미디어가 데이터 패킷 통신보다 훨씬 어렵고 시간이 많이 걸리기 때문이다. 그러나 이러한 방법은 거래를 시작하기 위해 사람이 개입해야 한다.
HTTP 공개 키 고정(HPKP)은 서버가 첫 거래 중에 "고정된" 공개 키 해시 목록을 제공하여 인증 기관 자체가 손상되는 MITM 공격을 방지한다. 후속 거래에서는 서버가 목록에 있는 하나 이상의 키를 사용해야 거래가 인증된다.
DNSSEC는 DNS 프로토콜을 확장하여 서명을 통해 DNS 레코드를 인증함으로써, 클라이언트가 악의적인 IP 주소로 리디렉션되는 간단한 MITM 공격을 방지한다.
인터록 프로토콜을 제외하고, '''중간자 공격'''에 안전한 모든 암호 시스템은 보안 채널 상에서 추가 정보 교환이나 전송이 필요하다. 보안 채널의 서로 다른 보안 요구 사항에 대응하기 위해 다양한 키 합의 절차가 개발되었다.
4. 2. 변조 탐지
양자 암호화는 이론적으로 복제 불가능성 정리를 통해 거래에 대한 변조 증거를 제공한다.[18] 양자 암호화 기반 프로토콜은 일반적으로 무조건 안전한 인증 체계를 사용하여 고전적인 통신의 일부 또는 전체를 인증한다. 예를 들어 웨그만-카터 인증이 있다.[18]지연 시간 검사는 해시 함수와 같이 수십 초에 이르는 긴 계산에서 공격을 탐지할 수 있다.[17] 잠재적인 공격을 탐지하기 위해 당사자들은 응답 시간의 불일치를 확인한다. 예를 들어, 두 당사자가 특정 거래를 수행하는 데 정상적으로 특정 시간이 걸린다고 가정할 때, 한 거래가 상대방에게 도달하는 데 비정상적으로 오랜 시간이 걸린다면, 이는 제3자가 연결을 방해하고 거래에 추가적인 지연 시간을 삽입하고 있다는 징후일 수 있다.
4. 3. 포렌식 분석
캡처된 네트워크 트래픽을 분석하여 중간자 공격 여부를 판단하고, 공격이 있었다면 그 출처를 파악할 수 있다. 네트워크 포렌식을 수행할 때 분석해야 할 중요한 증거는 다음과 같다.[19]분석 대상 | 분석 내용 |
---|---|
서버의 IP 주소 | |
서버의 DNS 이름 | |
서버의 X.509 인증서 |
5. 실제 사례
스팅레이 전화 추적기는 무선 통신 사업자 기지국을 모방하여 주변의 모든 휴대폰 및 셀룰러 데이터 장치가 연결되도록 하는 휴대 전화 감시 장치이다. 이 추적기는 휴대폰과 기지국 간의 모든 통신을 중계한다.[20]
2011년, 네덜란드 인증 기관인 디지노타의 보안 침해로 인해 공개 키 인증서가 사기적으로 발급되었다. 그 후, 사기 인증서는 중간자 공격을 수행하는 데 사용되었다.[21]
2013년, 노키아의 익스프레스 브라우저가 노키아의 프록시 서버에서 HTTPS 트래픽을 해독하여 회사에서 고객의 암호화된 브라우저 트래픽에 평문으로 접근할 수 있다는 사실이 밝혀졌다. 노키아는 콘텐츠가 영구적으로 저장되지 않으며, 개인 정보에 대한 접근을 방지하기 위한 조직적, 기술적 조치를 취했다고 답변했다.[22]
2017년, 이쿼팩스는 MITM 취약성에 대한 우려로 인해 모바일 앱을 철수했다.[23]
무선 통신 프로토콜인 블루투스 역시 무선으로 데이터를 전송하기 때문에 중간자 공격에 취약하다.[24]
다른 주목할 만한 실제 구현 사례는 다음과 같다.
6. 암호학 외 중간자 공격
2003년 벨킨 무선 네트워크 라우터는 HTTP 연결을 가로채 목적지 서버인 것처럼 행동하는 중간자 공격을 수행했다. 또 다른 예로, 스팸 발송자가 CAPTCHA 문제를 풀기 위해 사용자를 이용하는 튜링 포르노 농장이 있다. 스팸 발송자는 포르노 사이트를 개설하고, 사용자가 이 사이트에 접근하기 위해 CAPTCHA 문제를 해결하도록 유도한다.
6. 1. 벨킨 무선 네트워크 라우터
2003년에 벨킨(Belkin)사의 802.11 무선 랜라우터의 한 버전에서 주목할 만한 비암호 중간자 공격이 발생했다. 이 라우터는 때때로 통과하는 HTTP 연결을 가로챘다. 이는 트래픽을 목적지로 보내지 않고, 자신이 서버로서 응답했다. 사용자가 요청한 웹페이지 대신 전송된 응답 내용은 벨킨사의 다른 제품의 광고였다. 기술적 지식이 있는 사용자의 항의 후, 이 "특성"은 라우터의 펌웨어 새 버전에서 제거되었다.6. 2. 튜링 포르노 농장
스패머가 CAPTCHA를 통과하기 위해 사용하는 방법으로, 비암호화 중간자 공격의 한 예시이다. 스패머는 사용자가 접속하려면 CAPTCHA 질문에 답해야 하는 포르노 사이트를 만든다. 2006년까지는 이 공격이 이론적인 수준에 머물렀으나, 2007년 10월 스패머가 야후 웹 메일 서비스의 CAPTCHA를 입력하면 포르노 이미지를 제공하는 윈도우 게임을 만들었다는 사실이 뉴스 기사를 통해 알려졌다. 이 게임을 통해 스패머는 스팸 메일 발송에 필요한 임시 무료 이메일 계정을 생성할 수 있었다.[1]7. 중간자 공격 도구
- Dsniff: SSH와 SSL 중간자 공격을 위한 도구이다.[1]
- Cain and Abel: 윈도 GUI 기반 도구로 스니핑(sniffing)과 ARP 스푸핑을 이용해 중간자 공격을 수행한다.[2]
- Ettercap: LAN 기반 중간자 공격을 위한 도구이다.[3]
- Karma: 802.11 Evil Twin 공격을 사용하여 중간자 공격을 수행하는 도구이다.[4]
- Air-Jack: 802.11 기반으로 중간자 공격을 수행하는 도구이다.[5]
- SSL Strip: SSL 기반 중간자 공격 도구이다.
- SSL Sniff: SSL 기반 중간자 공격 도구이다. 원래는 인터넷 익스플로러의 결함을 찾기 위해 만들어졌다.
- Intercepter-NG: ARP poisoning 기능으로 윈도 네트워크 비밀번호를 알아내는 도구이다. SSLStrip과 SSL 기반 중간자 공격을 포함한다.
- Mallory: TCP와 UDP MiTMing proxy이다. MiTM SSL, SSH, 다른 프로토콜로 확장 사용 가능하다.
- wsniff: 802.11 HTTP/HTTPS 기반 중간자 공격을 위한 도구이다.[6]
- 스팅레이: 휴대폰에 대한 중간자 공격을 수행하는 장치이다.
참조
[1]
웹사이트
Monsters in the Middleboxes: Introducing Two New Tools for Detecting HTTPS Interception
https://blog.cloudfl[...]
2019-03-18
[2]
학위논문
Usable Authentication Ceremonies in Secure Instant Messaging
https://sec.cs.univi[...]
Technische Universität Wien
2018-04-23
[3]
웹사이트
Fact Sheet: Machine-in-the-Middle Attacks
https://www.internet[...]
Internet Society
2020-03-24
[4]
컨퍼런스
Why TLS Is Better Without STARTTLS: A Security Analysis of STARTTLS in the Email Context
https://www.usenix.o[...]
2021-08-13
[5]
웹사이트
Manipulator-in-the-middle attack
https://owasp.org/ww[...]
OWASP Foundation
2022-08-01
[6]
웹사이트
MitM
https://developer.mo[...]
Mozilla
2022-08-01
[7]
웹사이트
Person-in-the-middle
https://www.cyber.go[...]
2020-10-11
[8]
웹사이트
From cookie theft to BEC: Attackers use AiTM phishing sites as entry point to further financial fraud
https://www.microsof[...]
2022-07-12
[9]
학술지
Development of field programmable gate array–based encryption module to mitigate man-in-the-middle attack for nuclear power plant data communication network
2018-06-01
[10]
학술지
Detection of man-in-the-middle attacks using physical layer wireless security techniques: Man-in-the-middle attacks using physical layer security
https://onlinelibrar[...]
2014-10-01
[11]
웹사이트
How to defend yourself against MITM or Man-in-the-middle attack
http://hackerspace.l[...]
2014-11-25
[12]
학술지
Man-in-the-Middle Attack to the HTTPS Protocol
[13]
웹사이트
diffie hellman - MiTM on RSA public key encryption
https://crypto.stack[...]
[14]
학술지
Secure Communications Over Insecure Channels
1978-04
[15]
문서
“Energy Efficient Lightweight Mutual Authentication Protocol (REAP) for MBAN Based on Genus-2 Hyper-Elliptic Curve.” Wireless Personal Communications 109(4):2471–88.
2019
[16]
논문
Public Key Infrastructure based on Authentication of Media Attestments
2013-11-28
[17]
서적
2009 Third International Conference on Emerging Security Information, Systems and Technologies
2009
[18]
웹사이트
5. Unconditionally secure authentication
http://www.lysator.l[...]
[19]
웹사이트
Network Forensic Analysis of SSL MITM Attacks
http://www.netresec.[...]
2011-03-27
[20]
잡지
Florida Cops' Secret Weapon: Warrantless Cellphone Tracking
https://www.wired.co[...]
2014-06-23
[21]
잡지
DigiNotar Files for Bankruptcy in Wake of Devastating Hack
https://www.wired.co[...]
2019-03-22
[22]
웹사이트
Nokia: Yes, we decrypt your HTTPS data, but don't worry about it
http://gigaom.com/20[...]
Gigaom, Inc.
2013-01-10
[23]
웹사이트
Here's Why Equifax Yanked Its Apps From Apple And Google Last Week
https://www.fastcomp[...]
2017-09-15
[24]
서적
2012 International Conference on Computing, Communication and Applications
IEEE
2012-02
[25]
웹사이트
NSA disguised itself as Google to spy, say reports
https://www.cnet.com[...]
2024-05-08
[26]
웹사이트
Comcast using man-in-the-middle attack to warn subscribers of potential copyright infringement
https://www.techspot[...]
2015-11-23
[27]
웹사이트
Comcast still uses MITM javascript injection to serve unwanted ads and messages
https://www.privatei[...]
2016-12-28
[28]
웹사이트
Comcast continues to inject its own code into websites you visit
https://thenextweb.c[...]
2017-12-11
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com