Upload files to 'tasks/jojo1'
This commit is contained in:
parent
62848fd04f
commit
4d891799f2
1 changed files with 70 additions and 0 deletions
70
tasks/jojo1/JoJo_exploit.py
Normal file
70
tasks/jojo1/JoJo_exploit.py
Normal file
|
@ -0,0 +1,70 @@
|
|||
import websocket as ws
|
||||
a=open('glags.txt','r').read().split('\n')[:-1]
|
||||
|
||||
|
||||
global c
|
||||
c=ws.create_connection('wss://jojo1.ctfmay.sch9.ru/ws/')
|
||||
c.send('b')
|
||||
print('recieve:',c.recv())
|
||||
c.send('b')
|
||||
s=c.recv()
|
||||
print('recieve:',s)
|
||||
print('recieve:',c.recv())
|
||||
print('recieve:',c.recv())
|
||||
print('recieve:',c.recv())
|
||||
print('recieve:',c.recv())
|
||||
words=[s[s.find('хочу')+5:s.find('чтобы')-1],
|
||||
s[s.find('чтобы')+6:s.find('а потом')-2],
|
||||
s[s.find('а потом')+8:s.find('и, будучи')-1],
|
||||
s[s.find('и, будучи')+33:s.find('тебе,')-1],
|
||||
s[s.find('пытающийся')+11:s.find('!!!')]]
|
||||
print('words in phrase:',words)
|
||||
oidx=[a.index(words[i]) for i in range(5)]
|
||||
print('indexes in dictionary:',oidx)
|
||||
c.send('b')
|
||||
s=c.recv()
|
||||
print('recieve:',s)
|
||||
print('recieve:',c.recv())
|
||||
print('recieve:',c.recv())
|
||||
print('recieve:',c.recv())
|
||||
print('recieve:',c.recv())
|
||||
words=[s[s.find('хочу')+5:s.find('чтобы')-1],
|
||||
s[s.find('чтобы')+6:s.find('а потом')-2],
|
||||
s[s.find('а потом')+8:s.find('и, будучи')-1],
|
||||
s[s.find('и, будучи')+33:s.find('тебе,')-1],
|
||||
s[s.find('пытающийся')+11:s.find('!!!')]]
|
||||
print('words in phrase:',words)
|
||||
idx=[a.index(words[i]) for i in range(5)]
|
||||
print('indexes in dictionary:',idx)
|
||||
d=[(idx[i]-oidx[i])%len(a) for i in range(5)]
|
||||
print('differences:',d)
|
||||
for i in range(5):
|
||||
idx[i]+=d[i]
|
||||
idx[i]%=len(a)
|
||||
words[i]=a[idx[i]]
|
||||
for i in range(1000):
|
||||
c.send(f'Я хочу { words[0] } чтобы \
|
||||
{ words[1] }, а потом { words[2] } и, будучи \
|
||||
победителем, приказать { words[3] } тебе, ДжоДжо\
|
||||
, так сильно пытающийся { words[4] }!!!')
|
||||
s=c.recv()
|
||||
print('recieve:',s)
|
||||
print('recieve:',c.recv())
|
||||
print('recieve:',c.recv())
|
||||
print('recieve:',c.recv())
|
||||
print('words in phrase:',words)
|
||||
print('idxs:',idx)
|
||||
for i in range(5):
|
||||
idx[i]+=d[i]
|
||||
idx[i]%=len(a)
|
||||
words[i]=a[idx[i]]
|
||||
c.send('h')
|
||||
print('recieve:',c.recv())
|
||||
print('recieve:',c.recv())
|
||||
print('recieve:',c.recv())
|
||||
print('recieve:',c.recv())
|
||||
print('recieve:',c.recv())
|
||||
print('recieve:',c.recv())
|
||||
print('recieve:',c.recv())
|
||||
print('recieve:',c.recv())
|
||||
|
Loading…
Reference in a new issue