ctf3

首先,他提示easy_nbt 我是根本看不懂,搜了一下发现是个文件格式
然后解压文件解压出来之后,发现是我的世界的存档
依然没有思路
答案一:

然后对解压之后的文件直接记事本打开就可以找到flag
答案二:
找到这个工具

用这个打开文件

使用serach value设置为flag


.dat文件是一种数据文件,只能有特定的工具打开
telnet

解压之后发现后缀是pcap
我首先去搜telnet ,pcap 是什么
telnet 是命令啊,跟网络有关的
pcap文件是常用的数据报存储格式,可以理解为就是一种文件格式,只不过里面的数据是按照特定格式存储的,所以我们想要解析里面的数据,也必须按照一定的格式。
额
直接用记事本打开这个文件就可以看到flag

眼见非实

解压出来是一个docx文件

当我把文字内容复制过来的时候发现除了pk其他都是没的
就是编码的问题
用winhex打开,发现头是50 4b 03 04,发现是zip,修改后缀为rar,解压后,得到一个word文档 打开发现也是一大推乱码 也找不到flag 再用winhex打开,发现头是50 4b 03 04 ,把文档后缀名改为rar 再次解压 然后再用资源管理器的搜素功能,查当前目录下的所有文件关键字为flag 找到后可以用一个方式打开 或者把后缀名改为txt

解压后得到文件夹,基本全是xml

看起来有点问题
看看各个xml
发现在document.xml里面看到flag
flag{F1@g}
任何office文件其实都是一个zip压缩包,可以直接解压的!
啊哒
是一张图片

然后评论区说考虑压缩文件,我觉得是有道理的
改成zip之后发现是要密码的,密码在哪呢


看到开头这里有数字,嗯试试吧,其他中间基本是乱码,w3c的网站啥的,没啥东西
当然也考虑解压的问题,毕竟基本全是乱码啥的
还有说用kali 的binwalk来分离,等回去尝试

直接输入时不行的,密码错误
然后这个数字也是16进制的

解压即可

16进制反面的思路:
可以去找个工具看看16进制能转换啥
使用kali试试:
binwalk 看看这个图片

foremost工具分离文件
(kali没有安装会提醒你安装的)


然后这个压缩包还是需要密码的
还是按上面的方式
这里我直接cat 这个jpg文件

找一下16进制的解码工具
得到sdnisc_2018

flag{3XiF_iNf0rM@ti0n}
抄错的字符

我顺手搭建了一下vscode
然后把代码复制了一下,代码晚上都有,php的也好,python 的也好
import base64
import os
str = "QWIHBL GZZXJS XZNVBZW"
Dict = [["Q","q","9"],["W","w"],["I","i","1"],["H","h"],["B","b","6"],["L","l"],
["G","g","9"],["Z","z","2"],["Z","z","2"],["X","x"],["J","j"],["S","s","5"],
["X","x"],["Z","z","2"],["N","n"],["V","v"],["B","b","6"],["Z","z","2"],["W","w"]]
max_Dict = [3,2,3,2,3,2,
3,3,3,2,2,3,
2,3,2,2,3,3,2]
map_Dict = [1]*len(Dict)
max_count = 1
for k in max_Dict:
max_count = max_count*k
print(max_count)
def strDict(map_D,D):
s = ""
for i,j in zip(range(len(D)),map_D):
s = s + D[i][j-1]
return s
f = open("result.txt","w")
def decideStr(String):
key="~!@#$%^&*()_+-={}[]|\\:;\"\',./? "
for i in list(String):
if not (i.isalnum() or i in key):
return False
return True
if len(map_Dict) == len(map_Dict):
count = 0
while not (map_Dict == max_Dict):
for i in range(len(map_Dict)):
if map_Dict[i] == max_Dict[i]:
map_Dict[i] = 1
elif map_Dict[i] < max_Dict[i]:
map_Dict[i] = map_Dict[i] + 1
break
else:
print("ERROR OverFlow")
s = strDict(map_Dict,Dict)
d = base64.b64decode(s+"=")
try:
d_str = d.decode()
if decideStr(d_str):
re = s+"=="+"\t\t\t"+d_str+"\n"
f.write(re)
except:
pass
count += 1
print(count,"---",max_count)
if max_count < count:
os.abort()
我这里放一份
但是跑了一段时间之后,输出的是一个超级长的文本1000多种,然后主要是不是乱码的就可以考虑

也跟作者名字有关
简单取证1

解压之后:打开或者cat也基本是乱码啥的,内容量也是比较大的,先扫个包
使用binwalk直接看一下文件
提示是mysql文件

看了一下解释,发现是windows下的系统目录,主要来存放用户名和密码的
他们说使用取证的工具,那么我现在是在kali下的又该怎么做呢
取证工具一般使用procdump配合mimikatz
我先尝试在windows下面去试试,因为deb下的命令有点问题(可能我不懂吧)
然后下载好之后运行

lsadump::sam /sam:SAM /system:SYSTEM 使用命令


