记一次CTF入门练习

前言

学习CTF有一段时间了,现在做个小小的总结,加深印象。

习题下载(只含第一部分)

链接:https://pan.baidu.com/s/1j-_TlAek4Q9IlEwbMWv2GA?pwd=47pk
提取码:47pk

正文

1.1、MISC——找到证据

记一次CTF入门练习_第1张图片
解压缩包,要密码,根据压缩包提示
记一次CTF入门练习_第2张图片

这道题要求求100-1000之内的素数。
我写的python算法:

sum=0
for i in range(101,1001):
	prime = True
	for j in range(2,i):
		if i % j == 0:
			prime = False
			break
	if prime:
		sum+=i
print("101到1001的素数之和为:",sum)

再看了看大佬写的:

def is_prime(num):
	if num<2:
		return False
	for i in range(2,int(num**0.5)+1):
		if num % i == 0:
		return False
	return True
prime_sum = sum([x for x in range(100,1001) if is_prime(x)])
print(prime_sum)

发现大佬写的要比我的严谨一些。
结果是75067,最后解压出来是一个图片。
搜索jpg图片十六进制结尾FFD9
记一次CTF入门练习_第3张图片
发现隐藏的png图片,保存为html文件,并添加img src标签。
在这里插入图片描述
再通过网页打开,发现是一张二维码,扫码得到flag。

1.2、MISC——虚假的内存取证

给了一个1.qcow2的文件,在kali 里通过binwalk查看一下:

binwalk -e 1.qcow2 --run-as=root

记一次CTF入门练习_第4张图片
发现一个可疑的文件,放到010editor中,通过快捷键Ctrl + F搜flag。
就拿到flag了。
记一次CTF入门练习_第5张图片

1.3、Wireshark——协议分析

拿到流量包,按照长度从大到小排序。
记一次CTF入门练习_第6张图片
把这条最长的数据点击一下,发现下面有惊喜。记一次CTF入门练习_第7张图片
然后按照如下步骤,吧这串base64编码复制到cyberchef中。
记一次CTF入门练习_第8张图片
然后按照如下步骤,进行解码,拿到flag。
记一次CTF入门练习_第9张图片
记一次CTF入门练习_第10张图片

1.4、Misc——PDF

下载下来的,不带文件后缀。
在这里插入图片描述
用010查看后,发现是压缩包。
PDF加密,但是压缩包解密后提示一句话。
输入密码20181231,拿到flag。
记一次CTF入门练习_第11张图片

1.5、Crypto——多次解码

发现0x打头,16进制。
复制到cyberchef中。

1.6、Crypto——NotOnlyBase

下载下来后是一个不带后缀的文件。
通过010 editor打开,发现像栅栏。
记一次CTF入门练习_第12张图片
放到随波逐浪工具箱一键解密,拿到flag.

2、Web——XFF+RE

抓包,通过在response文末加这两句话:

X-Forwarded-For: localhost
Referer: http://localhost/

拿到flag。

记一次CTF入门练习_第13张图片

这些入门的CTF题做起来还是挺有意思的。再接再厉。

你可能感兴趣的:(网络与安全,CTF,网络安全)