FTZ level2

Posted by dw0rdptr
2015. 3. 17. 20:06 System/FTZ

level2


cat hint로 힌트를 보면

hint : 텍스트 파일 편집 중 쉘의 명령을 실행시킬 수 있다는데...



find / -user level3 -perm -4000 실행해보면

/usr/bin/editor 이 level3의 권한으로 실행된다는것을 알 수 있다.

실행시켜보면 vi editor가 뜨는데 vi는 리눅스를 쓴다면 정말 유용한 에디터이므로 사용법정도는 알아두는것이 좋다.


vi에는 기본적으로 세 가지 모드가 있는데,

그중 ex모드에서는 외부쉘을 실행 할 수 있으므로

:!/bin/bash 실행하면 level3 권한의 쉘 획득


* :!ls를 실행해보면 현재 디렉토리의 파일 목록이 그대로나온다


[level3@ftz level2]$ my-pass

 



'System > FTZ' 카테고리의 다른 글

FTZ level6  (0) 2015.03.17
FTZ level5  (0) 2015.03.17
FTZ level4  (0) 2015.03.17
FTZ level3  (0) 2015.03.17
FTZ level1  (0) 2015.03.17

FTZ level1

Posted by dw0rdptr
2015. 3. 17. 19:57 System/FTZ

level1

password : level1


hint : level2권한에 setuid가 걸린 파일을 찾는다



find / -user level2 -perm -4000 실행 (-perm -4000에서 4는 SetUID를 의미)


permission denied가 붙지않은 경로를 찾는다


.

.

.

.

.

/bin/ExecuteMe


실행하면 level2의 권한으로 명령하나를 실행할수 있게 해준다.(my-pass, chmod 제외)

level2의 bash를 얻으면 되므로

bash 실행



[level2@ftz level2]$ /bin/bash

[level2@ftz level2]$ my-pass




'System > FTZ' 카테고리의 다른 글

FTZ level6  (0) 2015.03.17
FTZ level5  (0) 2015.03.17
FTZ level4  (0) 2015.03.17
FTZ level3  (0) 2015.03.17
FTZ level2  (0) 2015.03.17

[LOB] gate->gremlin

Posted by dw0rdptr
2015. 3. 17. 19:43 System/LOB

LOB 첫문제다. gate:gate로 접속하면 실행파일 gremlin과 소스가 보인다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/*
    The Lord of the BOF : The Fellowship of the BOF 
    - gremlin
    - simple BOF
*/
 
int main(int argc, char *argv[])
{
    char buffer[256];
    if(argc < 2){
        printf("argv error\n");
        exit(0);
    }
    strcpy(buffer, argv[1]);
    printf("%s\n", buffer);
}
cs

(Color Scripter 개꿀)

단순히 인자를 받아 strcpy 함수로 버퍼에 복사하고 출력하는 프로그램이다


gdb로 까보자



스택에 256바이트가 할당되었다.

메모리구조를 보자면

| buffer(256Byte) | sfp(4Byte) | ret(4Byte) |

이렇게 간단하게 구성되어있다.



브포걸어주고 buffer의 시작주소를 찾는다. 대충 원하는 NOP 주소를 골라서,


페이로드를 작성하고 실행한결과





참고로 LOB에서는 bash에 버그가있어 메모리주소를 입력할 때 00이나 \xff가 있으면 널값으로 보기 때문에 bash2를 써야한다




'System > LOB' 카테고리의 다른 글

[LOB] wolfman -> darkelf  (0) 2015.03.25
[LOB] orc -> wolfman  (0) 2015.03.24
[LOB] goblin -> orc  (0) 2015.03.21
[LOB] cobolt -> goblin  (0) 2015.03.20
[LOB] gremlin -> cobolt  (0) 2015.03.18