这里也有一条
user应该就是了,再加个密码
这个Hash NTLM去搜一下什么:
介绍:
LM Hash是Windows使用的最古老的密码存储,其历史可追溯到1980年代的OS / 2。在LAN Manager协议中使用,由于允许的字符集有限,因此它们很容易破解。如果仍然可用,则可以从Windows系统上的SAM数据库或域控制器上的NTDS数据库中获取它们
NTLM Hash,Vista之后现代Windows系统使用的Hash,它的前身是LM Hash,两者相差不大,只是使用的加密算法不同。通常意义上的NT Hash指存储在SAM数据库及NTDS数据库中对密码进行摘要计算后的结果,NT Hash可以通过转储SAM数据库或使用Mimikatz来获得,可直接用于PtH,并且通常存在于lsass进程中,便于SSP使用
NT Hash是支持Net NTLM认证协议及本地认证过程中的一个重要参数。其长度为32位,由数字与字母组成
Windows不存储用户的明文密码,它会将用户的明文密码经过加密后存储在SAM数据库中。SAM文件的路径是%SystemRoot%\system32\config\sam
。在进行本地认证的过程中,当用户登录时,系统将用户输入的明文密码加密成NTLM Hash,与SAM数据库中的NTLM Hash进行比较,从而实现认证
在域环境下,域控制器中也存在这样的数据库AD (Account Database),位于ntds.dit
关于SAM我们也可以在config中找到,的确起到储存的作用
生成算法逻辑:
明文转换为16进制ASCII码
使用little-endian(小端)序将其在转换为Unicode格式。0x80之前的标准ASCII码转换成Unicode码,就是简单地从0x??变成 0×00??。此类标准ASCII串按little-endian序转换成Unicode串,就是简单地在原有每个字节之后添加0×00
对所获取的 Unicode串进行标准MD4单向哈希,无论数据源有多少字节,MD4固定产生128-bit的哈希值
--
使用 这网站解密
md5在线解密破解,md5解密加密 (cmd5.com)
总共两个hash NTML 第一个我直接复制查询是不行的
第二个解密之后是:

ok那现在吧已知的都尝试一下
结果:
flag{administrator-QQAAzz_forensics}
关于mimikatz 的一些命令:
::
命令可以查看帮助信息
lsadump::lsa /inject 查看ntds.dit与sam文件的信息,如果没有查看ntds.dit的就只查看sam
sekurlsa::logonpasswords 列出已登陆用户的密码(比较常用)
lsadump::sam sam表获取Hash
具体大家可以参考一下相关的博客,这里不在赘述
那么这里还是想在kali中尝试,该怎么做呢
主要是debian下该怎么使用
/.-

莫斯密码,找个网站接一下就好
然后%u7d是ASCII HEX编码解码两个{}、
这个大小写转换我是不理解,反正大写不对,可能是 设定的问题
聪明的小羊

线索在描述里
本来是以为lg跑后面去了,然后我按照我自己的理解,写了一个flag确实不对
看评论是栅栏密码,然后找个网站破解一下就有了,而且栅栏密码确实跟几个栅栏有关
这里介绍一下栅栏密码:
加密原理
①把将要传递的信息中的字母交替排成上下两行。
②再将下面一行字母排在上面一行的后边,从而形成一段密码。
③例如:
明文:THE LONGEST DAY MUST HAVE AN END
加密:
1、把将要传递的信息中的字母交替排成上下两行。
T E O G S D Y U T A E N N
H L N E T A M S H V A E D
2、 密文:
将下面一行字母排在上面一行的后边。
TEOGSDYUTAENN HLNETAMSHVAED
解密:
先将密文分为两行
T E O G S D Y U T A E N N
H L N E T A M S H V A E D
再按上下上下的顺序组合成一句话
明文:THE LONGEST DAY MUST HAVE AN END
道理也好懂,可以给的提示太少了,可能需要反应,提到栅栏就去想栅栏
ok

文件为:
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook! Ook! Ook. Ook? Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook? Ook. Ook? Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook! Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook? Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook! Ook! Ook. Ook? Ook! Ook! Ook! Ook!
Ook! Ook! Ook? Ook. Ook? Ook! Ook. Ook? Ook! Ook! Ook! Ook! Ook! Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook? Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook! Ook! Ook. Ook? Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook. Ook? Ook! Ook. Ook? Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook! Ook!
Ook. Ook? Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook? Ook. Ook? Ook! Ook. Ook? Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook! Ook? Ook! Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook. Ook? Ook! Ook. Ook?
Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook! Ook? Ook! Ook! Ook. Ook? Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook? Ook. Ook? Ook! Ook. Ook? Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook!
Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook? Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook!
Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook? Ook. Ook? Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook! Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook! Ook! Ook. Ook?
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook?
Ook. Ook? Ook! Ook. Ook? Ook! Ook. Ook! Ook. Ook! Ook! Ook! Ook! Ook! Ook.
Ook! Ook! Ook! Ook! Ook! Ook. Ook. Ook. Ook! Ook. Ook? Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook! Ook!
Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook? Ook. Ook? Ook! Ook. Ook? Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook! Ook! Ook. Ook? Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook? Ook. Ook? Ook!
Ook. Ook? Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook! Ook? Ook! Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook. Ook? Ook! Ook. Ook? Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook! Ook! Ook. Ook? Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook. Ook? Ook! Ook. Ook? Ook. Ook. Ook.
Ook. Ook. Ook. Ook! Ook. Ook? Ook.
明眼看到Ook后面. ! ? 这三个字样
然后可以看到Ook是有解码网站的在bugku里面就有
复制粘贴就有了Ook to text
flag{0a394df55312c51a}
[+-<>]

bugku里面也有
复制粘贴就出结果
flag{0d86208ac54fbf12}
滑稽

F12就可以看到
<!--flag{c657a7d793398063d7976fbb80ff2e8b}-->
这个网站确实比较有意思