DASCTF题目复现-MISC

99 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

Sign_in

这个题目有一个题目附件,piz文件,这个是docx文件倒了一下 还原一下

with open('what_is_it.piz','rb') as f:
   with open('flag.txt','w') as f1:
     f1.write(f.read(700000).hex().upper()[::-1])

这个得到的是一串十六进制文件,将十六进制文件导入010editor中,前面有一些0000... 然后后面紧接着就是504B03040A00,这些是docx文件,然后导出

image.png 发现是歌词,然后跟百度的歌词进行比对 发现少了九个字母HYLEVSGQY 还有作者 TREX

这里有一个docx的小知识点,打开文件,然后选项,有一个隐藏文字 勾选 然后就能够看到有一个 I very like Vigenere 我非常喜欢 维吉尼亚

image.png 最后就是维吉尼亚在线解密

image.png 得到flag

easy_keyboard

题目附件是一个流量分析包,还有一个Q文件

发现脚本使用了很多backspace,将这个注释掉

得到三段密钥。
6e187bef
323d1a4b
f067ec94

三个四字节的密钥,这是明文攻击的密钥,用archpr解密 然后得到的USB键盘流量用tshark提取 (tshark单独提取出来 )

tshark -r keyboard.pcapng -T fields -e usbhid.data > usb.txt

然后得到4f,50,51,52

USB HID Usage Tables 1.12(P52).pdf (book118.com) 在这里找到对应的箭头

→↓←↓→ ↓→↑↓↓ ↓→↑↓↓ →←↓→↓← →↓↓↑←↑ →↓←↓→↑←↑ ↓↓→↑← →↓↓ →↓↓ ↓↓ →↓↓ →↓↓ ↓↓ →↓←→↓← →↓←↓→↑←↑ ↓↓→↑← →↓←↓→↑←↑ →↓↓ →↓↓↑←↑ →↓↓←↑↑ →↓←↓→ →↓↓←↑↑ ↓↓→↑← →←↓→↓← →↓↓←↑↑ ↓→↑↓↓ →↓←→↓← →←↓→↓← →↓←↓→↑←↑ →↓←↓→↑←↑ →←↓→↓← →←↓→↓← ↓↓ →↓←↓→ →↓←↓→↑←↑ →↓←→↓← →↓↓↑←↑ →↓↓↑←↑ →←↓→↓← ↓↓ ↓↓→↑← →↓←→↓← →↓↓←↑↑ →↓↓↑←↑ →↓←↓→↑←↑ ↓↓→↑← →↓←↓→ ↓→↑↓↓ →↓←↓→↑←↑ ↓↓→↑← ↓↓ ↓↓→↑← →↓↓ →↓←↓→↑←↑ →↓↓↑←↑ ↓↓ →←↓→↓← →↓↓↑←↑ →↓↓↑←↑ →↓↓←↑↑ ↓↓→↑← →↓←↓→↑←↑ →↓↓←↑↑ →↓↓ ↓→↑↓↓ →↓←→↓← →↓↓↑←↑ ↓↓→↑← ↓→↑↓↓ →↓←↓→↑←↑ →↓↓←↑↑ →↓←→↓← →←↓→↓← →↓↓↑←↑ →↓←↓→↑←↑ →↓←→↓← ↓→↑↓↓ ↓↓→↑← →↓←→↓← ↓→↑↓↓ ↓↓ →↓↓←↑↑ →↓↓ →↓↓←↑↑ →↓←→↓← →←↓→↓← →↓↓←↑↑ ↓↓→↑← →↓←↓→↑←↑ →↓←↓→ →↓←↓→↑←↑ →↓↓↑←↑ ↓→↑↓↓ →↓←↓→ →↓←↓→↑←↑ ↓↓→↑← →↓↓←↑↑ →↓↓ →↓↓←↑↑ →↓↓←↑↑ ↓↓→↑← ↓→↑↓↓ →↓↓←↑↑ ↓↓→↑← →↓←→↓← →↓↓

exp

import libnum\
f = open("keyboard.pcapng","rb").read()\
pos = 1340\
draws = ["622488","22","62426","624624","26822","642624","22684","622","62426848","622848"]\
chars = ["0","1","2","3","4","5","6","7","8","9"]\
c = ""\
while(pos < len(f)):\
data = f[pos+57]\
if(data == 0x52):\
c += "8"\
elif(data == 0x51):\
c += "2"\
elif(data == 0x50):\
c += "4"\
elif(data == 0x4f):\
c += "6"\
elif(data == 0):\
c += " "\
pos += 0x80\
c = c.split(" ")[:-1]\
ans = ""\
for i in c:\
ans += chars[draws.index(i)]\
print(libnum.n2s(int(ans)))

JNDI结构:

javax.naming:主要用于命名操作,它包含了命名服务的类和接口,该包定义了Context接口和InitialContext类;
javax.naming.directory:主要用于目录操作,它定义了DirContext接口和InitialDir- Context类;
javax.naming.event:在命名目录服务器中请求事件通知;
javax.naming.ldap:提供LDAP支持;
javax.naming.spi:允许动态插入不同实现,为不同命名目录服务供应商的开发人员提供开发和实现的途径,以便应用程序通过JNDI可以访问相关服务。