每日一题(Web)

NO.1-buuctf-misc-菜刀666

首先中国菜刀:中国菜刀-webshell管理工具,获取目标系统的文件系统,对目标系统的文件系统进行管理同时也可以对获取系统的shell进行操作命令执行操作,同时可以对目标系统进行数据库操作.,都是在web网站上进行的,本质是通过eval等函数通过http请求进行的,所以菜刀流量,也就是http流量,

使用winshark打开题目附件

统计->http->请求->发现了upload/1.php字样

说明上传了文件

分析post方法,过滤选择:http.request.method==POST.然后发现长度不对劲,应该是上传了文件,

打开后发现了传递的Z2参数的值的开头是FF D8 FF E0 这个文件头是jpg文件头,

010editor打开导入16进制得到图片

之后,继续在post过滤器里翻看每一个流,在流9发现了PK字样

使用kali binwalk/foremost分离 拿到压缩包

得到flag

NO.2-buuctf-misc-一叶障目/[BJDCTF2020]一叶障目

直接修改宽高就行了(详解修改宽高方法可以看这个:MISC-图片隐写)

NO.3

buuctf-misc-神奇的二维码

文件尾藏有rar文件,手工压缩不出来,使用binwalk随便打开一个图片发现需要密码,然后flag.docx里发现base64,循环解密二十次,(toolsfx creack)得到音频密码,打开音频进行摩斯密码解密得到密码,解密得到flag

NO.4-buuctf-misc-纳尼/[BJDCTF2020]纳尼

gif添加文件头,分帧base64

NO.5-buuctf-misc-excel破解/[HBNIS2018]excel破解

010直接搜索flag

NO.6-buuctf-misc-来题中等的吧/[HBNIS2018]来题中等的吧

摩斯密码解密

NO.7-buuctf-misc-梅花香自苦寒来

打开图片

直接010打开,发现文件尾部有东西,而且是16进制

导出后转化为ascii

def hex_to_ascii(inpath,outpath):

	with open(inpath,'r') as file:
		lines = file.readlines()
	hex_string=''.join(line.strip() for line in lines)
	bytes_object=bytes.fromhex(hex_string)
	ascii_string=bytes_object.decode("ASCII")

	with open(outpath,'w') as outfile:
		outfile.write(ascii_string)
inpath=r"C:\Users\13100\Desktop\1.txt"
outpath=r"C:\Users\13100\Desktop\out.txt"
hex_to_ascii(inpath,outpath)

发现是坐标,应该是利用坐标画图

使用kali的gnuplot,转换为图像坐标点,gnuplot不识别括号“()”,编写脚本去掉括号。

with open(r"C:\Users\13100\Desktop\out.txt", 'r') as a:  
    a = a.read()  
a = a.split()  
tem = ''  
f = open(r"C:\Users\13100\Desktop\1.txt", 'w')  
for i in range(len(a)):  
    tem = a[i]  
    tem = tem.lstrip('(')  
    tem = tem.rstrip(')')  
    for j in range(len(tem)):  
        if tem[j] == ',':  
            tem = tem[:j] + ' ' + tem[j+1:]  
    print(tem, file=f)  
f.close()  # 最好添加这一行来确保文件被正确关闭

然后画图,扫码得到flag