当前位置:首页 > Write Up > 正文内容

[WP]安恒杯元旦月赛 -- MISC RE

Luz2年前 (2020-01-01)Write Up602

MISC:

游戏:

    image.png

    解压得到文件

    显然是RPG Maker XP之类的东西做的游戏

    使用RPG Maker新建一个工程 接着把题目给的东西复制到工程文件夹里 重新载入

    image.png

    image.png

    image.png

    image.png

    在三个房间的三个npc上获得十六进制  拼起来就是flag


爆破鬼才

原来的名称忘记了

首先爆破题目的压缩包密码  题目已经给出提示是a-z 0-9 的六位数密码

abc123秒解

    image.png

    解压后又得到一个加密压缩包  压缩包里面有 1.txt 2.txt 3.txt比较可以 他们的长度不长 拿到了CRC32的值后可以爆破

    爆破得到密码 Blowitup

    CRC爆破脚本:

from zlib import crc32
import random
char='0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
def crc32_f(data):
    return hex(crc32(data)&0xffffffff)[2:10]
length=input('length:')
crc32_=raw_input('crc32:').lower()
while True:
    text=''
    for i in range(length):
        text+=char[random.randint(0,len(char)-1)]
    if crc32_f(text)==crc32_:
        raw_input('find it:'+text)
        exit

    接下来解压后有个hint.txt


    image.png

    由于还有一个jpg文件 猜测flag被使用outguess加密到了jpg中

    

    提示密码是生日


#coding:utf-8
import os
import sys
import random
import time
for i in range(2009,2020):
 for j in range(1,13):
  for k in range(1,32):
   os.system("outguess -k "+str(i)+str(j).rjust(2,'0')+str(k).rjust(2,'0')+" -r /root/桌面/Ziggs.jpg /root/桌面/zig/"+str(i)+str(j).rjust(2,'0')+str(k).rjust(2,'0')+".txt")

    脚本爆破


得到很多文件 从大到小排一下序

0字节的肯定不是 我猜测这里拿到的直接就是flag,所以几kb的文件也不是


翻了翻几个几字节的result



image.png


拿到flag



RE:

扫雷游戏:   

image.png

IDA查看

image.png


main 函数最下放找到游戏结束的判断和对成功的跳转


image.png



跳转到伪代码


image.png


修改jnz为jz 保存


image.png

发现是 junkflag


image.png


IDA 进入 re()函数,发现还有一个判断修改 jnz 为 jz  再次保存

image.png


踩一个雷 ,此时输出正确 flag


分享给朋友:

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。