buuctf-ACTF2020新生赛-oruga(2)
书接上文
一开始打算爆破它,不过好像有点难
于是重新回到题,首先它是一个迷宫题,因此我们要先找到的是起点 终点 方向
因此33是它的终点 //当v2这个下标走到33的时候 一切就结束了
其次我们
是用来判断是否超出的
符合这个循环只有左上角
再者如果起点是左上角
则v4=-1的时候 就是 就一定是右 因为v4已经是1了
以此类推 得出
写个脚本
import struct
from ctypes import *
import numpy
maze=[0x00, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x23, 0x23, 0x23, 0x23, 0x00, 0x00, 0x00, 0x23, 0x23, 0x00, 0x00, 0x00, 0x4F, 0x4F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4F, 0x4F, 0x00, 0x50, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4C, 0x00, 0x4F, 0x4F, 0x00, 0x4F, 0x4F, 0x00, 0x50, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4C, 0x00, 0x4F, 0x4F, 0x00, 0x4F, 0x4F, 0x00, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4C, 0x4C, 0x00, 0x4F, 0x4F, 0x00, 0x00, 0x00, 0x00, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4F, 0x4F, 0x00, 0x00, 0x00, 0x00, 0x50, 0x00, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4D, 0x4D, 0x4D, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4D, 0x4D, 0x4D, 0x00, 0x00, 0x00, 0x00, 0x45, 0x45, 0x00, 0x00, 0x00, 0x30, 0x00, 0x4D, 0x00, 0x4D, 0x00, 0x4D, 0x00, 0x00, 0x00, 0x00, 0x45, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x45, 0x45, 0x54, 0x54, 0x54, 0x49, 0x00, 0x4D, 0x00, 0x4D, 0x00, 0x4D, 0x00, 0x00, 0x00, 0x00, 0x45, 0x00, 0x00, 0x54, 0x00, 0x49, 0x00, 0x4D, 0x00, 0x4D, 0x00, 0x4D, 0x00, 0x00, 0x00, 0x00, 0x45, 0x00, 0x00, 0x54, 0x00, 0x49, 0x00, 0x4D, 0x00, 0x4D, 0x00, 0x4D, 0x21, 0x00, 0x00, 0x00, 0x45, 0x45]
res=[]
for i in range(0,len(maze),1):
k=c_byte(struct.unpack_from(">b",bytes(maze),i)[0]).value
res.append(k)
maze=numpy.array(numpy.array_split(res,16))
print(maze)
'''
[[ 0 0 0 0 35 0 0 0 0 0 0 0 35 35 35 35]
[ 0 0 0 35 35 0 0 0 79 79 0 0 0 0 0 0]
[ 0 0 0 0 0 0 0 0 79 79 0 80 80 0 0 0]
[ 0 0 0 76 0 79 79 0 79 79 0 80 80 0 0 0]
[ 0 0 0 76 0 79 79 0 79 79 0 80 0 0 0 0]
[ 0 0 76 76 0 79 79 0 0 0 0 80 0 0 0 0]
[ 0 0 0 0 0 79 79 0 0 0 0 80 0 0 0 0]
[35 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]
[ 0 0 0 0 0 0 0 0 0 0 0 0 35 0 0 0]
[ 0 0 0 0 0 0 77 77 77 0 0 0 35 0 0 0]
[ 0 0 0 0 0 0 0 77 77 77 0 0 0 0 69 69]
[ 0 0 0 48 0 77 0 77 0 77 0 0 0 0 69 0]
[ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 69 69]
[84 84 84 73 0 77 0 77 0 77 0 0 0 0 69 0]
[ 0 84 0 73 0 77 0 77 0 77 0 0 0 0 69 0]
[ 0 84 0 73 0 77 0 77 0 77 33 0 0 0 69 69]]
'''
#flag{MEWEMEWJMEWJM}
原创文章,作者:kirin,如若转载,请注明出处:https://blog.ytso.com/270881.html