随波逐流工作室—-探索前沿科技,分享最新软件。点击标题下蓝字“长弓三皮”关注,我们将为您提供有深度、有价值、有意思的阅读。
朋友们,现在只对常读和星标的公众号才展示大图推送,建议大家把长弓三皮“设为星标”,否则可能就看不到了啦!
作者:随波逐流
不管他是什么,先拖入[随波逐流]CTF编码工具
有个base
[随波逐流]CTF编码工具---base/rot---base混合多重解码
很明显是密钥
再看
有包含
[随波逐流]CTF编码工具---文件---foremost提取
[随波逐流]CTF编码工具---base/rot---base32解码
得到 密码,解压
3078后面跟两个十六进制的字符,3078 就是0x
python代码:
import re
def read_file(file_path):
"""
读取指定文件的内容并返回
:param file_path: 文件的路径
:return: 文件内容
"""
with open(file_path, 'r') as f:
return f.read()
# 读取文件内容
number = read_file('g:/temp/1.txt')
result = []
# 使用正则表达式以每两个字符为一组进行匹配拆分
result.append(re.findall(r'.{2}', number))
# 获取匹配结果列表中的第一个元素(因为append操作后result是一个包含一个元素的列表)
result = result[0]
strings = ''
for i in result:
# 将十六进制字符串转换为字节数组
y = bytearray.fromhex(i)
# 将字节数组转换为字符串表示形式
z = str(y)
# 使用正则表达式提取出字符串表示中的实际内容(去除前后的b' 和 ')
z = re.findall("b'(.*?)'", z)[0]
strings += z
# 以'0x'为分隔符拆分字符串
b = strings.split('0x')
strings = ''
for i in b:
if len(i) == 1:
# 如果长度为1,在前面补0
i = '0' + i
strings += i
# 将处理后的字符串写入到指定文件
with open('g:/temp/2.txt', 'w') as f:
f.write(strings)
拖入[随波逐流]CTF编码工具
[随波逐流]CTF编码工具---文件---文件中16进制保存为hex文件:1.7z
用前面的key解密
import base64
flag_base64=True
flag_base32=True
# 读取文件内容
file_path = 'g:/temp/secenc.txt'
with open(file_path) as fp:
content = fp.read()
# print(content)
while flag_base64 or flag_base32:
try:
content=base64.b64decode(content).decode()
if content=='':
flag_base64=False
else:
flag_base64=True
except:
flag_base64=False
try:
content=base64.b32decode(content).decode()
if content == '':
flag_base32 = False
else:
flag_base32 = True
except:
flag_base32=False
print(flag_base64,flag_base32)
print(content)
[随波逐流]CTF编码工具---字密1---brainfuck解码
[随波逐流]CTF编码工具---在线解码---brainfuck解码
flag{Welc0me_tO_cTf_3how!}
你若喜欢,为“长弓三皮”点个赞和在看哦
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...