1.re类型的第一题是apk,反编译dex文件,发现其中并没有存在相关连的具体算法;
所以应该想到算法存在于lib文件夹下的.so文件中,利用搜索;
可以查看到对应的checkflag相关函数;从dex的反编译看;只要执行这一步成功就可以得到flag;
将.so文件加载到IDA中,我们可以发现对应的算法;
v5为输入的flag;v6和v7是x和xx两个数组的逻辑是将每一个输入与xx数组做乘法;然后结果相加,
判断是否等于x数组的值;
应为每一个v6都是由32个未知的flag得到的,可以把他考虑成一个解32元一次方程,使用math库的solve函数可以解多元一次方程;
2.提取对应xx的值进行处理;
3.提取对应x数组的值为;
x=[201711, 208667, 203854, 205935, 196952, 211952, 189384, 174521, 197444, 202569, 184416, 186751, 214509, 220072, 161059, 225949, 203349, 210431, 168832, 208291, 212829, 220012, 191145, 205850, 176410, 198189, 200769, 210976, 178739, 205545, 196557, 230918]
3.利用对应的脚本求解为# -*- coding: utf-8 -*-
# @Time : 2020/7/31 16:30
# @AuThor : liujiajia123
# @file : chall.py
import numpy as np
s = [13, 0, 0, 0, 144, 0, 0, 0, 129, 0,
0, 0, 36, 0, 0, 0, 58, 0, 0, 0,
38, 0, 0, 0, 53, 0, 0, 0, 40, 0,
0, 0, 103, 0, 0, 0, 125, 0, 0, 0,
97, 0, 0, 0, 19, 0, 0, 0, 68, 0,
0, 0, 132, 0, 0, 0, 31, 0, 0, 0,
148, 0, 0, 0, 150, 0, 0, 0, 96, 0,
0, 0, 118, 0, 0, 0, 37, 0, 0, 0,
30, 0, 0, 0, 143, 0, 0, 0, 134, 0,
0, 0, 37, 0, 0, 0, 96, 0, 0, 0,
42, 0, 0, 0, 129, 0, 0, 0, 84, 0,
0, 0, 111, 0, 0, 0, 66, 0, 0, 0,
13, 0, 0, 0, 48, 0, 0, 0, 127, 0,
0, 0, 111, 0, 0, 0, 102, 0, 0, 0,
17, 0, 0, 0, 111, 0, 0, 0, 100, 0,
0, 0, 120, 0, 0, 0, 73, 0, 0, 0,
34, 0, 0, 0, 144, 0, 0, 0, 78, 0,
0, 0, 86, 0, 0, 0, 133, 0, 0, 0,
48, 0, 0, 0, 64, 0, 0, 0, 141, 0,
0, 0, 110, 0, 0, 0, 15, 0, 0, 0,
10, 0, 0, 0, 37, 0, 0, 0, 128, 0,
0, 0, 119, 0, 0, 0, 68, 0, 0, 0,
104, 0, 0, 0, 137, 0, 0, 0, 12, 0,
0, 0, 97, 0, 0, 0, 29, 0, 0, 0,
46, 0, 0, 0, 11, 0, 0, 0, 116, 0,
0, 0, 116, 0, 0, 0, 131, 0, 0, 0,
124, 0, 0, 0, 54, 0, 0, 0, 57, 0,
0, 0, 55, 0, 0, 0, 122, 0, 0, 0,
74, 0, 0, 0, 123, 0, 0, 0, 57, 0,
0, 0, 44, 0, 0, 0, 63, 0, 0, 0,
131, 0, 0, 0, 81, 0, 0, 0, 86, 0,
0, 0, 56, 0, 0, 0, 92, 0, 0, 0,
31, 0, 0, 0, 118, 0, 0, 0, 98, 0,
0, 0, 135, 0, 0, 0, 66, 0, 0, 0,
115, 0, 0, 0, 51, 0, 0, 0, 128, 0,
0, 0, 102, 0, 0, 0, 67, 0, 0, 0,
41, 0, 0, 0, 40, 0, 0, 0, 41, 0,
0, 0, 144, 0, 0, 0, 53, 0, 0, 0,
84, 0, 0, 0, 105, 0, 0, 0, 121, 0,
0, 0, 74, 0, 0, 0, 132, 0, 0, 0,
40, 0, 0, 0, 66, 0, 0, 0, 62, 0,
0, 0, 61, 0, 0, 0, 18, 0, 0, 0,
103, 0, 0, 0, 107, 0, 0, 0, 51, 0,
0, 0, 133, 0, 0, 0, 85, 0, 0, 0,
132, 0, 0, 0, 137, 0, 0, 0, 52, 0,
0, 0, 42, 0, 0, 0, 69, 0, 0, 0,
79, 0, 0, 0, 70, 0, 0, 0, 147, 0,
0, 0, 54, 0, 0, 0, 43, 0, 0, 0,
50, 0, 0, 0, 145, 0, 0, 0, 54, 0,
0, 0, 69, 0, 0, 0, 58, 0, 0, 0,
58, 0, 0, 0, 47, 0, 0, 0, 136, 0,
0, 0, 74, 0, 0, 0, 42, 0, 0, 0,
58, 0, 0, 0, 65, 0, 0, 0, 62, 0,
0, 0, 134, 0, 0, 0, 53, 0, 0, 0,
56, 0, 0, 0, 143, 0, 0, 0, 74, 0,
0, 0, 70, 0, 0, 0, 84, 0, 0, 0,
33, 0, 0, 0, 112, 0, 0, 0, 36, 0,
0, 0, 61, 0, 0, 0, 41, 0, 0, 0,
17, 0, 0, 0, 93, 0, 0, 0, 111, 0,
0, 0, 66, 0, 0, 0, 85, 0, 0, 0,
62, 0, 0, 0, 37, 0, 0, 0, 133, 0,
0, 0, 149, 0, 0, 0, 144, 0, 0, 0,
41, 0, 0, 0, 103, 0, 0, 0, 55, 0,
0, 0, 16, 0, 0, 0, 125, 0, 0, 0,
132, 0, 0, 0, 117, 0, 0, 0, 53, 0,
0, 0, 57, 0, 0, 0, 104, 0, 0, 0,
125, 0, 0, 0, 10, 0, 0, 0, 78, 0,
0, 0, 19, 0, 0, 0, 34, 0, 0, 0,
25, 0, 0, 0, 126, 0, 0, 0, 134, 0,
0, 0, 139, 0, 0, 0, 90, 0, 0, 0,
22, 0, 0, 0, 138, 0, 0, 0, 142, 0,
0, 0, 56, 0, 0, 0, 87, 0, 0, 0,
43, 0, 0, 0, 116, 0, 0, 0, 39, 0,
0, 0, 74, 0, 0, 0, 105, 0, 0, 0,
61, 0, 0, 0, 54, 0, 0, 0, 48, 0,
0, 0, 62, 0, 0, 0, 136, 0, 0, 0,
87, 0, 0, 0, 129, 0, 0, 0, 68, 0,
0, 0, 132, 0, 0, 0, 28, 0, 0, 0,
102, 0, 0, 0, 69, 0, 0, 0, 71, 0,
0, 0, 36, 0, 0, 0, 72, 0, 0, 0,
59, 0, 0, 0, 114, 0, 0, 0, 96, 0,
0, 0, 55, 0, 0, 0, 71, 0, 0, 0,
75, 0, 0, 0, 126, 0, 0, 0, 76, 0,
0, 0, 89, 0, 0, 0, 106, 0, 0, 0,
116, 0, 0, 0, 33, 0, 0, 0, 138, 0,
0, 0, 143, 0, 0, 0, 144, 0, 0, 0,
15, 0, 0, 0, 65, 0, 0, 0, 86, 0,
0, 0, 61, 0, 0, 0, 79, 0, 0, 0,
64, 0, 0, 0, 24, 0, 0, 0, 62, 0,
0, 0, 10, 0, 0, 0, 99, 0, 0, 0,
14, 0, 0, 0, 24, 0, 0, 0, 141, 0,
0, 0, 45, 0, 0, 0, 68, 0, 0, 0,
25, 0, 0, 0, 124, 0, 0, 0, 120, 0,
0, 0, 108, 0, 0, 0, 29, 0, 0, 0,
71, 0, 0, 0, 38, 0, 0, 0, 10, 0,
0, 0, 83, 0, 0, 0, 63, 0, 0, 0,
121, 0, 0, 0, 44, 0, 0, 0, 30, 0,
0, 0, 112, 0, 0, 0, 107, 0, 0, 0,
85, 0, 0, 0, 66, 0, 0, 0, 82, 0,
0, 0, 56, 0, 0, 0, 137, 0, 0, 0,
39, 0, 0, 0, 34, 0, 0, 0, 39, 0,
0, 0, 58, 0, 0, 0, 116, 0, 0, 0,
125, 0, 0, 0, 45, 0, 0, 0, 62, 0,
0, 0, 120, 0, 0, 0, 103, 0, 0, 0,
55, 0, 0, 0, 148, 0, 0, 0, 56, 0,
0, 0, 81, 0, 0, 0, 89, 0, 0, 0,
99, 0, 0, 0, 51, 0, 0, 0, 113, 0,
0, 0, 80, 0, 0, 0, 79, 0, 0, 0,
102, 0, 0, 0, 41, 0, 0, 0, 27, 0,
0, 0, 46, 0, 0, 0, 62, 0, 0, 0,
33, 0, 0, 0, 74, 0, 0, 0, 70, 0,
0, 0, 100, 0, 0, 0, 56, 0, 0, 0,
37, 0, 0, 0, 129, 0, 0, 0, 102, 0,
0, 0, 112, 0, 0, 0, 137, 0, 0, 0,
13, 0, 0, 0, 48, 0, 0, 0, 145, 0,
0, 0, 52, 0, 0, 0, 61, 0, 0, 0,
60, 0, 0, 0, 47, 0, 0, 0, 57, 0,
0, 0, 80, 0, 0, 0, 111, 0, 0, 0,
150, 0, 0, 0, 44, 0, 0, 0, 78, 0,
0, 0, 16, 0, 0, 0, 59, 0, 0, 0,
131, 0, 0, 0, 24, 0, 0, 0, 45, 0,
0, 0, 106, 0, 0, 0, 51, 0, 0, 0,
78, 0, 0, 0, 146, 0, 0, 0, 19, 0,
0, 0, 113, 0, 0, 0, 105, 0, 0, 0,
137, 0, 0, 0, 16, 0, 0, 0, 47, 0,
0, 0, 96, 0, 0, 0, 84, 0, 0, 0,
33, 0, 0, 0, 89, 0, 0, 0, 135, 0,
0, 0, 60, 0, 0, 0, 139, 0, 0, 0,
60, 0, 0, 0, 123, 0, 0, 0, 121, 0,
0, 0, 10, 0, 0, 0, 28, 0, 0, 0,
65, 0, 0, 0, 43, 0, 0, 0, 111, 0,
0, 0, 144, 0, 0, 0, 118, 0, 0, 0,
11, 0, 0, 0, 26, 0, 0, 0, 37, 0,
0, 0, 84, 0, 0, 0, 103, 0, 0, 0,
12, 0, 0, 0, 14, 0, 0, 0, 57, 0,
0, 0, 126, 0, 0, 0, 54, 0, 0, 0,
27, 0, 0, 0, 116, 0, 0, 0, 78, 0,
0, 0, 103, 0, 0, 0, 128, 0, 0, 0,
73, 0, 0, 0, 135, 0, 0, 0, 107, 0,
0, 0, 102, 0, 0, 0, 63, 0, 0, 0,
98, 0, 0, 0, 78, 0, 0, 0, 60, 0,
0, 0, 67, 0, 0, 0, 58, 0, 0, 0,
48, 0, 0, 0, 119, 0, 0, 0, 54, 0,
0, 0, 78, 0, 0, 0, 10, 0, 0, 0,
45, 0, 0, 0, 46, 0, 0, 0, 120, 0,
0, 0, 138, 0, 0, 0, 67, 0, 0, 0,
27, 0, 0, 0, 148, 0, 0, 0, 61, 0,
0, 0, 69, 0, 0, 0, 29, 0, 0, 0,
34, 0, 0, 0, 104, 0, 0, 0, 116, 0,
0, 0, 55, 0, 0, 0, 72, 0, 0, 0,
98, 0, 0, 0, 88, 0, 0, 0, 137, 0,
0, 0, 72, 0, 0, 0, 86, 0, 0, 0,
118, 0, 0, 0, 79, 0, 0, 0, 29, 0,
0, 0, 113, 0, 0, 0, 67, 0, 0, 0,
62, 0, 0, 0, 119, 0, 0, 0, 70, 0,
0, 0, 136, 0, 0, 0, 125, 0, 0, 0,
47, 0, 0, 0, 145, 0, 0, 0, 27, 0,
0, 0, 80, 0, 0, 0, 75, 0, 0, 0,
69, 0, 0, 0, 40, 0, 0, 0, 145, 0,
0, 0, 37, 0, 0, 0, 37, 0, 0, 0,
97, 0, 0, 0, 41, 0, 0, 0, 114, 0,
0, 0, 90, 0, 0, 0, 99, 0, 0, 0,
87, 0, 0, 0, 144, 0, 0, 0, 130, 0,
0, 0, 66, 0, 0, 0, 10, 0, 0, 0,
42, 0, 0, 0, 43, 0, 0, 0, 144, 0,
0, 0, 130, 0, 0, 0, 71, 0, 0, 0,
110, 0, 0, 0, 112, 0, 0, 0, 123, 0,
0, 0, 138, 0, 0, 0, 117, 0, 0, 0,
118, 0, 0, 0, 52, 0, 0, 0, 64, 0,
0, 0, 120, 0, 0, 0, 90, 0, 0, 0,
140, 0, 0, 0, 95, 0, 0, 0, 122, 0,
0, 0, 22, 0, 0, 0, 33, 0, 0, 0,
123, 0, 0, 0, 29, 0, 0, 0, 147, 0,
0, 0, 100, 0, 0, 0, 133, 0, 0, 0,
92, 0, 0, 0, 106, 0, 0, 0, 39, 0,
0, 0, 48, 0, 0, 0, 101, 0, 0, 0,
30, 0, 0, 0, 149, 0, 0, 0, 86, 0,
0, 0, 117, 0, 0, 0, 15, 0, 0, 0,
61, 0, 0, 0, 28, 0, 0, 0, 96, 0,
0, 0, 76, 0, 0, 0, 36, 0, 0, 0,
111, 0, 0, 0, 139, 0, 0, 0, 53, 0,
0, 0, 16, 0, 0, 0, 93, 0, 0, 0,
74, 0, 0, 0, 132, 0, 0, 0, 24, 0,
0, 0, 123, 0, 0, 0, 49, 0, 0, 0,
91, 0, 0, 0, 24, 0, 0, 0, 87, 0,
0, 0, 40, 0, 0, 0, 32, 0, 0, 0,
74, 0, 0, 0, 130, 0, 0, 0, 73, 0,
0, 0, 13, 0, 0, 0, 135, 0, 0, 0,
88, 0, 0, 0, 46, 0, 0, 0, 105, 0,
0, 0, 53, 0, 0, 0, 40, 0, 0, 0,
49, 0, 0, 0, 48, 0, 0, 0, 63, 0,
0, 0, 15, 0, 0, 0, 34, 0, 0, 0,
131, 0, 0, 0, 89, 0, 0, 0, 133, 0,
0, 0, 145, 0, 0, 0, 112, 0, 0, 0,
124, 0, 0, 0, 81, 0, 0, 0, 129, 0,
0, 0, 105, 0, 0, 0, 78, 0, 0, 0,
121, 0, 0, 0, 69, 0, 0, 0, 10, 0,
0, 0, 129, 0, 0, 0, 133, 0, 0, 0,
27, 0, 0, 0, 123, 0, 0, 0, 108, 0,
0, 0, 117, 0, 0, 0, 121, 0, 0, 0,
55, 0, 0, 0, 122, 0, 0, 0, 38, 0,
0, 0, 128, 0, 0, 0, 136, 0, 0, 0,
53, 0, 0, 0, 81, 0, 0, 0, 29, 0,
0, 0, 70, 0, 0, 0, 45, 0, 0, 0,
127, 0, 0, 0, 40, 0, 0, 0, 134, 0,
0, 0, 133, 0, 0, 0, 51, 0, 0, 0,
63, 0, 0, 0, 124, 0, 0, 0, 110, 0,
0, 0, 47, 0, 0, 0, 117, 0, 0, 0,
75, 0, 0, 0, 34, 0, 0, 0, 148, 0,
0, 0, 29, 0, 0, 0, 112, 0, 0, 0,
90, 0, 0, 0, 87, 0, 0, 0, 83, 0,
0, 0, 123, 0, 0, 0, 25, 0, 0, 0,
20, 0, 0, 0, 148, 0, 0, 0, 81, 0,
0, 0, 38, 0, 0, 0, 95, 0, 0, 0,
129, 0, 0, 0, 117, 0, 0, 0, 72, 0,
0, 0, 48, 0, 0, 0, 33, 0, 0, 0,
104, 0, 0, 0, 38, 0, 0, 0, 21, 0,
0, 0, 143, 0, 0, 0, 114, 0, 0, 0,
141, 0, 0, 0, 18, 0, 0, 0, 75, 0,
0, 0, 71, 0, 0, 0, 113, 0, 0, 0,
120, 0, 0, 0, 48, 0, 0, 0, 37, 0,
0, 0, 59, 0, 0, 0, 102, 0, 0, 0,
133, 0, 0, 0, 120, 0, 0, 0, 80, 0,
0, 0, 113, 0, 0, 0, 49, 0, 0, 0,
138, 0, 0, 0, 23, 0, 0, 0, 78, 0,
0, 0, 75, 0, 0, 0, 11, 0, 0, 0,
141, 0, 0, 0, 76, 0, 0, 0, 72, 0,
0, 0, 17, 0, 0, 0, 23, 0, 0, 0,
118, 0, 0, 0, 61, 0, 0, 0, 105, 0,
0, 0, 83, 0, 0, 0, 66, 0, 0, 0,
135, 0, 0, 0, 113, 0, 0, 0, 83, 0,
0, 0, 105, 0, 0, 0, 92, 0, 0, 0,
102, 0, 0, 0, 24, 0, 0, 0, 58, 0,
0, 0, 126, 0, 0, 0, 46, 0, 0, 0,
23, 0, 0, 0, 34, 0, 0, 0, 83, 0,
0, 0, 89, 0, 0, 0, 62, 0, 0, 0,
102, 0, 0, 0, 69, 0, 0, 0, 16, 0,
0, 0, 102, 0, 0, 0, 103, 0, 0, 0,
147, 0, 0, 0, 46, 0, 0, 0, 28, 0,
0, 0, 101, 0, 0, 0, 42, 0, 0, 0,
20, 0, 0, 0, 17, 0, 0, 0, 27, 0,
0, 0, 11, 0, 0, 0, 132, 0, 0, 0,
133, 0, 0, 0, 119, 0, 0, 0, 68, 0,
0, 0, 65, 0, 0, 0, 41, 0, 0, 0,
95, 0, 0, 0, 41, 0, 0, 0, 134, 0,
0, 0, 135, 0, 0, 0, 135, 0, 0, 0,
53, 0, 0, 0, 38, 0, 0, 0, 131, 0,
0, 0, 93, 0, 0, 0, 71, 0, 0, 0,
82, 0, 0, 0, 49, 0, 0, 0, 115, 0,
0, 0, 48, 0, 0, 0, 80, 0, 0, 0,
68, 0, 0, 0, 50, 0, 0, 0, 51, 0,
0, 0, 28, 0, 0, 0, 90, 0, 0, 0,
101, 0, 0, 0, 34, 0, 0, 0, 24, 0,
0, 0, 145, 0, 0, 0, 75, 0, 0, 0,
146, 0, 0, 0, 120, 0, 0, 0, 60, 0,
0, 0, 93, 0, 0, 0, 112, 0, 0, 0,
24, 0, 0, 0, 82, 0, 0, 0, 139, 0,
0, 0, 150, 0, 0, 0, 113, 0, 0, 0,
128, 0, 0, 0, 36, 0, 0, 0, 130, 0,
0, 0, 47, 0, 0, 0, 32, 0, 0, 0,
93, 0, 0, 0, 53, 0, 0, 0, 122, 0,
0, 0, 39, 0, 0, 0, 96, 0, 0, 0,
19, 0, 0, 0, 131, 0, 0, 0, 33, 0,
0, 0, 42, 0, 0, 0, 123, 0, 0, 0,
80, 0, 0, 0, 113, 0, 0, 0, 108, 0,
0, 0, 24, 0, 0, 0, 73, 0, 0, 0,
117, 0, 0, 0, 131, 0, 0, 0, 81, 0,
0, 0, 29, 0, 0, 0, 66, 0, 0, 0,
20, 0, 0, 0, 149, 0, 0, 0, 28, 0,
0, 0, 124, 0, 0, 0, 56, 0, 0, 0,
35, 0, 0, 0, 59, 0, 0, 0, 120, 0,
0, 0, 96, 0, 0, 0, 113, 0, 0, 0,
87, 0, 0, 0, 111, 0, 0, 0, 80, 0,
0, 0, 123, 0, 0, 0, 134, 0, 0, 0,
64, 0, 0, 0, 87, 0, 0, 0, 87, 0,
0, 0, 114, 0, 0, 0, 146, 0, 0, 0,
123, 0, 0, 0, 23, 0, 0, 0, 125, 0,
0, 0, 55, 0, 0, 0, 115, 0, 0, 0,
61, 0, 0, 0, 36, 0, 0, 0, 77, 0,
0, 0, 124, 0, 0, 0, 105, 0, 0, 0,
23, 0, 0, 0, 141, 0, 0, 0, 110, 0,
0, 0, 49, 0, 0, 0, 112, 0, 0, 0,
85, 0, 0, 0, 116, 0, 0, 0, 86, 0,
0, 0, 54, 0, 0, 0, 150, 0, 0, 0,
85, 0, 0, 0, 86, 0, 0, 0, 108, 0,
0, 0, 86, 0, 0, 0, 45, 0, 0, 0,
36, 0, 0, 0, 87, 0, 0, 0, 122, 0,
0, 0, 51, 0, 0, 0, 54, 0, 0, 0,
75, 0, 0, 0, 44, 0, 0, 0, 104, 0,
0, 0, 103, 0, 0, 0, 35, 0, 0, 0,
128, 0, 0, 0, 143, 0, 0, 0, 73, 0,
0, 0, 69, 0, 0, 0, 13, 0, 0, 0,
47, 0, 0, 0, 38, 0, 0, 0, 68, 0,
0, 0, 12, 0, 0, 0, 122, 0, 0, 0,
50, 0, 0, 0, 65, 0, 0, 0, 27, 0,
0, 0, 109, 0, 0, 0, 105, 0, 0, 0,
60, 0, 0, 0, 124, 0, 0, 0, 90, 0,
0, 0, 12, 0, 0, 0, 51, 0, 0, 0,
61, 0, 0, 0, 26, 0, 0, 0, 143, 0,
0, 0, 140, 0, 0, 0, 37, 0, 0, 0,
65, 0, 0, 0, 13, 0, 0, 0, 52, 0,
0, 0, 139, 0, 0, 0, 77, 0, 0, 0,
89, 0, 0, 0, 138, 0, 0, 0, 114, 0,
0, 0, 107, 0, 0, 0, 23, 0, 0, 0,
141, 0, 0, 0, 23, 0, 0, 0, 85, 0,
0, 0, 74, 0, 0, 0, 119, 0, 0, 0,
106, 0, 0, 0, 90, 0, 0, 0, 116, 0,
0, 0, 20, 0, 0, 0, 64, 0, 0, 0,
138, 0, 0, 0, 52, 0, 0, 0, 23, 0,
0, 0, 97, 0, 0, 0, 52, 0, 0, 0,
38, 0, 0, 0, 135, 0, 0, 0, 65, 0,
0, 0, 26, 0, 0, 0, 134, 0, 0, 0,
135, 0, 0, 0, 14, 0, 0, 0, 143, 0,
0, 0, 32, 0, 0, 0, 110, 0, 0, 0,
52, 0, 0, 0, 50, 0, 0, 0, 80, 0,
0, 0, 133, 0, 0, 0, 66, 0, 0, 0,
69, 0, 0, 0, 90, 0, 0, 0, 78, 0,
0, 0, 20, 0, 0, 0, 147, 0, 0, 0,
28, 0, 0, 0, 115, 0, 0, 0, 27, 0,
0, 0, 93, 0, 0, 0, 48, 0, 0, 0,
81, 0, 0, 0, 96, 0, 0, 0, 121, 0,
0, 0, 62, 0, 0, 0, 145, 0, 0, 0,
94, 0, 0, 0, 10, 0, 0, 0, 22, 0,
0, 0, 105, 0, 0, 0, 23, 0, 0, 0,
125, 0, 0, 0, 105, 0, 0, 0, 42, 0,
0, 0, 130, 0, 0, 0, 139, 0, 0, 0,
85, 0, 0, 0, 29, 0, 0, 0, 19, 0,
0, 0, 38, 0, 0, 0, 51, 0, 0, 0,
98, 0, 0, 0, 139, 0, 0, 0, 85, 0,
0, 0, 80, 0, 0, 0, 106, 0, 0, 0,
55, 0, 0, 0, 41, 0, 0, 0, 42, 0,
0, 0, 149, 0, 0, 0, 145, 0, 0, 0,
12, 0, 0, 0, 74, 0, 0, 0, 18, 0,
0, 0, 132, 0, 0, 0, 72, 0, 0, 0,
121, 0, 0, 0, 138, 0, 0, 0, 97, 0,
0, 0, 104, 0, 0, 0, 74, 0, 0, 0,
40, 0, 0, 0, 81, 0, 0, 0, 33, 0,
0, 0, 103, 0, 0, 0, 113, 0, 0, 0,
85, 0, 0, 0, 32, 0, 0, 0, 29, 0,
0, 0, 146, 0, 0, 0, 88, 0, 0, 0,
27, 0, 0, 0, 137, 0, 0, 0, 36, 0,
0, 0, 126, 0, 0, 0, 32, 0, 0, 0,
56, 0, 0, 0, 37, 0, 0, 0, 29, 0,
0, 0, 82, 0, 0, 0, 89, 0, 0, 0,
79, 0, 0, 0, 100, 0, 0, 0, 87, 0,
0, 0, 72, 0, 0, 0, 90, 0, 0, 0,
93, 0, 0, 0, 68, 0, 0, 0, 87, 0,
0, 0, 52, 0, 0, 0, 75, 0, 0, 0,
138, 0, 0, 0, 122, 0, 0, 0, 138, 0,
0, 0, 84, 0, 0, 0, 141, 0, 0, 0,
13, 0, 0, 0, 59, 0, 0, 0, 113, 0,
0, 0, 102, 0, 0, 0, 119, 0, 0, 0,
137, 0, 0, 0, 55, 0, 0, 0, 27, 0,
0, 0, 146, 0, 0, 0, 52, 0, 0, 0,
18, 0, 0, 0, 65, 0, 0, 0, 78, 0,
0, 0, 44, 0, 0, 0, 135, 0, 0, 0,
139, 0, 0, 0, 88, 0, 0, 0, 107, 0,
0, 0, 138, 0, 0, 0, 116, 0, 0, 0,
16, 0, 0, 0, 44, 0, 0, 0, 100, 0,
0, 0, 139, 0, 0, 0, 101, 0, 0, 0,
13, 0, 0, 0, 76, 0, 0, 0, 68, 0,
0, 0, 17, 0, 0, 0, 56, 0, 0, 0,
74, 0, 0, 0, 72, 0, 0, 0, 27, 0,
0, 0, 102, 0, 0, 0, 28, 0, 0, 0,
70, 0, 0, 0, 108, 0, 0, 0, 46, 0,
0, 0, 39, 0, 0, 0, 34, 0, 0, 0,
46, 0, 0, 0, 142, 0, 0, 0, 17, 0,
0, 0, 141, 0, 0, 0, 60, 0, 0, 0,
52, 0, 0, 0, 103, 0, 0, 0, 136, 0,
0, 0, 70, 0, 0, 0, 20, 0, 0, 0,
102, 0, 0, 0, 147, 0, 0, 0, 98, 0,
0, 0, 55, 0, 0, 0, 17, 0, 0, 0,
14, 0, 0, 0, 33, 0, 0, 0, 77, 0,
0, 0, 134, 0, 0, 0, 147, 0, 0, 0,
75, 0, 0, 0, 124, 0, 0, 0, 60, 0,
0, 0, 82, 0, 0, 0, 116, 0, 0, 0,
26, 0, 0, 0, 146, 0, 0, 0, 49, 0,
0, 0, 110, 0, 0, 0, 44, 0, 0, 0,
128, 0, 0, 0, 54, 0, 0, 0, 147, 0,
0, 0, 107, 0, 0, 0, 58, 0, 0, 0,
66, 0, 0, 0, 143, 0, 0, 0, 24, 0,
0, 0, 90, 0, 0, 0, 22, 0, 0, 0,
92, 0, 0, 0, 139, 0, 0, 0, 73, 0,
0, 0, 141, 0, 0, 0, 129, 0, 0, 0,
134, 0, 0, 0, 84, 0, 0, 0, 27, 0,
0, 0, 62, 0, 0, 0, 46, 0, 0, 0,
34, 0, 0, 0, 58, 0, 0, 0, 144, 0,
0, 0, 43, 0, 0, 0, 136, 0, 0, 0,
107, 0, 0, 0, 11, 0, 0, 0, 82, 0,
0, 0, 95, 0, 0, 0, 24, 0, 0, 0,
117, 0, 0, 0, 57, 0, 0, 0, 113, 0,
0, 0, 73, 0, 0, 0, 44, 0, 0, 0,
91, 0, 0, 0, 141, 0, 0, 0, 44, 0,
0, 0, 60, 0, 0, 0, 128, 0, 0, 0,
142, 0, 0, 0, 96, 0, 0, 0, 57, 0,
0, 0, 127, 0, 0, 0, 60, 0, 0, 0,
74, 0, 0, 0, 54, 0, 0, 0, 138, 0,
0, 0, 119, 0, 0, 0, 118, 0, 0, 0,
61, 0, 0, 0, 130, 0, 0, 0, 146, 0,
0, 0, 11, 0, 0, 0, 65, 0, 0, 0,
92, 0, 0, 0, 82, 0, 0, 0, 60, 0,
0, 0, 114, 0, 0, 0, 54, 0, 0, 0,
139, 0, 0, 0, 148, 0, 0, 0, 84, 0,
0, 0, 110, 0, 0, 0, 141, 0, 0, 0,
142, 0, 0, 0, 84, 0, 0, 0, 21, 0,
0, 0, 70, 0, 0, 0, 54, 0, 0, 0,
120, 0, 0, 0, 48, 0, 0, 0, 93, 0,
0, 0, 104, 0, 0, 0, 98, 0, 0, 0,
39, 0, 0, 0, 103, 0, 0, 0, 29, 0,
0, 0, 104, 0, 0, 0]
xx = []
for i in range(0, len(s), 4):
xx.append(s)
x = [201711,
208667,
203854,
205935,
196952,
211952,
189384,
174521,
197444,
202569,
184416,
186751,
214509,
220072,
161059,
225949,
203349,
210431,
168832,
208291,
212829,
220012,
191145,
205850,
176410,
198189,
200769,
210976,
178739,
205545,
196557,
230918]
sum=''
a = []
for i in range(0, 32):
a.append([])
for j in range(0, 32):
a.append(xx[i * 32 + j])
a = np.array(a)
b = np.array(x)
x = np.linalg.solve(a, b)
s = [70, 65, 75, 69, 123, 116, 104, 49, 53, 95, 49, 53, 95, 110, 48, 55, 95, 55, 104, 51,
95, 114, 51, 52, 49, 95, 102, 49, 52, 103, 33, 125]
for i in s:
sum+=chr(i)
print(sum)
# FAKE{th15_15_n07_7h3_r341_f14g!}
|