首页
社区
课程
招聘
[原创][讨论]Tx 第三题的两个正向函数
发表于: 2010-10-24 22:41 8887

[原创][讨论]Tx 第三题的两个正向函数

2010-10-24 22:41
8887

基本上两个正向函数逆了出来,也没花多少时间,但是在reversekey 算法的时候卡死了,穷举当然可以,但32**32,不知道穷举下来我这破电脑要几天,而且还是想学习下kengen;

由于右手石膏ing,代码逆的时候没太注意格式,试了下base32直接encode username 的hash,结果不对,贴下代码,往大牛指点指点


[注意]看雪招聘,专注安全领域的专业人才平台!

上传的附件:
收藏
免费 7
支持
分享
赞赏记录
参与人
雪币
留言
时间
Youlor
为你点赞~
2024-5-31 04:13
伟叔叔
为你点赞~
2024-2-26 00:00
QinBeast
为你点赞~
2024-1-18 03:38
心游尘世外
为你点赞~
2024-1-14 01:53
shinratensei
为你点赞~
2024-1-11 05:39
飘零丶
为你点赞~
2023-12-26 02:32
PLEBFE
为你点赞~
2023-3-15 05:53
最新回复 (14)
雪    币: 29958
活跃值: (8454)
能力值: ( LV15,RANK:3306 )
在线值:
发帖
回帖
粉丝
2
memcpy(key + 0x12,buf+0x10,8);
        strcat(key,"-");
        memcpy(key + 0x1B,buf+0x18,8);

.....
2010-10-24 23:32
0
雪    币: 279
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
我穷举的, 用时接近0ms, 正向算法出来了, 应该能看出来可以按字节穷举, 我倒是没看出来是base32~~

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
BOOL SearchKeyPair(char key[8], BYTE code[5])
{
    BYTE c[5];
    for (int a0=0; a0<32; a0++)
    for (int a1=0; a1<32; a1++) {
        key[0] = code_char[a0];
        key[1] = code_char[a1];
        Encode(key, c, 2);
 
        if (c[0] != code[0]) continue;
 
        for (int a2=0; a2<32; a2++)
        for (int a3=0; a3<32; a3++) {
            key[2] = code_char[a2];
            key[3] = code_char[a3];
            Encode(key, c, 4);
            if (c[1] != code[1]) continue;
 
            for (int a4=0; a4<32; a4++)
            for (int a5=0; a5<32; a5++) {
                key[4] = code_char[a4];
                key[5] = code_char[a5];
                Encode(key, c, 6);
                if (c[2] != code[2]) continue;
 
                for (int a6=0; a6<32; a6++)
                for (int a7=0; a7<32; a7++) {
 
                    key[6] = code_char[a6];
                    key[7] = code_char[a7];
                    Encode(key, c, 8);
                    if (c[3] == code[3] && c[4] == code[4]) {
                        return TRUE;
                    }
                }
            }
        }
    }
    return FALSE;
}
2010-10-25 03:14
0
雪    币: 107
活跃值: (2012)
能力值: ( LV6,RANK:80 )
在线值:
发帖
回帖
粉丝
4
穷举的时候不一定要全部穷举,可以先穷举前面几字节。因为前面的几个字节是不变的已经稳定了。
2010-10-25 08:39
0
雪    币: 366
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
在穷举的时候可以分步判断,整个穷举过程其实很快;

在这里想请教下各位大侠,怎么看出那个name + C盘卷 + "Tencent"算特征的函数是SHA1算法,是不是有啥技巧?那个我感觉是体力活不像第一个那么简单;
2010-10-25 09:06
0
雪    币: 295
活跃值: (11)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
6
你peid加载  有个插件可以判断的。

0040AB90  CA B1 CA B1 BF CC BF CC BE D6 B2 BF B5 D8 C7 F8  时时刻刻局部地区
0040ABA0  CD BC C7 EE                                      图穷匕现
2010-10-25 09:14
0
雪    币: 382
活跃值: (442)
能力值: ( LV2,RANK:140 )
在线值:
发帖
回帖
粉丝
7
丁同学,2个keygen都写错。。现在能代码好了??
2010-10-25 09:33
0
雪    币: 382
活跃值: (442)
能力值: ( LV2,RANK:140 )
在线值:
发帖
回帖
粉丝
8
peid的就可以
上传的附件:
2010-10-25 09:40
0
雪    币: 366
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
这方面接触得不多,知道的技巧还是太少,多谢两位了;
2010-10-25 09:43
0
雪    币: 146
活跃值: (182)
能力值: ( LV13,RANK:220 )
在线值:
发帖
回帖
粉丝
10
[QUOTE=ProgmBoy;878060]peid的就可以
[/QUOTE]

xx这也行。。。。


看出来也搞不定,算法太长了,没扣出来
2010-10-25 09:48
0
雪    币: 420
活跃值: (77)
能力值: ( LV13,RANK:500 )
在线值:
发帖
回帖
粉丝
11
代码单手敲的,....

我主要是想将正向的逆回去 ..
2010-10-25 10:13
0
雪    币: 420
活跃值: (77)
能力值: ( LV13,RANK:500 )
在线值:
发帖
回帖
粉丝
12
手部太方便,弄的比较粗鲁...
见笑了.....
2010-10-25 10:16
0
雪    币: 146
活跃值: (182)
能力值: ( LV13,RANK:220 )
在线值:
发帖
回帖
粉丝
13
保重身体饿
2010-10-25 11:13
0
雪    币: 382
活跃值: (442)
能力值: ( LV2,RANK:140 )
在线值:
发帖
回帖
粉丝
14
苦练一指禅。。
2010-10-25 14:25
0
雪    币: 75
活跃值: (883)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
15
跟下,看看看看看
2010-10-25 14:27
0
游客
登录 | 注册 方可回帖
返回

账号登录
验证码登录

忘记密码?
没有账号?立即免费注册