攻防世界base除4_攻防世界misc高手进阶篇教程(4)

本文介绍了攻防世界Misc挑战的多个关卡解决方案,包括转十进制、ASCII码解密、音频隐写、图像解码、加密解密等技巧,帮助读者提升网络安全攻防技能。
摘要由CSDN通过智能技术生成

misc1

转成十进制后-128(偏移量为128)

再转成ascii码得到flag

import re

s = 'd4e8e1f4a0f7e1f3a0e6e1f3f4a1a0d4e8e5a0e6ece1e7a0e9f3baa0c4c4c3d4c6fbb9e1e6b3e3b9e4b3b7b7e2b6b1e4b2b6b9e2b1b1b3b3b7e6b3b3b0e3b9b3b5e6fd'

num = re.findall('\w{2}' ,s)

flag = ''

for i in num:

ch = chr(int(i,16)-128)

flag += ch

print(flag)

Miscellaneous-200

from ast import literal_eval as make_tuple

from PIL import Image

f = open('flag.txt', 'r')

corl = [make_tuple(line) for line in f.readlines()]

f.close()

img0 = Image.new('RGB', (270, 270), '#ffffff')

k=0

for i in range(246):

for j in range(246):

img0.putpixel ([i , j], corl[k])

k=k+1

img0.save("result.png")

flag{ youc@n'tseeme }

Miscellaneous-300

运行代码,等一定时间,然后会有12475.zip

import zipfile

import re

zipname = "C:\\Users\\19154\\Desktop\\"+"1.zip"

while True:

if zipname != "C:\\Users\\19154\\Desktop\\73168.zip":

ts1 = zipfile.ZipFile(zipname)

#print ts1.namelist()[0]

res = re.search('[0-9]*',ts1.namelist()[0])

print res.group()

passwd = res.group()

ts1.extractall("C:\\Users\\19154\\Desktop\\",pwd=passwd)

zipname = "C:\\Users\\19154\\Desktop\\"+ts1.namelist()[0]

else:

print "find"

我们爆破密码b0yzz

给的是音频文件,猜测是音频隐写,于是将文件拖入Audacity中查看频谱图得到flag

BallsRealBolls

Py-Py-Py

用stegosaurus直接获取flag

python3 stegosaurus.py -x 58cadd8d8269455ebc94690fd777c34a.pyc

传感器1

#!/usr/bin/env python

#coding:utf-8

import re

#hex1 = 'AAAAA56A69AA55A95995A569AA95565556' # # 0x8893CA58

hex1 = 'AAAAA56A69AA556A965A5999596AA95656'

def bintohex(s1):

s2 = ''

s1 = re.findall('.{4}',s1)

print ('每一个hex分隔:',s1)

for i in s1:

s2 += str(hex(int(i,2))).replace('0x','')

print ('ID:',s2)

def diffmqst(s):

s1 = ''

s = re.findall('.{2}',s)

cc = '01'

for i in s:

if i == cc:

s1 += '0'

else:

s1 += '1'

cc = i # 差分加上cc = i

print ('差分曼切斯特解码:',s1)

bintohex(s1)

def mqst(s): #只能算曼切斯特编码,无法算差分

mdict = {'5': '00', '6': '01', '9': '10', 'A': '11'}

a1 = ''.join(mdict[i] for i in s)

a2 = ''.join(mdict[i][::-1] for i in s)

print ('曼切斯特解码: ',a1 )

print ('曼切斯特解码2: ',a2)

bintohex(a1)

bintohex(a2)

if __name__ == '__main__':

bin1 = bin(int(hex1,16))[2:]

diffmqst(bin1)

mqst(hex1)

得到差分曼切斯特编码为8024d8845abf34119,左边去掉5个字符,右边去掉4个字符,换成大写就是flag。

签到题

Base64解码有得到

ggQ@gQ1fqh0ohtjpt_sw{gfhgs#}

凯撒密码解密得到,14位

ssc@sc1rct0atfvbf_ei{srtse#}

栅栏密码解密得到flag,7位

ssctf{ssCtf_seC10ver#@rabit}

Excaliflag

放进StegSovle左边点击即可

3DS{Gr4b_Only_th1s_B1ts}

Disk

直接提取vmdk文件

提取出来里面有四个flag文件,但是打开并不是flag

第一块出来flag字样,后面拼接放入convert,解出后面字段

flag{4DS_1n_D1sk}

misc_pic_again

发现PK头,保存位zip文件

用winhex发现hctf

hctf{scxdc3tok3yb0ard4g41n~~~}

3-1

发现python代码和一串好像加密的字符串,还有flag.zip也导出来

加上这些代码即可跑出密码

s='19aaFYsQQKr+hVX6hl2smAUQ5a767TsULEUebWSajEo='

flag=base64.b64decode(s)

print(decrypt(flag))

reverseMe

反转即可

test.py

首先进行反编译python文件

发现这是倒序的base64

得到fjU1MmYyNWcyNmcyOTgyYjY4MTc5NWMzZjc0ZzllNzMyfGhibWc=

解码得到552f25g26g2982b681795c3f74g9e732|hbmg,然后颠倒顺序得到gmbh|237e9g47f3c597186b2892g62g52f255

由于hbmg 与 flag的联系是ascii差1,于是全部rot(-1),得flag

flag{126d8f36e2b486075a1781f51f41e144}

Avatar

我们直接用outguess分解出来,1.txt文件就是flag

outguess -r 035bfaa85410429495786d8ea6ecd296.jpg 1.txt

Wireshark

导出这个图片

修改高度

把里面的图片都在网站上去解密,然后就得到了一串16进制字符串格式的flag

拿去解密就得到最后的flag了

Saleae

使用Logic软件打开

flag竖着读

flag{12071397-19d1-48e6-be8c-784b89a95e07}

intoU

修改采样率即可

Message

print bin(int(open("msg.txt","r").read(),16))[2:].replace("0",".").replace("1","#")

这个脚本能够生成.和#的序列。我们把这个序列放到notepad++里,一直把字体减小到最小,然后重新调整窗口的大小,直到我们能看出一些东西。 最后图案显现出来:The flag is RCTF{ArEciBo_mEsSaGe}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值