Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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
- EC2
- CodeEngn
- Dreamhack
- mount
- bWAPP
- beebox
- Linux
- Reflected
- c
- Reversing
- basicrce3
- acc
- htmlinjection
- fork-bomb
- cgroup
- datastructure
- 유석종교수님
- 백준
- Systemhacking
- python
- 자료구조
- pwnable
- 와이어샤크
- backjoon
- System
- grafana
- cloud
- wireshark
- AWS
- SISS
Archives
- Today
- Total
Ctrl + Shift + ESC
[Pwnable.kr] cmd1 본문


ls -l로 파일을 확인한 뒤에 flag 파일을 읽어보려 했으나 거절당했다.
그래서 cmd1.c 파일을 읽어보았다.
#include <stdio.h>
#include <string.h>
int filter(char* cmd){
int r=0;
r += strstr(cmd, "flag")!=0;
r += strstr(cmd, "sh")!=0;
r += strstr(cmd, "tmp")!=0;
return r;
}
int main(int argc, char* argv[], char** envp){
putenv("PATH=/thankyouverymuch");
if(filter(argv[1])) return 0;
system( argv[1] );
return 0;
}
filter() 함수에서 flag, sh, tmp를 사용하는 것을 막고 있었다.
이를 피하기 위해서는 와일드카드를 이용하면 된다.
https://ko.linux-console.net/?p=2244
Linux에서 와일드 카드를 사용하여 파일 이름을 일치시키는 10 가지 실용적인 예
Linux에서 와일드 카드를 사용하여 파일 이름을 일치시키는 10 가지 실용적인 예 와일드 카드 (메타 문자라고도 함)는 다른 문자를 나타내는 기호 또는 특수 문자입니다. ls 명령 또는 rm 명령과 같
ko.linux-console.net

flag를 무사히 읽어냈다.

무사히 해결했다!
