记一次CTF解题笔记 获取flag

2019年6月6日17:50:31 1 10,986

0x00 可恶的黑客

用wireshark打开,筛选http.request.method == "POST",看到很多POST包

记一次CTF解题笔记 获取flag

导出对象,选择HTTP,全部保存

记一次CTF解题笔记 获取flag

打开保存的文件,发现一个php文件很可疑

记一次CTF解题笔记 获取flag

使用burp软件自动解析下,得到flag

记一次CTF解题笔记 获取flag

 

0x01 Not Only Wireshark

用wireshark打开,筛选http,看到一些可疑的字符

记一次CTF解题笔记 获取flag

用python跑一下把这些可疑字符提取出来

import re

f = open("Not_Only_Wireshark.pcapng", "rb").read()

a = re.findall(b"/sqli/example2\.php\?name=(...)", f)

f1 = open("test.txt", "a+")

for i in a:

j = i.decode()

strs = "".join(j)

f1.write(strs)

f1.close()

提取出来的字符

记一次CTF解题笔记 获取flag

看到开头有04B0304,联想到zip文件的文件头是504B0304,于是把1234替换成5,生成zip文件。

脚本需要跑在python3.5之后的版本上

a = "504B03040A0001080000739C8C4B7B36E495200000001400000004000000666C616781CD460EB62015168D9E64B06FC1712365FDE5F987916DD8A52416E83FDE98FB504B01023F000A0001080000739C8C4B7B36E4952000000014000000040024000000000000002000000000000000666C61670A00200000000000010018000DB39B543D73D301A1ED91543D73D301F99066543D73D301504B0506000000000100010056000000420000000000"

a_b = bytes.fromhex(a)

f = open('test.zip','wb')

f.write(a_b)

f.close()

跑完脚本得到一个test.zip的文件,解压,发现需要密码,密码在流量包中,key后面的就是密码

记一次CTF解题笔记 获取flag

解压后得到flag

 

0x02 数组

题目:

记一次CTF解题笔记 获取flag

粗略一看以为是数数就可以,想法还是太天真了

写个python脚本,flag也就出来了

import sys
a=['0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f','g','l','-','{',"}"]
b=[15,17,10,16,19,15,11,9,1,11,2,5,3,18,4,8,5,3,18,4,14,1,6,18,11,11,11,13,18,5,11,8,5,9,13,8,0,11,7,3,12,20]
for item in range(len(b)):
value = b[item]
sys.stdout.write(a[value])
sys.stdout.flush()
weinxin
聂扬帆博客
一个分享IT运维相关工作经验和实战技巧的个人博客

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:1   其中:访客  1   博主  0

    • avatar 昵称 0