일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 취약점
- radare2
- 리눅스커널
- px4
- 커널
- 프로그래밍
- wargame
- 시그널
- 리버싱
- Bandit
- 리눅스
- Pwnable.kr
- 컴퓨터구조
- 어셈블리어
- pwn.college
- kernel
- 시스템 프로그래밍
- 시스템프로그래밍
- write up
- css
- 시스템해킹
- C언어
- 알고리즘
- 시스템
- Leviathan
- C++
- 워게임
- 리눅스 커널
- pwncollege
- 드론
Archives
- Today
- Total
Computer Security
#1 Pwnable.kr : fd 문제 풀이 본문
반응형
알아야 할 기본지식!
argc(argument count) - 인자의 개수
argv(argument vecotr) - 인자의 벡터 즉 문자열의 배열이므로 백터의 테이블 형태
파일 디스크립터란?
- 시스템으로부터 할당받은 파일을 대표하는 0이 아닌 정수의 값이다.
- 프로세스에서 실행되는 파일들의 목록을 관리해주는 테이블의 인덱스 값이다.
- 리눅스/유닉스는 모든 장치를 파일로 관리하는데, 일반 파일과 내부/외부 모든 장치도 파일로 취급한다.
- 이 파일을 관리하는 것이 파일 디스크립터라고 부른다.
atoi(ascii to int) 함수
- atoi 함수는 10진 정수 문자열을 정수로 변환하는 함수다.
read 함수
- read함수는 open() 함수로 열기를 한 파일의 내용을 읽는 것이다.
- 형태는 ssize_t read (int fd , void *buf , size_t nbytes)
인자는 int fd void *buf size_t nbytes다.
strcmp 함수?
- strcmp 함수는 매개변수로 들어온 두 개의 문자열을 비교하여 문자열이 같다면 0을 반환하고
다르면 1 을 반환
같으면 0을 반환하는 함수다.
1. ls -al 을 이용해 무엇이 들어있는지 확인 해본다.
fd@pwnable:~$ ls -al
total 40
drwxr-x--- 5 root fd 4096 Oct 26 2016 .
drwxr-xr-x 116 root root 4096 Nov 11 2021 ..
d--------- 2 root root 4096 Jun 12 2014 .bash_history
-r-sr-x--- 1 fd_pwn fd 7322 Jun 11 2014 fd
-rw-r--r-- 1 root root 418 Jun 11 2014 fd.c
-r--r----- 1 fd_pwn root 50 Jun 11 2014 flag
-rw------- 1 root root 128 Oct 26 2016 .gdb_history
dr-xr-xr-x 2 root root 4096 Dec 19 2016 .irssi
drwxr-xr-x 2 root root 4096 Oct 23 2016 .pwntools-cache
2. fd.c 랑 fd 가있는데, fd.c 파일안에 무슨 내용이 있는지 확인 해보자.
뭐 파일 내용보니, 받은 값이랑 0x1234 값이랑 뺏을때, 0이 나오면 그다음으로 가는듯 하다.
0x1234는 10진수로 변환하면 4660 이 나온다.
그 뒤에, 만약, LETMEWIN 이 입력되면 굿잡 이러면서 flag파일을 보여주는 것 같다.
4. ./fd 4660입력한뒤, LETMEWIN을 입력해서 정말 그렇게 동작하는지 확인 해보자.
5. mommy! I think I know what a file descriptor is!! 이 문구가 정답인듯 하다. 맞는지 확인해보자!
반응형
'Wargame:Pwnable.kr' 카테고리의 다른 글
#6 Pwnable.kr : random 문제풀이 (0) | 2022.08.06 |
---|---|
#5 Pwnable.kr : passcode 문제풀이 (0) | 2022.08.05 |
#4 Pwnable.kr : flag 문제풀이 (0) | 2022.08.04 |
#3 Pwnable.kr : bof 문제풀이 (0) | 2022.08.02 |
#2 Pwnable.kr : collision 문제풀이 (0) | 2022.08.01 |
Comments