记一次CTF入门练习

news/2024/5/19 21:05:12 标签: CTF, 网络安全

前言

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

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

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

正文

1.1、MISC——找到证据

在这里插入图片描述
解压缩包,要密码,根据压缩包提示
在这里插入图片描述

这道题要求求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
在这里插入图片描述
发现隐藏的png图片,保存为html文件,并添加img src标签。
在这里插入图片描述
再通过网页打开,发现是一张二维码,扫码得到flag。

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

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

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

在这里插入图片描述
发现一个可疑的文件,放到010editor中,通过快捷键Ctrl + F搜flag。
就拿到flag了。
在这里插入图片描述

1.3、Wireshark——协议分析

拿到流量包,按照长度从大到小排序。
在这里插入图片描述
把这条最长的数据点击一下,发现下面有惊喜。在这里插入图片描述
然后按照如下步骤,吧这串base64编码复制到cyberchef中。
在这里插入图片描述
然后按照如下步骤,进行解码,拿到flag。
在这里插入图片描述
在这里插入图片描述

1.4、Misc——PDF

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

1.5、Crypto——多次解码

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

1.6、Crypto——NotOnlyBase

下载下来后是一个不带后缀的文件。
通过010 editor打开,发现像栅栏。
在这里插入图片描述
放到随波逐浪工具箱一键解密,拿到flag.

2、Web——XFF+RE

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

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

拿到flag。

在这里插入图片描述

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


http://www.niftyadmin.cn/n/5045489.html

相关文章

ChatGPT WPS AI 一键核对两表数据差异

业务需求,找出两个表中不相同的内容。如下图: 像这样的表格中,要找出不同的值,手动核对效率不高。 现在我们有了ChatGPT,可以由人工智能来完成这一操作,高效,快速,准确定位差异值。 指令:请找出A1:G14 单元格区域和I1:O14单元格区域的不相同部分,将两部数据区域不相…

YOLOv3模型原理深度解析

概况 &#xff08;1&#xff09;YOLOv3是YOLO系列第一次引入残差连接来解决深度网络中的梯度消失问题&#xff08;是不是第一次&#xff0c;有待你后面考证&#xff09;&#xff0c;实际用的backbone是DarkNet53 &#xff08;2&#xff09;最显著的改进&#xff0c;也是对你涨…

C++ -- 特殊类设计

目录 设计一个类&#xff0c;不能被拷贝 C98的做法 C11的做法 设计一个类&#xff0c;只能在堆上创建对象 实现方式1 实现方式2 设计一个类&#xff0c;只能在栈上创建对象 实现方式1 方式1的优化 实现方式2 设计一个类&#xff0c;不能被继承 设计模式 什么是设计…

模型层及ORM介绍

模型层及ORM介绍 模型层 负责跟数据库之间进行通信 配置MySQL&#xff0c;下载MySQLclient 创建数据库 进入mysql数据库执行create database 数据库名 default charset utf8通常数据库名跟项目名保持一致settings.py里进行数据库的配置修改 DATABASES 配置项的内容&#x…

【Redis在Windows中与Linux中的下载安装,启动服务和设置密码远程连接】

Redis在Windows中与Linux中的下载安装&#xff0c;启动服务和设置密码远程连接 1、Redis的简介 Redis是一个开源的内存中的数据结构存储系统&#xff0c;它可以用作: 数据库、缓存和消息中间件。 Redis是一个开源的高性能键值对存储数据库&#xff0c;常用于缓存、消息队列、…

如何通过技术变现

技术变现是指将技术转化为实际价值的过程。以下是几种常见的技术变现方式&#xff1a; 软件开发与销售&#xff1a;根据市场需求开发软件&#xff0c;并将其销售给需要的企业或个人。专利许可与授权&#xff1a;将技术成果申请专利&#xff0c;通过专利许可和授权给企业使用&a…

硬件知识积累 网口接口 百兆,千兆,万兆 接口介绍与定义 (RJ45 --简单介绍)

1. 百兆网口 1.1百兆网的定义 百兆网的意思是是100Mb/S&#xff0c;中文叫做100兆位/秒。 1.2百兆网口的常用连接器 1.1.1 一般百兆网口的连接器一般是RJ45 下面是 实物图&#xff0c; 原理图&#xff0c;封装图。 1.3 百兆网口连接线的介绍 1.3.1 百兆需要使用的线的定义 百…

uniapp vue项目把图片路径从data数据传到css(uniapp css变量)

<view class"top-menu-li f34 " tap"changeTopMenu(0)" v-if"isExpressAble":class"{active : curNowCat 0}" :style"dynamicStyle"><text class"text">快递</text></view><view clas…