일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 2018
- frida
- diva
- Reflected XSS
- Suninatas
- CTF-d
- 파이썬
- logstash
- beebox
- Docker
- Volatility
- igoat
- otter
- InsecureBank
- 안드로이드
- NTFS
- lord of sql injection
- Strings
- Openstack
- ESXi
- ctf
- MFT
- base64
- SQL Injection
- vulnhub
- XSS
- foremost
- 인시큐어뱅크
- elasticsearch
- kibana
- Today
- Total
Information Security
Dirty Pipe (CVE-2022-0847) 본문
Dirty Pipe(CVE-2022-0847)는 2022년 3월에 공개된 리눅스 로컬권한상승 취약점이다. 권한이 필요한 파일을 무단으로 수정할 수 있는 Dirty COW 취약점과 유사하면서 리눅스 커널의 Pipe 기능에서 발생하기 때문에 Dirty Pipe이라는 별칭이 붙었다. 5.8 버전 이상의 리눅스 커널에서 발생하며, 계정 정보 파일을 변조하는 등의 방법으로 관리자 권한 획득이 가능하다.
S/W 구분 | 취약 버전 |
Linux Kernel | 5.8 이상 5.16.11, 5.15.25, 5.10.102 이하 버전 |
Dirty Pipe PoC 소스코드를 다운받았다.
해당 파일은 아래와 같다.
커널 버전은 5.15.0이 라는 것을 아래와 같은 명령어를 통해 알 수 있다.
exploit2.c를 gcc 컴파일을 한다.
Dirty Pipe PoC 중 하나는 SUID 파일의 바이너리를 하이재킹하여 관리자 권한(Root Shell)을 획득할 수 있음을 보여준다.
/etc/passwd 파일을 확인할 수 있다.
1. 임의 파이프 생성 pipe( )
[파이프 생성]
2. “PIPE_BUF_FLAG_CAN_MERGE” 플래그 임의 설정
[플래그 설정]
3. 메모리 영역 병합
Splice 함수를 이용하여 대상 파일의 데이터를 파이프로 전송한다. 참조하는 Page Cache 의
offset 을 조정하여 기존 데이터가 입력되는 데이터에 의해 덮여 쓰이도록 하고 있다.
※“PIPE_BUF_FLAG_CAN_MERGE” 플래그는 초기화되지 않은 채로 남아있다.
[메모리 영역 병합]
4. 캐시 데이터 입력
파이프를 통해 입력되는 데이터로 대상 파일의 Page Cache 가 덮어쓰기4된다.
[캐시데이터 입력]
'CVE 취약점' 카테고리의 다른 글
Struts2 File Upload 취약점(CVE-2024-53677) (1) | 2025.01.17 |
---|---|
GitLab 임의 파일 읽기 취약점 (CVE-2023-2825) (0) | 2023.08.12 |
Microsoft MSHTML 취약점 (CVE-2021-40444) (0) | 2021.09.20 |
PrintNightmare 취약점 (CVE-2021-1675, CVE-2021-34527 ) (0) | 2021.09.19 |
Linux SUDO Baron Samedit 취약점 (CVE-2021-3156) (0) | 2021.02.01 |