Pwnable
-
pwnable.kr blackjackPwnable/Pwnable.kr 2017. 3. 5. 13:02
blackjack 라는 게임을 하는 문제이다.1번이 게임시작 2번이 룰 3번이 종료 1번을 눌러 게임을 시작하게 되면 이런식으로 입력받는데 간단하게 하면 이 부분에서 소스 실수가 있어 의도치 않은 오류? 가 생긴다. 이런식으로 Bet 입력 값이 자신이 가지고 있는 값보다 큰지 확인을하고 바로 입력을 받기 때문에 엄청 큰 값을 입력하고 한번 더 그 큰값을 입력해서 이기면 부자가 될수있다. 이런식으로 된다. WIN ! 이기면 플래그가 나온다.
-
WITHCON mallocPwnable/CTF 2017. 3. 3. 13:11
문제 메인은 이렇다. malloc 부분을보면 32를 할당하게된다. 이떄 32보다 크면 It's too big! 을 출력 시키고 malloc(32) 를 한다. 이 부분에 flag를 여는 곳이 있다. 이 뜻은 이쪽으로 리턴? 을 시켜서 풀라는 것 같다. 그래서 이 문제는 How2Heap 중 fastbin dup into stack을 이해한다면 풀 수 있다. 물론 .. 이해해도 어려웟다 .. (일단 익스 코드를 보여주고 거기에 따라서 힙 상황 적음) 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455from pwn import *p=remote("192.168.1.104",9001..
-
-
pwnable.kr mistakePwnable/Pwnable.kr 2017. 2. 27. 01:46
문제를 보면 hint : operator priority(우선순위) 가 있다. 우선순위를 찾아보면 알겠지만 fd 변수를 다르는 부분에서 오류가 생긴다. 바로 우선순위가 1.< 2. = 라는 뜻이다. 원래 저 소스를 짤떄 바라던 것은 open 함수로 파일을 열고 그 것의 파일디스크립터(반환값) 을 fd에 넣고 그 값이 0 보다 작은지 확인 하기위한것이었을것이다. 그래서 open 함수는 오류가 나지 않고 OPEN이 성공하면 음수가아닌 1234~~.. 처럼 양수로 되는데 그 양수는 0보다 작지 않기 떄문에 FALSE(0) 이 된다. 그럼 그 FALSE 값인 0이 FD변수에 들어가게 된다. 그래서 FD(파일디스크립터) 는 0이된다. 파일 디스크립터는 0입력 1출력 2오류 3.. 4소켓 이런식으로 된다. 그럼 l..
-
Codegate 2017 baby_pwnPwnable/CTF 2017. 2. 20. 16:56
코드게이트 당시에는 PORT가 8888이었지만 로컬연결로는 PORT는 8181이다. (대회당일날 버퍼값을 .. 10진수값을 넣어야하는것을 16진수로 넣어버려서 버퍼값을 잘못넣어버렷고 .. 문제를 보면 system함수를 주어지는데 그것을 보지못했다 .. 대회 당일날만 되면 풀 수 있는것들을 많이 놓쳐버리는것같아서 .. 연습 좀 많이해야할것같다 ㅠㅠㅠ .. ) 일단 저기에서 취약점은 BOF+Memory leak 이다. v2에 100만큼입력을받고 그것에 문자열 길이를 재고 출력을 시킨다. 하지만 v2[bp-34h]-v3[bp-ch] 여기서 v3는 카나리 이기떄문에 34h-c = 10진수로 40 즉, 버퍼값은 40이다.
-
pwnable.tw StartPwnable/Pwnable.tw 2017. 1. 31. 22:57
포너블 문제를 받으면 무조건적으로 checksc.sh를 이용하여서 보호기법을 체크하는 편이여서 일단 먼저 체크를 하기로 하였다. 일단 NX가 걸려있어서 스택을 못쓴다고한다 .. 일단 겉으로만 프로그램이 어떤식으로 돌아가는지 봣는데 Let's start the CTF: 출력하고 입력하고 끝이다.(아이다에도 이렇게 있음) 딱봣을떄 버퍼오버플로우 느낌이 낫다. 아이다로 살펴보자 아.. 그전에 아래쪽을 보면 알겠지만 버퍼오버플로우 취약점이다. 근데 바이너리에는 아무것도 쓸수있는게 없다 .. 사실상 이 문제에서 NX가 걸려서 스택을 못쓰게된다면 .. 첫 번쨰 문제가아닐것이다. 그래서 GDB-PEDA에 VMMAP이라는 것을 다른 분을통해 알게되어서 써보앗더니 !!! 보시면 알다싶이 실행권한이 있다 ? 이 문제를 봣..