hOwDayS 선린 10720
pwnable.kr coin1 본문
coin1 코드
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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | from pwn import * def solve(): _input = '' # cnt = 100 for i in range(cnt): data = s.recvline() N = int(data.split(' ')[0][2:]) # = 이후 부터 가져옴 C = int(data.split(' ')[1][2:]) left = 0 right = N -1 # start from 0 print ('['+str(i+1)+'] N : ' + str(N) + ' '+' C : ' + str(C)) _try = 0 #시도 결과 while(left <= right): mid = (left + right) / 2 for j in range(left,mid+1): _input += str(j) + ' ' s.sendline(_input) # print("SEND : " + _input) result_line = s.recv(20).rstrip() # Read Next Line if 'Correct' in result_line: #SUCCESS print ('[' + str(i+1) + '] result :' + str(_input)+' _try : ' + str(_try)) _input='' break elif 'Wrong' in result_line : #FAIL print ('[' + str(i+1) + '] Wrong coin!') cnt +=1 #카운트 하나더 추가 break else : _try+=1 result = int(result_line) if(result % 10) == 0: #모든 게 진짜 일경우 left = mid + 1 _input = '' else: #하나라도 가짜 일 경우 right = mid _input='' s=remote("pwnable.kr",9007) s.recv(2048) solve() s.interactive() |
'공부 > pwnable.kr' 카테고리의 다른 글
pwnable.kr simplelogin (0) | 2018.01.20 |
---|---|
pwnable.kr brainfuck (2) | 2018.01.20 |
pwnable asm (0) | 2018.01.12 |
pwnable uaf (0) | 2018.01.11 |
pwnable.kr lotto (0) | 2018.01.11 |
Comments