Bugku CTF---where is flag 4

题目内容

在这里插入图片描述

解题过程

下载文件,解压得到一串base64编码的字符串
在这里插入图片描述

XQNGuAc9DEoRTAEFAygFDA6BDwz/DJSYbjpeOBBZCbg37dmLNYgNBA0JDAk/iQgCAwEGBwaNDAoOAgQKbGJty24RbH8l73NOfIF/Q0y+wr9EkUHKq/oL4smYRouL38/0w6Yv+yjdx6ZMuqfciszC/kD6jb3A/MCeyv3O887uychMv439SvPNvyn8hKov9Q0fR62rUQEa0FHDT2hxHmXOdhR+q1oibuRm6khVT81ir3KUWuxgKp3fYggtCAhSBUm5BxcOJBpHCQQcTQ4NCSMDDgqEBgbwBpCeZThQPh5YDLUz69yKM4AADQMEDg0+gAELAwEICwuGDQIjSAoMAg4HAAADDQwADQQLLgYNDg0JAwAODAQFAwoICm5ibsJrFmlwKOx/TnmOckgLqQkMIQgDCAoIDQILBAMKCh4ODxuFDwc+K252vu4fwapI1wDXcgwfpx1pUVoBGtmvTN0M234FERj21DB42WyFrTjYCdB+BxpcCUeyAlIEbgQOBwkLAAsNBxENAQMeDAZZqQoNDAAMDVzsCQsEBAcKAwMPDg==

使用在线网站上进行base64解码
Base64 在线解码、编码
在这里插入图片描述
得到一串16进制编码

5D0346B8073D0C4A114C01050328050C0E810F0CFF0C94986E3A5E38105909B837EDD98B35880D040D090C093F89080203010607068D0C0A0E02040A6C626DCB6E116C7F25EF734E7C817F434CBEC2BF449141CAABFA0BE2C998468B8BDFCFF4C3A62FFB28DDC7A64CBAA7DC8ACCC2FE40FA8DBDC0FCC09ECAFDCEF3CEEEC9C84CBF8DFD4AF3CDBF29FC84AA2FF50D1F47ADAB51011AD051C34F68711E65CE76147EAB5A226EE466EA48554FCD62AF72945AEC602A9DDF62082D0808520549B907170E241A4709041C4D0E0D0923030E0A840606F006909E6538503E1E580CB533EBDC8A3380000D03040E0D3E80010B0301080B0B860D0223480A0C020E070000030D0C000D040B2E060D0E0D0903000E0C0405030A080A6E626EC26B16697028EC7F4E798E72480BA9090C210803080A080D020B04030A0A1E0E0F1B850F073E2B6E76BEEE1FC1AA48D700D7720C1FA71D69515A011AD9AF4CDD0CDB7E051118F6D43078D96C85AD38D809D07E071A5C0947B20252046E040E07090B000B0D07110D01031E0C0659A90A0D0C000C0D5CEC090B0404070A03030F0E

仔细观察奇数位置,前16位的奇数位提取出来为504B0304。芜湖,一看就是咱们非常熟悉的zip文件16进制格式的开头
在这里插入图片描述
找到规律了就好办了,编写Python脚本提取奇数位字符,再写成zip文件

#by  :3tefanie丶zhou
#time:2021/11/29
from binascii import *
key= 	"5D0346B8073D0C4A114C01050328050C0E810F0CFF0C94986E3A5E38105909B837EDD98B35880D040D090C093F89080203010607068D0C0A0E02040A6C626DCB6E116C7F25EF734E7C817F434CBEC2BF449141CAABFA0BE2C998468B8BDFCFF4C3A62FFB28DDC7A64CBAA7DC8ACCC2FE40FA8DBDC0FCC09ECAFDCEF3CEEEC9C84CBF8DFD4AF3CDBF29FC84AA2FF50D1F47ADAB51011AD051C34F68711E65CE76147EAB5A226EE466EA48554FCD62AF72945AEC602A9DDF62082D0808520549B907170E241A4709041C4D0E0D0923030E0A840606F006909E6538503E1E580CB533EBDC8A3380000D03040E0D3E80010B0301080B0B860D0223480A0C020E070000030D0C000D040B2E060D0E0D0903000E0C0405030A080A6E626EC26B16697028EC7F4E798E72480BA9090C210803080A080D020B04030A0A1E0E0F1B850F073E2B6E76BEEE1FC1AA48D700D7720C1FA71D69515A011AD9AF4CDD0CDB7E051118F6D43078D96C85AD38D809D07E071A5C0947B20252046E040E07090B000B0D07110D01031E0C0659A90A0D0C000C0D5CEC090B0404070A03030F0E"
flag = ''
p =0
for i in range(len(key)):
p += 1
if p%2==0:
    continue
if p%2==1:
    flag +=key[i]
print(flag)
with open('flag.zip', 'wb') as f:
 f.write(unhexlify(flag))

打开压缩包,发现flag.txt,获得flag
在这里插入图片描述

flag{The_journey_of_looking_for_the_flag_is_really_fun!}

这题主要考察的是思路,解题过程很简单,重要的是观察细致。
ps:提取16进制的时候要小心数据,不要丢失,否则压缩包打不开。
【天上皎皎明月光,人间匆匆少年郎,脚步最匆匆】

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值