Youngter-drive

Posted pppyyyzzz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Youngter-drive相关的知识,希望对你有一定的参考价值。

 

先检查是否加壳了,查看过后发现有upx壳,脱壳,win32子系统

 

然后打开main函数一看

技术图片

 

 然后一看这都是些什么。。去查了CreateMUtexW函数,没看懂,跳过。。

 

看到CreateThread,中文意思就是创建线程,所以推测这是多线程运行

点第一个里的函数看看

技术图片

 

 经过了一个函数,并且计数器在减少,然后休眠0.1s

进那个函数一看

技术图片

 

 警告,411A04位置的栈指针值有点问题,然后看了看某位大佬的博客

技术图片

 

 pop这里栈指针未对齐

技术图片

 

 

所以修改为0x0

 

 然后查看函数sub_411940

 

技术图片

 

 经过分析可以知道,小写字母一定会被转换为大写字母。如果不是小写字母就变为off_418000值的Source-38的值

然后新手入门,懂得太少,没有注意到线程的技巧,所以一开始没明白后面那个创建线程有什么用,不过查了别人的wp后,然后想了想,由于是从29开始减少的,所以是对奇数加密的,偶数依旧是原来的值。

技术图片

 

 然后爆破一下

string a1 = "TOiZiZtOrYaToUwPnToBsOaOapsyS";
    string a2 = "QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm";
    string a3;
    for (int i = 0; i < 29; i++)
    {
        int j = 0;
        a3 += a1[i];
        i++;
        while (a1[i] != a2[j])
            j++;
        if (a1[i] >= 65 && a1[i] <= 97)
            a3 += j + 96;
        else
            a3 += j + 38;
    }
    cout << a3;

其次就是由于后面检查flag函数只检查29个字母,但实际上你加密的有30个,所以最后一个可以随便填写。

 

技术图片

 

 不过在BUU上面最后面的只能是E,很多大佬博客都是这样写的

 

以上是关于Youngter-drive的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段——CSS选择器

谷歌浏览器调试jsp 引入代码片段,如何调试代码片段中的js

片段和活动之间的核心区别是啥?哪些代码可以写成片段?

VSCode自定义代码片段——.vue文件的模板

VSCode自定义代码片段6——CSS选择器

VSCode自定义代码片段——声明函数