cdor1's lab
MIPS ROP 본문
$s0 ~ $s7, $ra 순서대로 공격자가 overwrite 할 수 있는데
move $t9, $s1, jalr $t9 와 같은 가젯들을 이용해서 익스플로잇 한다.
그런데 그 이전에 캐시 무결성 문제를 해결하기 위해 데이터 캐시를 플러싱해 정리해줘야 한다.
sleep(1)과 같은 함수를 호출해서 캐시를 플러싱 해주고 이후
addiu $a2, $sp, 0x1c
move $t9, $a2
jalr $t9
와 같은 가젯들을 찾아 sp + 0x1c부분에 쉘코드를 넣어주고 그곳으로 jalr해 쉘을 얻어내는 방식이다.
'Security > Pwnable' 카테고리의 다른 글
0ctf babyheap (0) | 2017.04.18 |
---|---|
QEMU MIPS (0) | 2017.04.10 |
Router attack code (0) | 2017.04.06 |
Router bypass offset (0) | 2017.04.04 |
Frimware virtualization (0) | 2017.03.31 |
Comments