XCTF——适合作为桌面

XCTF——适合作为桌面

一、题目

在这里插入图片描述
开局一张图,内容自己想办法。

二、解题方法

第一步

我们使用stegsolve工具(用Java写的程序,需要Java运行环境)对图片进行分析,
使用下方的<>按键来更换图片的查看模式,发现了一个二维码
在这里插入图片描述

第二步

使用在线二维码扫描工具(网上一搜就有)对其进行扫描,生成一串16进制的数字。
在这里插入图片描述

03F30D0A79CB05586300000000000000000100000040000000730D0000006400008400005A000064010053280200000063000000000300000016000000430000007378000000640100640200640300640400640500640600640700640300640800640900640A00640600640B00640A00640700640800640C00640C00640D00640E00640900640F006716007D00006410007D0100781E007C0000445D16007D02007C01007400007C0200830100377D0100715500577C010047486400005328110000004E6966000000696C00000069610000006967000000697B000000693300000069380000006935000000693700000069300000006932000000693400000069310000006965000000697D000000740000000028010000007403000000636872280300000074030000007374727404000000666C6167740100000069280000000028000000007304000000312E7079520300000001000000730A0000000001480106010D0114014E280100000052030000002800000000280000000028000000007304000000312E707974080000003C6D6F64756C653E010000007300000000
第三步

使用 winhex 工具进行解码,选择 AscII Hex。
在这里插入图片描述
我们可以看到出现了flag,.py.pyt等字样,根据这些信息我们可以推断,这应该是一个 python 进行编译之后生成的 pyc 文件(一种二进制文件)
接着我们将其保存为.pyc文件
在这里插入图片描述

第四步

对其进行反编译为.py文件
在 PyCharm 的终端中安装 uncompyle6 模块。使用以下命令完成此操作:

pip install uncompyle6

在这里插入图片描述
接着导航到包含 .pyc 文件的目录,使用以下命令反编译 .pyc 文件:

uncompyle6 filename.pyc > filename.py

其中filename.pyc 是要反编译的文件名,filename.py 是要生成的 Python 文件的名称。
实例
如此我们就得到了一个py文件,代码如下



def flag():
    str = [
     102, 108, 97, 103, 123, 51, 56, 97, 53, 55, 48, 51, 50, 
     48, 56, 53, 52, 52, 49, 101, 55, 125]
    flag = ''
    for i in str:
        flag += chr(i)

    print(flag)
# okay decompiling fan.pyc
flag()

其中flag()是我自己添加的函数,以便输出flag。
最终我们得到了flag{38a57032085441e7}

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值