무슨 일이 있었나
표준 /crawl 엔드포인트에 있던 Crawl4AI의 SSRF 대상 검증이 스트리밍 크롤 코드 경로에 적용되지 않아 공격자 제어 시드 URL이 검사를 완전히 우회할 수 있었습니다.
왜 중요한가
AI 크롤링 서비스에 대한 SSRF는 클라우드 메타데이터 엔드포인트 및 내부 관리 인터페이스에 도달하는 데 사용될 수 있으며, 더 광범위한 AI 인프라로 피벗하는 데 사용할 수 있는 클라우드 자격 증명을 유출할 수 있습니다 — 일관되지 않게 적용되는 보안 제어(한 코드 경로에는 존재하지만 다른 경로에는 없음)는 일반적인 실제 근본 원인입니다.
공격 경로
Docker API 서버는 비스트리밍 /crawl 경로에 SSRF 대상 검사를 적용하지만 스트리밍 경로에는 적용하지 않습니다. handle_stream_crawl_request는 시드 URL을 대상 검증 없이 크롤러에 직접 전달하여 공격자가 요청을 내부 서비스 또는 클라우드 메타데이터 엔드포인트로 향하게 할 수 있습니다.
영향받는 시스템
Crawl4AI (unclecode/crawl4ai) Docker API 서버, 0.9.0 이전 버전
완화 방안
Crawl4AI >= 0.9.0으로 업그레이드하세요. 애플리케이션 계층 수정과 관계없이 크롤러 워커에 네트워크 계층 이그레스 제한을 적용합니다.