게시글
질문&답변
2024.04.01
SMAP 우회에서 궁금한게 하나 있습니다.
안녕하세요. 해당 강의에서는 BOF 취약점을 이용해 ROP를 실행하기 때문에 가능합니다. BOF로 인해 payload가 커널 영역인 커널 스택에 쌓이기 때문에, 이를 실행할 때 SMAP의 영향을 받지 않게 됩니다. 유저 영역의 shell()을 실행할 땐 ROP payload로 인해 커널에서 유저 영역으로의 전환이 끝난 후기 때문에 실행되는 것이고, 이는 SMAP와 무관합니다. BOF 외의 취약점을 이용해 exploit 할 경우, 커널 힙 영역으로의 pivoting 작업이 필요합니다.
- 0
- 2
- 81
질문&답변
2023.10.12
KADR 우회에서 init파일이 없는 경우는 어떻게 하나요?
안녕하세요. /etc/init.d/ 경로에 존재하는 스크립트와 파일들을 확인해보시기 바랍니다. 스크립트가 없을 경우, kallsyms 파일을 복사해서 유저가 읽을 수 있도록 하는 스크립트를 /etc/init.d/ 에 추가하는 것도 방법이 될 수 있습니다.
- 0
- 1
- 159
질문&답변
2023.09.27
여전히 해결책 없는 build_result
안녕하세요, 답변이 늦어 죄송합니다. build_result 디렉토리는 제가 임의로 만들어 bzImage와 rootfs.cpio를 한 곳에 모아놓은 것일 뿐이고, make 과정에서 생성되지 않습니다. 원하는 디렉토리를 만들어서 bzImage와 rootfs.cpio를 모아놓은 뒤, 해당 위치에서 qemu script를 실행하시면 됩니다. 감사합니다.
- 0
- 1
- 173
질문&답변
2023.09.27
KASLR 강의에서 주어진 환경에서는 /proc/kallsyms 확인 못하는 것이 맞나요?
안녕하세요. 강의 중 KADR 우회 강의를 확인하시면, init 스크립트를 수정하여 root 권한으로 부팅한 후 / proc/kallsyms를 읽어오는 내용이 있습니다. 해당 강의를 확인하시면 될 것 같습니다. 감사합니다.
- 0
- 1
- 227
질문&답변
2023.06.20
안녕하세요 수강중 궁금한 것이 있습니다.
안녕하세요. 답변을 늦게 드리게 되어 죄송합니다. 해당 강의는 pwnable에 대한 개념이 어느정도 잡힌 수강생 분들을 주 대상으로 하고 있습니다. 만약 pwnable 기본 개념을 쌓고 싶으시다면, https://dreamhack.io/ 교육 플랫폼을 추천 드립니다.
- 0
- 2
- 345
질문&답변
2023.03.08
가젯에 대해 이해가 잘 안됩니다.
안녕하세요. pop rax;가 실행되는 시점에 rsp는 0x6f0를 가리키고 있게 됩니다. 이 상황에서 pop rax;가 실행되면, rsp가 가리키고 있는 0x6f0을 rax로 pop하기 때문에 0x6f0을 넣을 수 있게 됩니다. 더 자세한 것은 ROP에 대해 공부해보시면 도움이 될 것 같습니다.
- 0
- 1
- 317
질문&답변
2023.02.03
Kernel KPTI 적용시 영향?
안녕하세요. 리눅스 커널 이미지는 런타임에서 command-line parameter 등에 의해 그 구조가 바뀔 수 있습니다. KPTI를 적용하고 부팅한 커널에선, 커널 모드와 유저 모드로 전환하는 함수들의 흐름이 바뀌기도 하구요. 이런 경우엔 그냥 살아있는 가젯을 사용하거나, gdb의 find 명령어로 런타임에서 가젯을 찾는 것이 가장 간편한 방법입니다.
- 0
- 1
- 377
질문&답변
2023.01.30
qemu 스크립트 실행시 Kernel panic이 발생합니다.
안녕하세요. 해당 오류는 rootfs.cpio 파일에 문제가 있어서 발생하는 오류로 보입니다. 3-2. KASLR 강의의 수업 자료를 다운받아서 boot.sh를 실행시켜도 같은 오류가 출력되는지 확인해보시기 바랍니다.
- 0
- 2
- 451
질문&답변
2023.01.27
Kernel UAF
안녕하세요. cred overwrite 기법을 사용할 수 있는 커널 버전에서는, cred와 동일한 크기에 속하는 kmalloc-N 슬랩 캐시의 객체를 이용해 UAF를 트리거할 수 있습니다. 또, 커널 구조체의 크기는 커널 버전마다 다르기 때문에 이를 확인하려면 pahole을 사용해야 합니다. https://manpages.ubuntu.com/manpages/impish/man1/pahole.1.html 위의 설명대로 pahole을 이용해 cred 구조체의 크기를 구할 수 있습니다. 감사합니다.
- 0
- 1
- 359
질문&답변
2022.10.30
디버깅 방법
CTF 문제를 풀 때도 동일한 방법을 사용하시면 됩니다.
- 0
- 3
- 575