[Kernel] ret2usr
sangjun
·2021. 7. 20. 23:19
Ret2usr
조건 : SMEP, SMAP 보호기법이 걸려있지 않을 때 사용가능하다.
Kernel Space에서 LPE를 일으켜 권한을 상승한 뒤 --> User Space에 있는 /bin/sh를 실행하는 코드 영역으로 쫨프하는 것
페이로드
1. commit_creds(prepare_kernel_cred(0))
--> 권한 상승
2. swapgs
3. rsp를 유저공간 스택으로 전환
4. iretq
주의할점 : 페이로드를 보내기 전에 backup_rv()함수를 통해 현재 레지스터 레이아웃 저장해놓기.
즉, 현재 스택이랑 레지스터 정보를 저장해놔야 권한 상승후 돌아올 주소를 알 수 있다.
'Pwnable > Kernel exploit' 카테고리의 다른 글
[Kernel] QWB CTF 2018 - core (ret2usr) (0) | 2021.07.25 |
---|---|
[Kernel] Kernel공부를 위한 커널문제 모음 (4) | 2021.07.22 |
[Kernel] 커널에서 외워야할 명령어들 (3) | 2021.07.21 |
[ Kernel Exploit] Kernel 공부를 위한 C언어 (0) | 2021.07.20 |
[ Kernel Exploit] Kernel 공부를 위한 자료들 (1) | 2021.07.20 |