일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- pwn.college
- 컴퓨터구조
- 프로그래밍
- 리버싱
- 시스템프로그래밍
- px4
- 리눅스 커널
- 드론
- 리눅스커널
- pwncollege
- kernel
- Bandit
- 시스템 프로그래밍
- C++
- Pwnable.kr
- 워게임
- 커널
- css
- 시그널
- wargame
- 리눅스
- Leviathan
- 취약점
- C언어
- 알고리즘
- radare2
- 시스템해킹
- write up
- 어셈블리어
- 시스템
- Today
- Total
목록정보보안 (179)
Computer Security
Kernel Heap Overflow Heap Overflow 취약점은 할당된 heap 객체에서 buffer overflow가 발생해 인접한 heap 객체의 데이터를 변경할 수 있는 취약점이다. 이러한 취약점이 커널에서도 발생할 수 있다. 일반적으로 커널에서의 heap은, 슬랩 할당자를 통해 할당 받을 수 있는 슬랩 객체를 의미한다.(vmalloc 영역 제외) 슬랩 객체는 같은 크기(kmalloc-N)의 슬랩 객체끼리 인접해 있다는 점을 고려해서 힙 풍수(1)를 맞춰야 한다. (1) 힙 풍수(Heap Feng Shui) : Heap 영역에 할당된 Chunk 들의 Layout 을 조작해 exploit 하는 기법입니다. 우리는 아래의 파일들로 실습 할 것이다. start.sh : qemu script hof..
7. dangling pointer , dangling pointer생성과정 허상 포인터(dangling pointer) 컴퓨터 프로그래밍에서 적절한 타입의 유효한 객체를 가리키고 있지 않는 포인터를 말한다. dangling pointer 생성과정 먼저, 디바이스 드라이버의 전역 변수는 해당 드라이버가 close 되어도 메모리 상에서 사라지지 않는다. (rmmod로 커널에서 삭제해야만 메모리상에서 제거된다.) exp.c 코드에서 두 개의 uaf 드라이버를 open 후 하나의 드라이버를 close한다. 남은 하나의 드라이버에서 전역 변수 ptr에 접근할 수 있으며, 이 때 ptr은 해제된 슬랩 객체를 가리키고 있는 dangling pointer가 되어있다. 8. 포크함수를 호출해 danging pointe..
Kernel UAF(Use-After-Free) UAF(Use-After-Free) 취약점은 할당된 heap 영역을 해제 후 재사용할 때 발생하는 취약점이다. 이러한 취약점이 커널에서도 발생할 수 있다. 일반적으로 커널에서의 heap은, 슬랩 할당자를 통해 할당 받을 수 있는 슬랩 객체를 의미한다.(vmalloc영역 제외) 디바이스 드라이버에서의 UAF 취약점은 보통 dangling pointer를 통해서 발생한다. 우리는 아래의 파일들로 실습 할 것이다. start.sh : qemu script uaf.c : kernel UAF 취약점이 터지는 디바이스 드라이버 예제 exp.c : 취약점을 이용해 권한 상승을 일으키는 exploit code 1. bzImage 이번 커널 이미지 버전은 이전의 예제에서의..
Stack based BOF 스택에 위치한 버퍼에 할당된 크기보다 더 많은 데이터가 쓰여질 때 발생하며, 이를 이용해 스택의 retrun address등을 덮어 프로그램의 흐름을 변조할 수 있는 취약점이다. 하나의 태스크에는 유저 공간 전용 스택도 존재하고, 커널 공간 전용 스택도 존재한다. 유저 공간의 스택과 마찬가지로 커널 공간의 커널 스택도 BOF가 발생할 수 있다. 우리는 아래의 파일들로 실습 할 것이다. start.sh : qemu script bof.c : Stack based BOF 취약점이 터지는 디바이스 드라이버 예제 exp.c : struct cred overwrite기법을 이용해 권한 상승을 일으키는 exploit code 1. cat start.sh를 통해 걸려있는 보호기법을 살펴보..