커널
Posts
228 posts[Kernel] slab object 자료구조 - 페이지, 슬랩 캐시
이번 시간에는 코어 덤프에서 페이지 디스크립터와 슬랩 오브젝트 자료구조를 알아 봅니다. 우선 다음과 같은 페이지 디스크립터가 있습니다.(struct page *) (struct page*)0xEC778540 = 0xEC778540 -> ( (long unsigned int) flags = 128 = 0x80, //<<--[1] (struct address_space *) mapping = 0x0, (void *) s_mem = 0x0, (long unsigned int) index = 3306744832 = 0xC518EC00, (void *) freelist = 0xC518EC00, //<<--[2] (bool) pfmemalloc = FALSE, (unsign
[0410] Slab Memory Corruption Case Study#2 - 디버깅
난이도: 하 이제 커널 로그부터 볼게요. 이전과 비슷한 패턴인데 약간 다른 것 같네요.1 [ 2551.510956 / 04-07 15:43:12.844][3] =============================================================================2 [ 2551.510994 / 04-07 15:43:12.844][3] BUG kmalloc-256 (Tainted: G W ): Invalid object pointer 0xe216ce103 [ 2551.511015 / 04-07 15:43:12.844][3] -----------------------------------------------------------------------
[0410] Slab Memory Corruption Case Study#1 - 디버깅(2)
[0410] Slab Memory Corruption Case Study#1 - 로그 분석(1)에서 계속.. 여기까지 커널 로그의 의미를 알아봤으니 이제는 슬랩 오브젝트가 오염돼서 커널 크래시 디버깅을 할 차례입니다.[701.043491][7] BUG kmalloc-512 (Tainted: G W ): Poison overwritten[701.043515][7] -----------------------------------------------------------------------------[701.043515][7] [701.043550][7] INFO: 0xe411ec00-0xe411ec92. First byte 0x87 instead of 0x6b 위와 같이 커널 크래시
[0410] Slab Memory Corruption Case Study#1 - 로그 분석(1)
슬랩 메모리 Corruption Cast Study: 난이도 최하 이번에는 슬랩 오브젝트가 메모리를 깨면 어떤 방식으로 커널 크래시가 발생하는지 알아볼게요.이로 슬랩 오브젝트의 실제 자료 구조를 알 수 있습니다. 아 그럼 우선 커널 로그 부터 볼게요. 음 평소에는 볼 수 없는 요상한 로그를 출력하고 있군요.그럼 각각 로그가 어떤 의미인지 천천히 살펴볼까요?[701.043443][7] =============================================================================[701.043491][7] BUG kmalloc-512 (Tainted: G W ): Poison overwritten[701.043515][7] -----------
![[Spoiler] 점프 신작 '공주님 고문 시간입니다' 원작자에 '우공못' 작가 그림. '시간정지용사' 또다른 플레이어? '다음에 오는 만화 대상' 운영 잡지 폐간](https://img.zoomtrend.com/2026/06/07/1780881297-ECA090ED948426-28EC95A0EB8B88EBA980EC8B9CEAB7B8EB8490.jpeg)

