第一次 ctf

博客记录了安全培训中CTF相关内容。介绍了查看文件的工具和方法,如用objdump、hopper disassembler查看elf文件汇编;用exif、binwalk查看图片,dd截取文件;用7zip解压文件;用winhex、xcode进行hex编辑,还给出了相关例子的链接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本来是安全培训,可能为了调起大家的热情,于是弄了一个很水的ctf。
由于是第一次,很多东西不清楚不知道,所以在这里记录下。
再说一句,很多隐藏在文件,二进制文件中的东西直接用文本编辑器打开就可以

工具

elf 文件
  • objdump 查看elf文件的汇编
objdump -d elf_file
  • hopper disassembler
    Mac 上比较方便的看汇编,可惜demo版 一段时间就自动关一次
    主要是调整会有箭头显示,而且默认是按照windows 汇编的风格显示的
    mov eax,ebx 就是把ebx 放到eax 里面,而不是objdump中的那种风格

图片

  • exif 查看
exiftool pic.jpg 
  • binwalk 对待隐藏在图片重的压缩包什么的这个特别好用
binwalk file_name
binwalk -e file_name # 直接解开提取文件
  • dd 截取文件,这里的skip 一般直接就是binwalk 结果的第一列数字,不用减一!
dd if=in_file of=out_file skip=1234 bs=1 count=1234

压缩文件查看

这里顺便说下 binwalk 结果重的 Zlib 一般并不是压缩文件。。。菜鸟在这里卡了好久

  • 7zip
7za e flag
7z x e.zip 

解压时一般有密码,这个密码有时直接会是password

hex 编辑

  • winhex(windows)
  • xcode(mac)打开xcode,新建project,文件拖进去,然后右键 Open as -> hex

例子

图片:
https://www.cnblogs.com/jiaxinguoguo/p/7351202.html
https://www.sqlsec.com/2018/01/ctfimg.html
汇编:
https://www.cnblogs.com/hilfloser/p/10509114.html

### 关于CTF比赛第一关的帮助 对于参与CTF(夺旗赛)的新手而言,理解并完成首个挑战至关重要。通常情况下,CTF竞赛中的第一个挑战旨在帮助参赛者熟悉环境以及基本操作流程。 #### 下载与准备 为了获取用于练习的虚拟机镜像文件,可以访问提供的下载链接[^1]。这一步骤确保拥有一个安全隔离的比赛环境,在此环境中进行各种尝试而无需担心影响个人设备的安全性。 #### 容器化设置 考虑到所有挑战都应被容器化处理以便更好地管理和部署,建议参照相关指南来配置Dockerfile以支持CTF题目运行环境[^2]。通过这种方式,不仅能够简化开发过程,还能提高资源利用率和安全性。 针对具体的第一关解法,则取决于该关卡的设计目的和技术要点。如果涉及图像上传功能,并且最终目标是从给定条件求解两个未知数p,q的话,那么可能需要利用线性代数知识解决此类问题[^3]: 假设存在一张尺寸为600x600像素的照片作为输入数据源,通过对图片特征分析提取有效信息建立方程组进而得出答案。实际操作过程中可能会涉及到逆向工程、密码学基础等方面的内容。 ```python from sympy import symbols, Eq, solve # Define the symbols/variables p and q p, q = symbols('p q') # Assuming we got these values from analyzing an uploaded picture or other clues provided within the challenge. equation_1 = Eq(2*p + 3*q, some_value_from_challenge) equation_2 = Eq(p - q, another_value) solution = solve((equation_1,equation_2), (p, q)) print(f"The solutions are {solution}") ``` 上述代码片段展示了如何基于已知条件构建并求解二元一次方程的方法之一;当然实际情况会更加复杂多变,因此鼓励选手们积极思考探索更多可能性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值