[논문 리뷰] Off-Path Attacking the Web
이 논문은 Windows 및 기타 시스템에서 예측 가능한 IP-ID 값이 사용되는 바에 따라, 공격자가 브라우저나 서버의 취약성을 악용하지 않고도 크로스사이트 스크립팅, CSRF, 사이트 위변조 및 DoS 공격을 수행할 수 있는 실질적인 TCP 인젝션 공격를 수행할 수 있음을 보여준다. 주요 기여는 전역적으로 증가하는 IP-ID를 활용해 시퀀스 번호를 학습하고 기존 연결에 악성 패킷을 주입할 수 있는 사이드 채널 기법을 제안한 것이다. 이는 표준 보안 방어 조치를 우회할 수 있다.
We show how an off-path (spoofing-only) attacker can perform cross-site scripting (XSS), cross-site request forgery (CSRF) and site spoofing/defacement attacks, without requiring vulnerabilities in either web-browser or server and circumventing known defenses. Attacker can also launch devastating denial of service (DoS) attacks, even when the connection between the client and the server is secured with SSL/TLS. The attacks are practical and require a puppet (malicious script in browser sandbox) running on a the victim client machine, and attacker capable of IP-spoofing on the Internet. Our attacks use a technique allowing an off-path attacker to learn the sequence numbers of both client and server in a TCP connection. The technique exploits the fact that many computers, in particular those running Windows, use a global IP-ID counter, which provides a side channel allowing efficient exposure of the connection sequence numbers. We present results of experiments evaluating the learning technique and the attacks that exploit it. Finally, we present practical defenses that can be deployed at the firewall level; no changes to existing TCP/IP stacks are required.
연구 동기 및 목표
- 오프패스 공격자가 오직 IP 스푸핑만으로 TCP 보안 메커니즘을 우회할 수 있는지 조사하기 위해.
- 일반적인 운영체제(예: Windows)에서 예측 가능한 IP-ID 값이 TCP 시퀀스 번호를 학습하기 위한 사이드 채널로 악용될 수 있음을 입증하기 위해.
- 이러한 시퀀스 번호 폭 lộ가 SSL/TLS로 보호된 연결에서도 실질적이고 현실적인 공격(예: XSS, CSRF, DoS)을 가능하게 할 수 있음을 보여주기 위해.
- TCP/IP 스택이나 종단 장치의 변경 없이도 방화벽 수준에서 구현 가능한 방어 조치를 제안하기 위해.
- 완전한 실질적 공격이 입증되기 이전에도 선제적 취약성 공개 및 대응 조치가 필요하다고 주장하기 위해.
제안 방법
- 공격자는 위조된 IP 주소와 다양한 IP-ID를 가진 조작된 프로브 패킷을 사용하여 클라이언트의 반응을 모니터링한다.
- 공격자는 대상 TCP 연결의 현재 시퀀스 번호를 추론하기 위해 클라이언트의 반응 행동 변화(예: RST 또는 ACK 패킷)를 관찰한다.
- 이 방법은 Windows 및 일부 다른 시스템이 전역적으로 증가하는 IP-ID 카운터를 사용한다는 사실을 악용하며, 이는 시퀀스 번호 폭로를 위한 사이드 채널 역할을 한다.
- 프로브 패킷에 대한 반응의 시간 및 패턴을 분석함으로써 공격자는 대상 연결의 시퀀스 번호를 재구성한다.
- 이 기법을 사용해 악성 데이터를 TCP 스트림에 주입함으로써, 유효한 TCP 세그먼트를 위조함으로써 XSS 및 CSRF 공격을 수행할 수 있다.
- 방화벽 수준의 방어 조치로는 각 연결에 대해 키가 부여된 의사난수 함수를 사용해 IP-ID를 무작위화하여 관련성을 방지하는 것을 제안한다.
실험 결과
연구 질문
- RQ1오프패스 공격자가 오직 IP 스푸핑 기능만을 가진 상태에서 실질적인 TCP 인젝션 공격를 수행할 수 있는가?
- RQ2Windows와 같은 운영체제에서 예측 가능한 IP-ID 값이 TCP 시퀀스 번호를 추론하기 위한 사이드 채널로 얼마나 효과적으로 악용될 수 있는가?
- RQ3이러한 시퀀스 번호 폭로가 Same Origin Policy와 같은 핵심 웹 보안 메커니즘의 성공적 악용으로 이어질 수 있는가?
- RQ4SSL/TLS와 같은 기존 방어 조치가 이러한 저수준 공격을 충분히 방지할 수 있는가?
- RQ5TCP/IP 스택의 변경 없이도 구현 가능한 방화벽 수준의 효과적인 방어 조치를 도입할 수 있는가?
주요 결과
- 저자들은 전역적으로 증가하는 IP-ID를 가진 시스템(예: Windows)에서 IP-ID 사이드 채널을 사용해 오프패스 공격자가 TCP 시퀀스 번호를 학습할 수 있음을 성공적으로 입증했다.
- 이 기법은 SSL/TLS로 보호된 연결에서도 실질적인 악성 데이터 주입을 가능하게 하며, 효과적인 DoS 및 애플리케이션 계층 공격을 유도한다.
- 실험 결과 공격가 실현 가능하고 효과적이며, 특히 지연 시간이 낮을 경우 일반 네트워크 조건에서도 높은 성공률을 보였다.
- 공격는 Same Origin Policy를 우회하여 클라이언트 사이드 취약성이 없이도 크로스사이트 스크립팅 및 CSRF 공격를 가능하게 한다.
- 각 연결에 대해 키가 부여된 의사난수 IP-ID를 사용하는 제안된 방화벽 수준 방어 조치는 종단 장치나 TCP 스택의 변경 없이도 사이드 채널을 차단한다.
- 본 연구는 TCP와 같은 저수준 프로토콜의 이론적 취약성조차도 실질적인 공격 가능성이 입증된 바에 따라 선제적으로 대응해야 한다고 보여준다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.