일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |
- 정보보안기사 실기
- 네트워크
- OS
- Spring Framework
- 정보보안기사
- Payload
- Spring
- BOF
- Shell code
- Operating System
- 정보처리기사 실기
- PWN
- hacking
- LOB
- Lord of BOF
- Pwnable.kr
- Spring MVC
- 워게임
- system hacking
- SQL
- Buffer Overflow
- webhacking
- 웹해킹
- stack overflow
- wargame
- pwnable
- 운영체제
- 해킹
- System
- webhacking.kr
- Today
- Total
목록pwnable (18)
DongDD's IT
[pwnable.kr]passcode Problem 로그인 시스템을 기초로 하는 passcode를 만드는 법을 들었다고 되어있고 C code로 에러없이 컴파일했지만 몇 개의 warning이 출력되었는데 봐줄 수 있느냐고 되어있었다.문제만 읽어서는 예측이 되지 않아 일단 ssh로 접속을 했다. ssh로 접속해서 확인해보니 flag 파일 하나와 passcode 실행 파일, passcode.c 소스 코드 파일이 있었다.먼저 소스코드를 확인해보았다. 12345678910111213141516171819202122232425262728293031323334353637383940414243#include #include void login(){ int passcode1; int passcode2; printf("e..
[2018 Angstrom CTF] Write-up(Web, Reversing, Binary) Source Me 1 Point : 20 pointCategory : Web Problem : There is only one goal: Log in. Challenge Link : http://web.angstromctf.com:6999 admin으로 로그인하라고 되어있었다. 먼저 페이지 소스를 확인해보았다. 페이지 소스에 주석으로 admin 패스워드가 적혀있었다.admin password : f7s0jkl이 비밀번호와 admin으로 로그인을 했더니 flag가 보여지는 페이지가 나왔고 flag를 입력해 문제를 통과할 수 있었다. Answer & Flag FLAG : actf{source_aint_secure}..
[pwnable.kr] flag Problem packed된 선물을 받았다고 되어있고 그것을 열어보라고 되어있었다.이번 문제에서는 접속할 수 있는 서버가 없었고 다운 받을 수 있는 파일이 하나 주어져있었다.reversing이라고 되어있었고 해당 binary파일만 있으면 문제를 해결할 수 있다고 써있었다.packed를 보아 packing된 파일일 수도 있다는 생각이 들었다. Solution 먼저 파일을 ubuntu환경으로 옮겨 실행해보니 다음과 같은 message가 출력되었다. 이 message가 flag인가 싶어 입력해보았지만 실패했다.Reversing과 관련되었다고 써있었기 때문에 IDA를 통해 열어보았다. 코드 내에 특별한 점은 보이지 않아 string을 확인해보니 upx라는 단어를 볼 수 있었다.u..
[pwnable.kr] bof Problem buffer overflow가 가장 일반적인 소프트웨어 취약점이라고 들었는데 이것이 사실이냐 묻고있다.buffer overflow에 대한 문제일 것 같았다.이번 문제에서는 ssh로 접속할 수 있는 서버가 주어지지 않았고 nc로 프로그램에 연결할 수 있게 되어있었고 소스 코드 파일과 bof 실행 파일을 다운 받을 수 있게 되어있었다.먼저 소스 코드를 확인해보았다. 12345678910111213141516171819#include #include #include void func(int key){ char overflowme[32]; printf("overflow me : "); gets(overflowme); // smash me! if(key == 0xcaf..
[pwnable.kr] collision Problem 문제에서 MD5 Hash 충돌에 대해서 들었다고 되어있고 자신 또한 그런 것을 하고 싶다라고 적혀있었다.MD5 Hash에 관련된 문제인 것 같았다.먼저 ssh로 접속해보았다. col 실행 파일과 col.c 소스 코드 파일과 flag파일이 있었다. 먼저 소스 코드를 확인해보았다. 1234567891011121314151617181920212223242526272829303132#include #include unsigned long hashcode = 0x21DD09EC;unsigned long check_password(const char* p){ int* ip = (int*)p; int i; int res=0; for(i=0; i
[pwnable.kr] fd Problem Linux의 file descriptor가 무엇인지 묻고 있는 문제였다.fd와 관련된 내용이 나올 것 같다는 생각이 들었다. ssh로 fd@pwnable.kr에 접속하니 위와 같은 화면을 볼 수 있었다.fd 실행파일과 fd.c 소스 코드 파일과 flag 파일이 있었다.먼저 소스 코드를 확인해 보았다. 12345678910111213141516171819202122#include #include #include char buf[32];int main(int argc, char* argv[], char* envp[]){ if(argc
[pwnable.kr] lotto 문제 풀이 로또라는 문제 제목을 보고 되게 재밌을 것 같다는 생각이 들었다. 문제에는 lotto 프로그램을 숙제로 만들었는데 플레이해볼 것인지 물어보고 있었다. 다른 문제와 마찬가지로 flag파일과 lotto 실행 파일, lotto.c 소스코드가 주어져 있었다.일단 소스 코드를 확인해보았다. main은 단순히 while문에 1,2,3 을 입력 받을 수 있게 되있었고 2는 help로 사용법을 출력해주는 함수였고 3은 종료였다. 2번 help와 3번 종료는 문제풀이에 사용되지 않는 것 같아서 1번인 play 이미지만 첨부했다. submit에 stdin으로 6자리를 읽고 /dev/urandom 파일을 열어 6자리를 읽는 형태로 되어있었다./dev/urandom에서 잘 몰라서 ..
[pwnable.kr] cmd1 문제 풀이 문제를 보니 환경변수가 무엇인지 물어보는 걸로 보아 환경변수를 이용하는 문제 같았다. 다른 문제와 같이 flag 파일, cmd1 실행 파일, cmd1.c 소스코드 세가지 파일이 있었다. 소스 코드를 보고 파악하기로 했다. /fuckyouverymuch라는 폴더를 환경변수에 넣어주고 filter라는 함수에 argv[1]을 넘겨주고 system 함수의 인자로 argv[1] 를 넣어주는 구조로 되어있었다. 처음에 코드를 봤을 때 strstr() 함수에 대해서 알지 못해서 따로 찾아보았다.strstr(char *a, char *b) 함수는 a라는 string에 b의 string이 포함되어 있으면 해당 패턴이 나타나는 위치값을 return 해주고 없다면 0을 return..