Squid 웹 프록시에서 1997년 FTP 파싱 변경 코드를 기원으로 하는 결함이 29년 가까이 기본 구성 내에 잔존해 온 사실이 2026년 6월 22일 공개됐다. 해당 결함은 힙 오버리드로 동작하여 동일 프록시를 통과하는 정상 사용자의 평문 HTTP 요청과 자격증명을 메모리 노출 형태로 유출할 수 있는 것으로 분석된다. 본 글에서는 결함의 기술적 원인과 위협 시나리오 점검 절차 완화 조치를 정리한다.
- 1997년 FTP 파싱 변경에서 기원한 결함이 Squid 기본 구성에서 2026년 현재까지 활성화 상태로 잔존
- 힙 오버리드 메모리 노출을 통해 평문 HTTP 요청 자격증명 세션 토큰이 동일 프록시 사용자에게 노출 가능
- 프록시 인증 헤더와 컨텐츠 길이 경계 검사 누락이 핵심 원인으로 분석되며 즉각적인 점검과 패치 적용이 권고됨
29년 된 단일 결함이 기본 구성에서 장기간 살아남은 점은 메모리 안전성과 공급망 점검 체계의 재검토 필요성을 시사한다.
결함 개요 Squidbleed란 무엇인가
Squidbleed로 명명된 이번 결함은 Squid 웹 프록시의 컨텐츠 길이 처리 경계에서 발생하는 힙 오버리드 결함으로 보고됐다. 공격자는 동일한 Squid 프록시를 통과하는 정상 트래픽의 메모리 잔여 영역을 읽어 평문 HTTP 요청 본문과 인증 정보를 복원할 수 있는 것으로 분석된다.
CVE 식별 정보 및 영향 버전 범위
The Hacker News 2026년 6월 22일 보도에 따르면 결함은 기본 구성에서 활성화되어 있는 것으로 보도되었으며 영향 버전과 CVE 번호는 운영사 공지 및 배포판 패치 노트를 통해 확인이 필요하다. 정확한 CVE 번호와 영향 버전 범위는 배포판 별 패치 노트를 통해 재확인하는 것이 안전하다.
힙 오버리드 발생 조건과 트리거 경로
결함은 프록시 인증 헤더와 컨텐츠 길이 조합을 처리하는 코드 경로에서 경계 검사가 누락되어 발생한다. 특정 길이 값을 포함한 요청이 프록시를 통과하면 응답 버퍼 경계 너머의 힙 메모리가 읽혀 반환되며 이 과정에서 다른 사용자의 요청 데이터가 노출될 수 있는 것으로 분석된다.
기본 구성에서의 노출 가능성 요약
가장 우려되는 지점은 결함이 별도 설정 변경 없이 기본 구성에서도 트리거된다는 점이다. 이는 인증 기능을 사용하지 않는 환경에서도 메모리 노출이 발생할 수 있음을 의미하며 단일 결함의 영향 반경을 크게 확장한다.
29년간 살아남은 기술적 원인
장기 미해결 결함은 일반적으로 회귀 테스트 부족, 문서화 미비, 영향 평가 부재가 복합적으로 작용하는 것으로 알려져 있다. Squidbleed의 경우 FTP 프로토콜 파싱을 다루던 코드가 1997년 변경된 이후 컨텐츠 처리 경로에 그대로 남았던 것으로 파악된다.
1997년 FTP 파싱 변경의 역사적 맥락
1997년 FTP 파싱 로직이 변경될 당시에는 HTTP 트래픽 처리와 FTP 게이트웨이 기능이 동일한 코드 영역을 공유했다. 이후 HTTP 사용 비중이 폭증하면서 FTP 관련 경로는 점차 dead code로 전락했지만 경계 검사를 담당하는 일부 로직은 컨텐츠 길이 처리 흐름에 그대로 잔존한 것으로 분석된다.
프록시 인증 헤더 처리 경계 검사 누락 상세
결함의 정확한 트리거는 프록시 인증 Proxy-Authorization 헤더의 존재 여부와 컨텐츠 길이 값의 상호작용과 관련된 것으로 보도되었다. 헤더가 존재하는 요청에 대해 컨텐츠 길이 기반 버퍼 할당이 충분히 검증되지 않아 응답 시 인접 힙 영역을 읽게 되는 경로가 형성된 것으로 분석된다.
장기 미해결 결함의 공급망 시사점
29년이라는 시간은 단순한 코드 품질 문제를 넘어 오픈소스 구성 요소에 대한 공급망 가시성 부재를 드러낸다. 핵심 인터넷 인프라에서 단일 결함이 기본 구성에 장기간 잔존할 수 있다는 사실은 의존성 추적과 메모리 안전성 언어 전환 Rust C++ 리팩터링 같은 근본적 대응 필요성을 시사한다.
유출 위험과 실제 공격 시나리오
힙 오버리드로 인한 정보 노출은 요청 처리 순서에 따라 다양한 사용자 데이터가 누출될 수 있다. 특히 평문 HTTP를 강제하는 환경에서는 자격증명 세션 토큰이 그대로 노출될 위험이 있다.
평문 HTTP 요청 자격증명 세션 토큰 노출 메커니즘
HTTP Basic 인증과 같은 평문 자격증명 체계는 평문 HTTP 트래픽에 그대로 포함될 수 있다. 세션 토큰 또한 HTTPS 미적용 경로에서는 쿠키 등으로 평문 전송되며 힙 메모리 잔존 시 인접 트랜잭션의 값이 노출될 수 있는 것으로 분석된다.
공용 프록시 ISP 환경에서의 대규모 노출 가능성
ISP 또는 기업 환경에서 Squid가 공용 프록시로 운영되는 경우 동일 인스턴스를 통과하는 다수 사용자 트래픽이 단일 힙 영역을 공유할 수 있다. 이 경우 결함 트리거로 다수 사용자의 자격증명이 노출될 가능성이 있으며 대규모 정보 유출 사고로 이어질 수 있는 시나리오로 분석된다.
내부 침해 전제로 한 피해 확산 경로
결함을 악용하기 위해서는 동일 프록시를 통과하는 트래픽 발생 능력이 전제된다. 내부 네트워크에 이미 침투한 공격자가 추가 자격증명을 수집하거나 경계 외부의 사용자가 공용 프록시를 악용하는 시나리오가 가능한 것으로 분석된다.
영향 받는 환경 점검 방법
운영자는 자사 환경이 결함 영향 구간에 해당하는지 빠르게 식별해야 한다. 점검은 구성 확인 버전 확인 로그 검토의 세 축으로 진행할 수 있다.
| 점검 항목 | 확인 방법 | 판단 기준 |
|---|---|---|
| 기본 구성 사용 여부 | squid.conf 기본값 유지 검증 | 기본 경로 그대로인 경우 노출 위험 높음 |
| 영향 버전 여부 | squid -v 출력과 배포판 공지 대조 | 패치 미적용 버전은 위험 |
| 프록시 인증 헤더 처리 | Proxy-Authorization 정책 검토 | 허용 시 노출 표면 증가 |
| 로그 이상 징후 | access.log cache.log 비정상 길이 기록 검토 | 비정상 content length 다수 탐지 시 의심 |
기본 구성 여부 및 버전 확인 절차
운영자는 먼저 squid -v 명령으로 버전을 확인하고 배포판 또는 Squid 공식 공지의 패치 내역과 대조해야 한다. squid.conf가 기본값과 거의 동일하게 유지되어 있다면 결함 영향 구간에 해당할 가능성이 높다.
로그와 네트워크 모니터링 포인트
access.log에서 비정상적으로 긴 응답 본문 또는 비정상 content length 값이 기록되는지 확인한다. 네트워크 모니터링에서는 동일 클라이언트가 짧은 시간에 다수의 인증 헤더를 동반한 요청을 발생시키는 패턴을 탐지한다.
익스플로잇 흔적 식별을 위한 점검 항목
결함 악용 시도 흔적은 비정상 HTTP 응답 본문 길이 비정상 Referer User-Agent 조합 인증 헤더 반복 패턴 형태로 나타날 수 있다. 침해 사고 대응 관점에서 메모리 덤프 확보와 트래픽 캡처 보관이 권고된다.
완화 및 권고 조치
결함 완화는 패치 적용을 최우선으로 하되 패치 적용이 어려운 환경에서는 설정 변경과 모니터링 강화로 임시 대응한다.
패치 적용과 임시 설정 변경 가이드
Squid 배포 공지 기준 최신 패치를 우선 적용한다. 즉시 적용이 어려운 경우 프록시 인증 Proxy-Authorization 헤더를 비활성화하거나 외부 평문 HTTP 트래픽을 차단하는 정책을 임시로 적용할 수 있다. 다만 이러한 임시 조치는 운영 영향이 있을 수 있어 운영자 판단이 필요하다.
프록시 헤더 및 컨텐츠 길이 처리 강화
장기적으로는 입력 길이 검증 로직을 추가하고 인증 헤더 처리 정책을 명확히 한다. 가능한 경우 평문 HTTP 트래픽을 차단하고 HTTPS 강제 정책을 병행한다. WAF 또는 L7 프록시에서 Proxy-Authorization 헤더를 정규화하는 보조 조치도 효과적일 수 있다.
장기 메모리 안전성 개선 권고
근본적으로는 메모리 안전성을 보장하는 언어 전환 또는 안전한 라이브러리 도입이 권고된다. 또한 의존성 추적 도구 SCA 를 통해 핵심 인프라 구성 요소의 결함 가시성을 확보하고 정기적인 fuzzing과 경계 회귀 테스트를 자동화해야 할 것으로 분석된다.
핵심 정리
- Squidbleed는 1997년 FTP 파싱 변경에서 기원한 힙 오버리드 결함으로 기본 구성에서도 노출 가능성이 있는 것으로 분석된다
- 유출 대상은 평문 HTTP 요청 본문과 자격증명 세션 토큰이며 공용 프록시 환경에서 대규모 노출 위험이 존재한다
- 조치는 패치 적용을 최우선으로 하고 임시 설정 변경과 모니터링 강화로 보완하며 장기적으로 메모리 안전성 개선이 권고된다
참고 자료 The Hacker News – 29-Year-Old Squid Proxy Bug Squidbleed 및 SANS Internet Storm Center