피드로 돌아가기
Dev.toSecurity
원문 읽기
Langflow RCE부터 K8s Node Escape까지 이어지는 풀체인 공격 분석
HackTheBox: FireFlow Writeup
AI 요약
Context
Langflow 1.8.2 버전의 샌드박스 미적용 엔드포인트를 통한 초기 침투 경로 확보. Kubernetes 기반의 MCP Tool Registry와 과도한 RBAC 권한 설정으로 인한 클러스터 내부 확산 구조적 취약점 존재.
Technical Solution
- CVE-2026-33017 취약점을 이용해 /api/v1/build_public_tmp 엔드포인트에 Python 코드를 주입하여 www-data 권한의 RCE 달성
- 환경 변수에 노출된 슈퍼유저 패스워드 재사용을 통한 nightfall 로컬 계정으로의 권한 상승
- MCP Registry의 JWT 검증 로직 중 'alg: none' 알고리즘 허용 설정을 악용한 Admin 토큰 위조 및 권한 획득
- Admin 권한으로 악성 MCP Tool을 등록하고 실행하여 Kubernetes mcp-server Pod 내부 쉘 획득
- mcp-sa 서비스 계정의 nodes/proxy 권한을 이용해 Kubelet API(Port 10250)에 직접 WebSocket exec 요청 전송
- Host FS가 마운트된 Privileged node-exporter Pod를 타겟팅하여 Node Root 권한으로 호스트 파일 시스템 접근
실천 포인트
- 외부 입력값이 포함된 Python 코드 실행 시 AST 분석 및 엄격한 샌드박스 환경 적용 여부 검토 - JWT 구현 시 'alg: none' 알고리즘을 명시적으로 금지하고 강한 서명 알고리즘 강제 적용 - Kubernetes Service Account에 'nodes/proxy'와 같은 과도한 권한 부여를 지양하고 Least Privilege 원칙 준수 - DaemonSet 형태의 모니터링 Pod(node-exporter 등)에 부여된 호스트 파일 시스템 마운트 권한 및 루트 실행 설정 재점검