第二届华为武研119网络安全大赛misc部分wp

本文详细解析了华为武研119网络安全大赛中的一道MISC题,涉及Python字节码嵌入payload及gif异或加密技术。通过使用隐写工具Stegosaurus解密pyc文件并结合流量包分析,最终成功获取flag。

华为武研119网络安全大赛

报名就是线下赛。武研所得一个比赛。题目不错。有点小难。最后4秒第一被冲了。最后亚军。麻了。

MISC

misc只做出来一道题。其他的等官方wp

神秘的视频

核心技术点:python字节码嵌入payload、gif异或加密
解题思路(附截图):

下载附件发现是个mp4,但是打不开。使用十六进制工具打开发现Rar头

更改后缀为.rar解压缩。得到一个流量包和一个pyc文件。首先反编译pyc文件。发现在上面有一行注释。

网上搜索发现一种用于在Python字节码中嵌入Payload的隐写工具 – Stegosaurus。下载相关工具,进行解密,得到前半段flag

再来看流量包。打开流量包,搜索http,发现了三个蚁剑流量。追踪返回包,发现第一个是查看目录,

后两个是访问压缩包文件。直接全部导出。发现一个passwords.txt文件

还有一个加密的pic1.zip。使用passwords.txt对压缩包进行爆破。得到密码:duome438caodan!&^demima

解压出来发现gif文件打不开,用十六进制工具打开什么都没发现。猜测可能经过某种加密,最常见的是异或。就用gif的头去试了一下。最开始以为是跟254异或得到gif的头

发现还是太年轻了。异或出来是gif69-。还是打不开。

又往下猜了几个。发现只有240和255,就两个都试了一下。

发现在跟255异或后把文件头改为gif89a可以还原成gif图片。分离gif图片得到后半段flag

Flag:flag{6754997a44ofd5f4}

解题脚本代码(可选):
#-*- coding: utf-8 -*-

f= open("./pic1.gif")

f_1= open("./test1.gif","rb+")

data= f.read()

dec = ""

forx in range(len(data)):

  dec += chr(ord(data[x])^255)

#print f_1

f_1.write(dec)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值