NepCTF we_can_go

分析

首先查壳,32位无壳

image-20220720230327494

然后直接去运行一下看看,随便输入点什么

image-20220720230532023

这里弹出了false,然后去IDA字符串中去找到false

image-20220720230637521

然后交叉引用它,去找到突破口

image-20220720230756747

image-20220720230851416

然后进去看

image-20220720230958286

这里的23告诉我们flag总共是23个字符,出去NepCTF{}就还剩15个,然后这里的+7应该表示的是”NepCTF{“,所以我就觉得flag应该会在dword_10DB6E0函数中,于是进去看一下

image-20220720231355432

我在这第12行result = v1;这里下了断点,去动调一下,看看会不会有什么东西

image-20220720231510074

看见这里有东西传进去这些寄存器中,然后按F8走一下,去看一下寄存器里的是什么东西

image-20220720231808203

然后就出flag了

NepCTF{U9eT_t0_th3TRUE}

总结

这题其实就是考你会不会动态调试,以及去别开不必要的调试找到有用的,以及观察能力