Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
cve-replay — 고정된 urllib3 릴리스 전반에 걸친 CVE-2026-44431의 독립적인 오프라인 회귀 테스트로, 원래 보고자 출처 표기를 포함합니다. | Kitploit
도구/GitHubGitHub/ssh-pur66/cve-replay
Defensive ToolsStatic AnalysisVulnerability AnalysisWeb SecurityPapers & ResearchLearning & EducationLabs & Practice
GitHubssh-pur66/cve-replay

cve-replay

고정된 urllib3 릴리스 전반에 걸친 CVE-2026-44431의 독립적인 오프라인 회귀 테스트로, 원래 보고자 출처 표기를 포함합니다.

저장소 보기
33일 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
웹사이트

CVE 재현: 리다이렉트 헤더 경계

CVE-2026-44431 · urllib3 2.6.3 → 2.7.0 · 2026년 9월 27일 재현

하나의 요청이 세 개의 민감한 헤더를 특정 오리진으로 전달한다. 리다이렉트로 목적지가 바뀐다. 다음 요청에도 여전히 그 헤더들이 실려 있을까?

이 독립적인 회귀 테스트는 정확히 두 개의 urllib3 릴리스에서 실제 리다이렉트 구현을 실행한다. 버전 2.6.3은 영향을 받는 저수준 API를 통해 세 개의 헤더를 모두 유지한다. 버전 2.7.0은 이를 제거한다. 무해한 헤더는 살아남고, 일반 요청도 여전히 동작한다.

측정 결과

픽스처urllib3 2.6.3urllib3 2.7.0
저수준 교차 오리진 리다이렉트민감한 헤더 3개 유지0개 유지
소문자 이름을 사용한 동일 케이스3개 유지0개 유지
고수준 API 대조군0개 유지0개 유지
직접 200 응답의도대로 3개 유지의도대로 3개 유지
리다이렉트 명시적 비활성화호출 1회; 302 반환호출 1회; 302 반환
사용자 지정 제거 집합에 무해한 마커 추가헤더 4개 모두 유지4개 모두 제거

12/12 시나리오 기대치 통과. 각 시나리오는 응답 상태, 전송 호출 횟수, 초기 헤더 집합, 무해한 헤더 결과, 그리고 호출자의 헤더가 변경되지 않았는지도 확인한다. 취약한 결과는 통과하는 보안 검사가 아니라 예상된 기준선 결과다.

기계 판독 가능 결과에는 캡처된 인수, 정확한 wheel 해시, 런타임, 테스트 소스 해시, 출처 표기, 재현 시각이 포함된다.

공개된 이슈

2026년 5월 7일 공개된 업스트림 권고는 urllib3의 프록시 경유 저수준 리다이렉트 경로에서의 정보 노출 문제를 식별한다. 영향을 받는 버전으로 >=1.23, <2.7.0을 나열한다. ProxyManager.connection_from_url(...).urlopen(..., assert_same_host=False)를 호출하면 구성된 민감한 헤더가 다른 오리진으로의 리다이렉트된 요청에 실려 갈 수 있었다. 고수준 매니저 API는 이미 이를 제거하고 있었다.

업스트림 수정은 재귀적 저수준 요청 전에 Retry.remove_headers_on_redirect를 적용한다. 우리의 소문자 헤더 케이스는 헤더 이름 대소문자에 대한 업스트림 회귀 테스트의 주의를 따른다. 사용자 지정 제거 케이스는 이 규칙이 세 가지 기본 이름에 그치지 않고 구성된 집합을 존중하는지 확인한다.

권고는 christos-cantina-security를 보고자로, illia-v를 조정자로, sethmlarson을 수정 검토자로 명시한다. 여기서 Sergio Rodriguez의 기여는 독립적인 오프라인 하네스와 전후 분석이다. 이는 그들이 공개한 CVE의 재현이다.

픽스처 재현

Python 3.10 이상을 사용한다. pip install이나 가상 환경은 필요하지 않다. 각 버전은 새로 격리된 서브프로세스에서 순수 Python wheel로부터 직접 임포트된다.

포트폴리오 저장소 루트에서:

python -B ./labs/cve-replay/run_replay.py --fetch
python -B ./labs/cve-replay/run_replay.py

첫 번째 명령은 두 개의 정확한 wheel을 랩의 무시된 .cache/wheels/ 디렉터리로 다운로드하고 매니페스트에 대해 SHA-256 해시를 검사한다. 두 번째 명령은 다운로드 없이 해당 캐시를 사용한다. 독립적인 소스 체크아웃의 경우 python -B run_replay.py --fetch를 실행한 다음 --fetch 없이 같은 명령을 실행한다. --cache는 다른 로컬 캐시 디렉터리를 받는다.

모의가 시작되는 지점

HTTPConnectionPool._make_request는 두 개의 응답을 주는 전송으로 대체된다: 고정된 location을 가진 302, 그다음 200. 픽스처는 그 경계에 도달하는 인수를 캡처한다. urllib3의 파싱, 재시도 정책, 헤더 필터링, 재귀적 리다이렉트 처리는 선택된 wheel에서 변경 없이 실행된다.

모든 목적지는 고정된 예약 .invalid 이름이며, 모든 헤더 값은 DUMMY로 시작한다. 소켓 생성과 DNS 함수는 즉시 예외를 발생시킨다. 라이브러리의 임포트 시점 IPv6 기능 탐지는 거부되고 별도로 기록되며, 재현 시나리오는 어떤 네트워크 작업도 시도하지 않는다. 수신 대기 서버나 라이브 대상은 없다.

이는 리다이렉트 인수 처리를 검증한다. 종단 간 프록시 트래픽을 측정하지는 않는다. 버전 2.7.0은 이 특정 CVE에 대한 첫 수정이다. 이 역사적 비교는 더 새로운 지원 릴리스 대신 이를 선택하라는 권장이 아니다.

출처 및 기여 표시

  • 메인테이너 권고 / CVE-2026-44431
  • 업스트림 수정 및 회귀 테스트
  • 영향받은 릴리스 소스
  • 수정된 릴리스 소스
  • urllib3 2.7.0 릴리스 노트
  • 고정된 패키지 URL, PyPI 메타데이터, 해시

픽스처 스크립트와 분석은 독자적인 포트폴리오 작업이다. urllib3는 MIT 라이선스로 배포되는 업스트림 프로젝트이며, 그 코드와 릴리스 wheel은 포트폴리오 소스 아카이브에 재배포되지 않는다. 이들은 PyPI에서 별도로 다운로드되어 실험을 위해 변경 없이 임포트된다.

도구 다운로드