- 一道考驗(yàn)二分法的編程題,直接寫腳本但是連接太慢了,所以ssh連上以前的服務(wù)器上跑
from pwn import *
#context.log_level = 'debug'
p = remote('pwnable.kr', 9007)
p.recvuntil('- Ready? starting in 3 sec... -')
def senddata(num_start,num_end,C,count,coin = 0):
#print 'num_start: %d , num_end: %d'%(num_start,num_end)
#print 'C: %d,count: %d'%(C,count)
if count == C:
p.sendline(str(coin))
return
a = ''
for i in range(num_start,(num_end+num_start)/2+1):
a += str(i) + ' '
p.sendline(a)
data = p.recvuntil('\n',drop=True)
if data[-1] != '9':
senddata((num_end+num_start)/2+1,num_end,C,count+1,num_end)
else:
if num_end - num_start == 1:
coin = num_start
senddata(num_start,(num_end+num_start)/2,C,count+1,coin)
i = 0
while True:
i += 1
print i
p.recvuntil('N=')
N = int(p.recvuntil(' ',drop = True))
p.recvuntil('C=')
C = int(p.recvuntil('\n',drop = True))
senddata(0,N,C,0)
p.interactive()
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。