for i inrange(1,20):v3 =107*(700-5*(48-72// i))-53100if v3 <=8960and v3 >=400:print(i)
爆破后得到Name长度为3-9
继续分析func_2,逻辑如下:
1、首先有个码表为’ABCDEFGHIJKLMNOPQRSTUVWXYZ’
2、可以确定Serial[0]要满足计算条件
3、提取Name每一位进行计算,得到table[27]字符串
4、table[27]字符串进行拼接,得到res
5、最后传入参数res给func_3函数,函数返回值不能为0
for n inrange(1,255):if4559% n ==23:print(chr(n))
爆破得到符合条件的Serial[0]值
分析func_3,发现res和Serial相等时,返回值为1
算法分析
Name ='conceal'table ='ABCDEFGHIJKLMNOPQRSTUVWXYZ\x00'v15 =0for i inrange(len(Name)):v15 +=ord(Name[i])res =[0]*len(Name)for k inrange(len(Name)):res[k]=(ord(Name[k])*(k +3)*len(Name)+(ord(table[4* k -(k +1)])^ord(Name[k]))+~(k * v15 - v15)+333)%0xA+48;res[k]=(k +2)*(res[k]^0xADAC)%10+48;res ='T'+"".join([chr(i)for i in res])
res = res +'-'+str(v15 *len(Name)%100+48)Serial ='6'for i inrange(1,len(res)):Serial +=chr((ord(res[i])^0x20)%10+48)print(Name +'的Serial为:\n'+ Serial)
#dhcps
#安装 apt install isc-dhcp-server
#topo # 创建命名空间 ip netns add ns #创建veth接口 ip link add ns-veth0 type veth peer name h-veth0 #ns-veth0放入命名空间 ip link set ns-veth0 netns ns #配置ns的接口 ip -netns ns link set ns-veth0 up ip -netns ns …