[NPUCTF2020]芜湖(Base64隐写)
发布日期:2021-05-07 12:08:53 浏览次数:19 分类:原创文章

本文共 473 字,大约阅读时间需要 1 分钟。

查壳:

在这里插入图片描述

拖进ida

在这里插入图片描述
在这里插入图片描述

异或

 v2 = Oo0O((v3 >> (7 - k)) & 1, (97 >> (7 - k)) & 1) & 1 ^ 2 * v2;

在这里插入图片描述

_BOOL8 __fastcall o0o0o(int a1, int a2){     return (a2 & a1) == 0;}

a2&a1 这里是一个与门。然后结果和0进行条件等于判断(这里是非门,举个例子:1==0,1是不是就变成了0;0==0是不是就变成了1),所以(a2 & a1) == 0这里是个与非门

如下,五个与非判断

  v2 = o0o0o(a1, a2);  v3 = o0o0o(a1, v2);  v4 = o0o0o(a1, a2);  v5 = o0o0o(a2, v4);  v6 = o0o0o(v5, v3);

用传进来的参数a1和a2得到与非结果v2和v4后,然后用它们分别替换a1或a2进行与非判断,得到v3和v5,最后把v3和v5进行与非判断,得到返回值v6(其实五个与非判断也就是一个异或门
在这里插入图片描述
紧接着判断玩那个函数后,试着动调一下这里
在这里插入图片描述

上一篇:hgameweek4 secret
下一篇:BUUCTF Dig the way

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2025年04月12日 09时27分40秒