小白pwn之旅之pwnable06

2021-10-05 16:50:46 字數 2715 閱讀 6292

看題,連上去,發現要做題還要在60秒做一百題(怎麼可能嘛)

分析就寫指令碼開始,(題中又說網路不好可以在伺服器端寫,嘿嘿)

那直接連線上一題 ssh [email protected] -p2222 (pw:guest) 。就行了,在cd /tmp下寫就好了這裡你會發現已經有大佬寫好了的(真好)叫coin.py,coin1.py,coin2.py(還挺多的)

# coding: utf-8

from socket import

*import random

import time

host=

'0.0.0.0'

port=

9007

#建立socket物件

client=socket(af_inet,sock_stream)

#af_inet表示將使用標準的ipv4位址或主機名

#sock_stream說明這是乙個tcp客戶端

client.connect(

(host,port)

)#連線

data = client.recv(

1024

)time.sleep(4)

for i in

range

(100):

data = client.recv(

1024

)#接收資料

int_cnt=data.find(

'n=')+

2#int_cnt用於找到n,c

n=0 c=

0while

true

:

n+=int(data[int_cnt]

) int_cnt+=

1if data[int_cnt]

==' '

:break

n*=10 int_cnt=data.find(

'c=')+

2while

true

:

c+=int(data[int_cnt]

) int_cnt+=

1if data[int_cnt]

<

'0':

break

if data[int_cnt]

>

'9':

break

c*=10print

'get n=%d'

%n,'get c=%d'

%c#列印n,c

left=

0 right=n-

1 mid=

(left+right)/2

#二分for i in

xrange

(c):

#c次詢問

str_ask=

[str

(n)for n in

xrange

(left,mid+1)

] str_ask=

" ".join(str_ask)

#構造要詢問的硬幣

client.send(str_ask+

"\n"

)#傳送資料

str_weight=client.recv(

1024

)#接收資料

str_weight.split(

"\n"

) int_weight=

int(str_weight)

print

"int_weight = "

,int_weight,

"l=%d mid=%d r=%d"

%(left,mid,right)

if int_weight!=

((mid-left+1)

*10):

right=mid

mid=

(right+left)/2

else

: left=mid+

1 mid=

(left+right)/2

client.send(

str(mid)

+"\n"

) ans=client.recv(

1024

)print

"ans="

,ans

ans=client.recv(

1024

)#flag

print

"ans=%s"

%ans

client.close(

)

在一邊跑coin1和指令碼就得到flag

看題

看看**發現**403報錯,沒有辦法就去看看博主門怎麼寫出來的(嘻嘻)

這位大神寫得挺好的

這是一道溢位的題

這樣就能cat flag。

小白pwn之旅之pwnable05

看原始碼 include include define pw len 10 define xorkey 1 void xor char s,int len int main int argc,char ar printf do not bruteforce.n sleep time 0 20 cha...

小白pwn之旅之pwnable07

連上去看源 發現關鍵 分析輸入乙個 6 位元組的字串,與程式隨機生成的 6 位元組字串比較。看第乙個for迴圈這裡是乙個acsii碼1 45,但可顯示的是從33 45,第二個for迴圈巢狀的意思是將輸入的6個位元組與系統的生成的6個位元組只要有乙個相同就能cat flag。這裡我選的的 連線上去,看...

小白的github之旅

一直聽說github是乙個很好用的工具,是程式設計師必備,感覺裡面有很多有用的學習資源,奈何一直不知道怎麼使用,趁著考完研有一定的英語基礎現在嘗試著摸索一下,在此記錄下自己的摸索過程,希望能對之後看到這個很粗劣的部落格的小白有所幫助,同時學習一下怎麼寫部落格,純屬為了記錄,有錯誤歡迎批評指正。本來以...