首页
社区
课程
招聘
[原创]第一题:神秘来信 write up
2019-6-10 14:44 1515

[原创]第一题:神秘来信 write up

2019-6-10 14:44
1515
  1. 搜索关键字符串找到success!定位到算法逻辑

    2.算法逻辑

    上面算法可以确定key的长度位6,而且倒数三个字符确定位“353”
    3.前面三个字符确定
    算法如下

    第一次的题即使esi不为零也后面也还有触发异常的操作,导致只要前三个字符相加等于0x95就是可以进入sucess导致到多解。
    keygen:
#include <stdio.h>
int main()
{
    unsigned int  esi = 0;
    int i, j,k,p;
    for (i = 0; i < 6; i++)
    {
        s[0] = 0x30+i;
        for (j = 5 - i; j >= 0; j--)
        {
            s[1] = 0x30+j;
            k = 5 - i - j;
            s[2] = 0x30+k;
            esi = 0;
            for (p = 0; p < 6; p++)
            {
                esi <<= 4;
                esi += 0xffffffd0;
                esi += s[p];
            }
            if (esi == 0x401353)
            {
                printf_s("[*]find:\n");
                for (p = 0; p < 6; p++)
                    printf_s("%c ", s[p]);
            }
        }
    }
}

得到key:
401353


[培训]二进制漏洞攻防(第3期);满10人开班;模糊测试与工具使用二次开发;网络协议漏洞挖掘;Linux内核漏洞挖掘与利用;AOSP漏洞挖掘与利用;代码审计。

收藏
点赞0
打赏
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回