写在前面:这两天初接触ctf。先从最简单的杂项做起。之前看了杂项的教程也听了课,基本没怎么看答案。于是出现了好多问题,边做题边解决问题。。虽然这样对于深入学习不太好但是对于特别懒的我还挺喜欢这样的- -有几次真的心态崩溃。写一个记录贴。kali真的是个好东西。。
解决了的问题:
kali忘了密码怎么办
kali的vmroots兼容性问题与如何更新源
php的基础语法
wenhex的使用方法
kali的基本工具了解
睡醒后做的第一个签到题,我可能脑子还在梦里,没有看见那么大的一个flag。
一个gif图片
用stdeslove打开后用FB帧浏览器分离帧。最开始分离出来一个红色的hongke}其实这只是三分之一。。所以以后帧分离还是从第一张开始看起比较好。
然后把he11o看成了hello.于是hellohongke hello_kongke试了好多次。。我眼睛可能让兔子瞪了。。果然不能用正常思维想ctf
拿到题后立马扫描发现什么都没有。
用kali自带的binwalk。
这里把文件从主机拖到虚拟机用了很多时间。反复的按照wmtools发现都拖不到桌面上,反复找教程,最后还是几个大佬给指明了方向- -。。
1.版本不兼容
解决方法:换源。更新。之前没太接触过虚拟机的操作这个解决方法以后再说
2.直接拖到文件夹里。。
两种查看方式
1.用binwalk查看图片结构发现这张图里被隐藏了一个zip压缩文件后再用binwalk -e提取出来
2.使用提取选项
-D,–d=type:ext:cmd提取签名为文件扩展名为,然后执行终端。查看的同时同时提取得到两个压缩包
打开后发现还需要密码。。爆破密码吧
爆破密码:
1.用python爆破。这里贴一个之前实现python目录下zip的纯数字的实战代码。数字还字母的还没有实现。。
import zipfile
import time
import threading
flag=Ture
startTime = time.time()
def ext(password, file):
try:
password = str(password)
file.extractall(path='.', pwd=password.encode('utf-8'))
print(format(password))
nowTime = time.time()
print(format(nowTime - startTime))
global flag
flag = False
except Exception as a:
print(a)
def main():
zfile = zipfile.ZipFile("xx", 'r')
# 开始尝试
for number in range(1, 10000):
if flag is True:
t = threading.Thread(target=ext, args=(number, zfile))
t.start()
t.join()
if __name__ == '__main__':
main()
2.用密码爆破工具
百度一个。。发现kali里面自带了一个fcrackzip来爆破密码嘿嘿嘿。。kali真好用。
fcrackzip -h查看一下功能参数
!
看到了这个命令参数实在不想百度了凭借毕生的英语水平感觉像是用-b (使用暴力算法)-p(指定开头字符)-l (指定密码长度区间)
于是百度了一下发现在不知道密码长度情况下的命令应该是 -b -c1 -u
-p要已知密码开头的数字或字母!
还是英语要好。。。
爆破出来就是7639.。。然后把CTF换成flag
vmtools是真的绝
这个题。。拿到的是个exe文件。没有办法正常打开,就想到用winhex工具。
打开后明显是个base64密码图像,找到在线解密工具后解出来二维码,使用工具扫描得出结果
打开是一个png格式的缺了身子的大白。。感觉可能是把高度隐藏了,用winhex打开看到高度部分确实存在问题。
修改高度
从10开始前四位是长,后四位是宽 很明显长宽不符合
修改后保存一下。有身子的大白出来啦!我这次可没吧1看成l- -
打开后发现是一个rar的文件,win打不开,也懒得搜怎么打开了。。拖到kali上试了一下,嘿嘿嘿打开了。
爆破密码。。
用了fcrakzip才知道这个只支持zip格式于是百度了解到了rarcrak可以支持zip,rar,7z这三种格式。
安装rarcrak还要更新源 那更新呗。
在更新的过程中,
我知道了拍快照。为什么要拍快照?防止以后出错把系统弄坏了系统还能恢复成原来的样子
大概先理解到这里
更新源:
打开终端输入:sudo gedit /etc/apt/sources.list打开suorces编辑器
#注释掉已有的kali源
找到国内的新源复制黏贴上去,去掉新源的注释。
g
保存后
apt-get update & apt-get upgrade
更新完后再次输入软件升级命令
apt-get dist-upgrade
清理存留
apt-get clean
重启系统
更新成功后,终端输入
apt-get install rarcrack
rarcrack的使用方法:
执行命令: rarcrack 文件名 -threads -type rar|zip|7z
执行后得到一个base64
.
解密完事
写在后面:通过这六道题我知道了kali真的很强大。。太适合我这种懒人了。欢迎各种大佬来告诉我更加便捷的方法。当然最开始学太懒了肯定不好,我会改进的,也希望看到这篇文章的你感兴趣的话和我共讨进步嘿嘿。眼睛太疼了今天就这样吧- -