일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- vi
- 오버워치
- #
- vi 외부 명령어
- Find
- Sqix
- #IntelManual #segment Descriptor #세그먼트 디스크립터 #MINT64 #Sqix
- KASAN
- #IntelManual
- #MINT64 #Sqix
- #Best of the Best #OS #MINT64 #Sqix
- command
- libtins
- #Qt Creator
- ftz
- Network
- C++11
- linux
- libpcap
- BEST of the BEST
- >
- 인터럽트
- 오버워치 세이버메트릭스
- Overwatch League SaberMetrics
- FTZ 레벨2
- vim
- Today
- Total
목록전체 글 (76)
Sqix
이번에는 pwnable.kr - flag 문제를 풀어보는 시간을 갖겠습니다. 처음 문제를 켜면 http://pwnable.kr/bin/flag를 다운로드 받으라고 합니다. 마찬가지로 wget을 통해서 다운로드 받고, gdb를 이용할 수 있도록 chmod 775를 하여 권한을 올려 주도록 하겠습니다. 리버싱 문제이기 때문에, 문자열이 어떤 것이 있는지를 확인해 보고자 strings flag 명령어를 이용하여 문자열을 추출해 보았습니다. strings flag > flag_str.txt와 같은 식으로 파일로 문자열 추출 결과를 넘겨받으면 편리합니다. 그런데, 뒤져 보니 저렇게 upx로 패킹되어있음이 나옵니다. 만약 upx가 없으시다면 apt-get install upx 명령어를 통해 다운로드 받으시면 됩니다..
이번에는 Pwnable.kr의 bof 문제를 풀어보도록 하겠습니다. http://pwnable.kr/bin/bof , http://pwnable.kr/bin/bof.c 를 다운로드 받아서 문제 풀이에 이용할 수 있도록 해 주었습니다. 저는 wget으로 다운로드를 받아서 문제를 풀어보도록 하겠습니다. ex.py는 문제 풀이를 위한 exploit 코드를 파이썬으로 작성한 것인데, 굳이 ex를 짤 필요는 없기 때문에 이번 풀이 과정에서는 생략하도록 하겠습니다. 먼저 코드를 보도록 하겠습니다. main에서는 0xdeadbeef 라는 인자를 func에 넣어 주고, func에서는 해당 값을 인자로 받아와 key로 사용을 합니다. gets 함수는 32바이트의 버퍼인 overflowme 배열에 유저 입력을 받을 수 있..
ssh col@pwnable.kr -p2222 / guest 를 입력하여 문제 서버에 접속한다. 이번 Hash Collision 문제풀이를 시작해 보겠습니다. 문제를 간단하게 요약하면, col.c에 있는 hashcode를 이용해서 알맞은 passcode를 찾아내는 것입니다. 먼저 hashcode가 적혀있는 소스코드를 보도록 하겠습니다. arvg1에 passcode를 가져오고, 이를 check_password 함수의 인자로 넣어서 hashcode와 비교한 후, 만약 그 값이 같다면 flag에 있는 flag를 가져오도록 syscall을 합니다. 틀리다면 wrong password라고 출력을 합니다. password를 보면, 우리가 입력한 문자열을 int * 타입으로 캐스팅하여 5개의 배열인 것 처럼 만들어 ..