z3解方程,就是改变量名有点麻烦
#z3 计算 from z3 import * from Crypto.Util.number import * l = [Int(f'l_{i}') for i in range(43)] S = Solver() #创建约束求解器 S.add(l[0] - 258 - 330 * l[1] == -27575) #添加约束条件 S.add(l[1] + 400 + 686 - l[2] == 1102) S.add(l[2] + 910 + 625 * l[3] == 53477) S.add(l[3] - 333 + 648 * l[4] == 45111) S.add(l[5] + 254 + 929 * l[4] == 65407) S.add(l[5] + 282 - (207 - l[6]) == 254) S.add(l[6] + 927 - (l[7] + 166) == 761) S.add(l[7] + 633 - (436 - l[8]) == 309) S.add(451 * l[8] + 598 * l[9] == 57548) S.add(l[9] - 680 - (l[10] + 324) == -1001) S.add(844 * l[10] - 110 * l[11] == 32154) S.add(l[11] + 923 + 302 * l[12] == 30618) S.add(l[13] + 164 + 950 * l[12] == 93321) S.add(l[14] + 411 + 631 * l[13] == 36423) S.add(l[14] + 234 - 662 * l[15] == -65921) S.add(l[15] + 755 - 933 * l[16] == -91512) S.add(l[16] + 781 + l[17] + 491 == 1420) S.add(l[17] - 756 - 804 * l[18] == -43319) S.add(l[18] - 404 + 998 - l[19] == 602) S.add(114 * l[19] - (l[20] + 447) == 4631) S.add(350 * l[20] - (l[21] + 473) == 17627) S.add(872 * l[21] + 797 * l[22] == 126253) S.add(952 * l[22] - (840 - l[23]) == 45909) S.add(l[24] + 278 + 404 * l[23] == 41127) S.add(l[24] - 829 + l[25] + 878 == 192) S.add(l[25] - 320 + l[26] + 549 == 381) S.add(356 * l[26] + 402 * l[27] == 40128) S.add(l[27] - 476 + 649 * l[28] == 65774) S.add(325 * l[28] - (l[29] + 106) == 32999) S.add(l[29] - 320 - (l[30] + 982) == -1308) S.add(l[30] + 588 - (357 - l[31]) == 333) S.add(l[31] - 542 - (l[32] + 497) == -1087) S.add(l[32] + 369 + l[33] + 306 == 872) S.add(888 * l[33] - (l[34] + 953) == 86014) S.add(721 * l[34] - (l[35] + 431) == 40569) S.add(l[35] - 689 + 224 - l[36] == -465) S.add(l[36] - 340 + l[37] + 798 == 609) S.add(l[37] + 218 + 653 - l[38] == 824) S.add(l[38] + 194 - (351 - l[39]) == -4) S.add(l[39] + 471 + l[40] + 105 == 682) S.add(l[40] - 298 + l[41] + 725 == 579) S.add(759 * l[41] + 279 * l[42] == 109257) S.add(l[0] + 159 + 505 * l[42] == 63357) S.check() #检测是否有解 d=S.model() #输出 flag = b'' #字节字符串 for i in range(43): flag += long_to_bytes(d[l[i]].as_long()) print(flag) #b'ISCTF{88863cb9-dc15-4d1e-b64f-33cb9aa6e46b}'
应该也是动态flag