适合作为桌面
暂无
工具
- python反编译 - 在线工具:https://tool.lu/pyc/
解法
用 StegSolve 打开,左上角发现隐藏的二维码。
放大图像,用 QR Research 解码。
得到一串编码。
03F30D0A79CB05586300000000000000000100000040000000730D0000006400008400005A000064010053280200000063000000000300000016000000430000007378000000640100640200640300640400640500640600640700640300640800640900640A00640600640B00640A00640700640800640C00640C00640D00640E00640900640F006716007D00006410007D0100781E007C0000445D16007D02007C01007400007C0200830100377D0100715500577C010047486400005328110000004E6966000000696C00000069610000006967000000697B000000693300000069380000006935000000693700000069300000006932000000693400000069310000006965000000697D000000740000000028010000007403000000636872280300000074030000007374727404000000666C6167740100000069280000000028000000007304000000312E7079520300000001000000730A0000000001480106010D0114014E280100000052030000002800000000280000000028000000007304000000312E707974080000003C6D6F64756C653E010000007300000000
导入 Winhex。
十六进制转为二进制。
另存为 .pyc 文件。
使用python反编译 - 在线工具解密。
# !/usr/bin/env python
# visit https://tool.lu/pyc/ for more information
# Version: Python 2.7
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
修改一下。
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)
flag()
Flag
flag{139711e8e9ed545e}
问题(待解决)
使用 uncompyle6 解密。
uncompyle6 1.pyc -o 1.py
可以成功解密,但是数组中的数据不对。
# uncompyle6 version 3.9.1
# Python bytecode version base 2.7 (62211)
# Decompiled from: Python 3.11.5 (tags/v3.11.5:cce6ba9, Aug 24 2023, 14:38:34) [MSC v.1936 64 bit (AMD64)]
# Embedded file name: 1.py
# Compiled at: 2016-10-18 15:12:57
def flag():
str = [
1, 2, 3, 4, 5, 6, 7, 3, 8, 9, 10, 6, 11, 10, 7, 8,
12, 12, 13, 14, 9, 15]
flag = ''
for i in str:
flag += chr(i)
print flag
修改一下。
def flag():
str = [1, 2, 3, 4, 5, 6, 7, 3, 8, 9, 10, 6, 11, 10, 7, 8, 12, 12, 13, 14, 9, 15]
flag = ''
for i in str:
flag += chr(i)
print(flag)
flag();
运行结果为乱码。原因未知。
声明
本博客上发布的所有关于网络攻防技术的文章,仅用于教育和研究目的。所有涉及到的实验操作都在虚拟机或者专门设计的靶机上进行,并且严格遵守了相关法律法规。
博主坚决反对任何形式的非法黑客行为,包括但不限于未经授权的访问、攻击或破坏他人的计算机系统。博主强烈建议每位读者在学习网络攻防技术时,必须遵守法律法规,不得用于任何非法目的。对于因使用这些技术而导致的任何后果,博主不承担任何责任。