목록2019/08/02 (1)
trash houz
[Linux Kernel] STARCTF 2019 hackme
리눅스 커널 익스플로잇 문제입니다. .ko 파일, 이미지 파일등이 제공되는데, ko 파일을 ida 로 분석해보겟습니다. ioctl 을 이용해 0x30000(malloc), 0x30001(read), 0x30002(write), 0x30003(free) 가 구현되어있습니다. 취약점은 write() 와 read() 의 offset 을 체크하는곳에 있습니다. offset 을 내부적으로 unsigned 형을 사용하지 않아 사용자 입력으로 offset 에 음수값을 입력했을때 memory leak 이 가능합니다. read() 에서 음수값을 넣게되면 요청한 fd 기준으로 음수값 만큼의 전까지 메모리를 전부 읽어옵니다. 또 코드를 보면 pool 이라는 배열이 있습니다. kmalloc() 으로 동적할당한 공간의 주소를 ..
Writeup
2019. 8. 2. 00:24