피드로 돌아가기
Dev.toSecurity
원문 읽기
JS 번들 분석과 LFI를 통한 Root 권한 획득 공격 체인 분석
TryHackMe - VulnNet Writeup
AI 요약
Context
Apache 기반 웹 서버와 Virtual Host 라우팅을 사용하는 환경의 취약점 분석 사례임. JS 번들 내 하드코딩된 경로와 입력값 검증 미비로 인한 보안 허점이 존재함.
Technical Solution
- Webpack 번들 파일 내 하드코딩된
referer파라미터 경로를 통한 LFI 진입점 식별 - Path Traversal 기법으로
/etc/apache2/sites-enabled/000-default.conf및.htpasswd파일을 탈취하여 Virtual Host 구조와 계정 해시 확보 - Apache MD5(
$apr1$) 해시 크래킹을 통한developers계정의 Basic Auth 인증 우회 broadcast.vulnnet.thm가상 호스트 내 ClipBucket의beats_uploader.php취약점(EDB-44250)을 이용한 PHP Shell 업로드 및 RCE 실행- OS 레벨의
pkexec취약점(CVE-2021-4034 PwnKit)을 활용하여www-data권한에서 Root 권한으로 Privilege Escalation 수행
실천 포인트
- Webpack 등 빌드 도구 사용 시 프로덕션 환경에서 소스 맵 제거 및 민감한 경로 하드코딩 여부 검토 - 사용자 입력값이 파일 시스템 경로에 직접 영향을 주는 Sink 지점에 대해 Strict Whitelisting 적용 - Virtual Host 설정 시 중요 설정 파일(`.htpasswd` 등)에 대한 접근 제어 및 파일 시스템 권한 강화 - PolicyKit 등 OS 핵심 컴포넌트의 최신 보안 패치 적용 상태 정기 점검