피드로 돌아가기
Dev.toSecurity
원문 읽기
curl 허용 정책의 허점을 이용한 Remote Code Execution 및 Reverse Shell 확보
How a Simple HTTP Request Opened the Door to a Reverse Shell: Exposed OpenFang Instances
AI 요약
Context
OpenFang 에이전트가 명시적인 공격 패턴을 차단하는 Blacklist 기반 보안 체계를 운용함. 단순 명령어 필터링에 의존하여 도구의 실행 결과가 시스템에 미치는 연쇄적 영향력을 분석하지 못하는 아키텍처적 한계 노출.
Technical Solution
- 신뢰된 유틸리티인 curl을 통한 외부 리소스 fetch 요청 허용 정책 이용
- 공격 대상 서버에 Shell Command가 포함된 텍스트 파일을 호스팅하여 Payload 분리
- 에이전트가 단순 설정 파일 retrieval로 인식하게 하여 초기 보안 검사 단계 우회
- Fetch 완료 후 획득한 텍스트를 실행 컨텍스트에서 명령어로 해석하게 유도하는 Trampoline 구조 설계
- 초기 요청의 구문(Syntax)이 아닌 전체 실행 체인의 의미론(Semantics) 분석 부재를 공략한 Reverse Shell 연결
실천 포인트
- Blacklist 기반 필터링 대신 Allowlist 기반의 엄격한 명령어 실행 제어 적용 - curl, wget 등 외부 통신 도구 사용 시 응답 데이터의 실행 가능 여부를 검증하는 샌드박스 환경 구축 - 단순 요청 단계의 검증을 넘어 Retrieval부터 Execution까지 이어지는 Behavioral Chain 분석 모니터링 도입 - 에이전트 실행 권한을 최소화하여 Reverse Shell 확보 후의 Privilege Escalation 경로 차단