【Hackgame 2022】Flag 自动机

Neuro 2025-11-02 15:47:37 205 0 返回题目详情


Flag 自动机

看了很多大佬的WP。这个题有很多种解法,这里分享一种比较简单而又不是很简单的方法——直接改汇编

其实这样可以比较了解整个程序结构。

>整个主程序MainWindow 函数为 SUB_401510.直接对此函数进行分析操作

>先对主判断函数进行修改

.text:0040180A处有一个关键比较:

assembly

.text:0040180Acmp[ebp+lParam],1BF52h
.text:00401811jz      short loc_401840

这里1BF52h就是十进制的114514。当lParam == 114514时,程序会跳转到loc_401840生成 flag。

将条件跳转改为无条件跳转,即用 jmp 代替 jz

>再对乱动的按钮进行修改

pfnSubclass函数可以看到:

  • 当鼠标移动时(WM_MOUSEMOVE = 0x200),按钮会随机改变位置

  • 直接禁用按钮乱动

修改pfnSubclass函数,让它不处理鼠标移动消息:

定位到:.text:0040195F
直接跳到函数结尾

然后应用程序,直接运行即可

明显可以对上焦并且直接点击,这个方法粗暴简单

得到flag>

flag{Y0u_rea1ly_kn0w_Win32API_89ab91ac0c}


分类:Reverse
image
作者:Neuro

3

提交

0

收入

相关WriteUP

  • 2018网鼎杯3-babyre

    ***收费WriteUP请购买后查看,VIP用户可免费查看***

    • Reverse
    • 4年前
  • EasyXor

    ***收费WriteUP请购买后查看,VIP用户可免费查看***

    • Reverse
    • 2年前
  • EasyReverse

    ***收费WriteUP请购买后查看,VIP用户可免费查看***

    • Reverse
    • 2年前
  • [NUAACTF-2017] [Reverse]robots解法

    ***收费WriteUP请购买后查看,VIP用户可免费查看***

    • Reverse
    • 2年前
  • 2018-网鼎杯-advance

    ***收费WriteUP请购买后查看,VIP用户可免费查看***

    • Reverse
    • 2年前
问题反馈