BUUCTF-reverse-五道较简单题

[ACTF新生赛2020]usualCrypt

base64变种,后面还有个大小写转换

[GWCTF 2019]xxor

比较简单,就是Tea加密变种
Tea加密可以到ctfwiki学习,解密原理是逆向求解
解密最好用c语言写,python写有点麻烦

[GUET-CTF2019]re

逻辑很简单,就是比对
注意v[16]和v[17]位置调换了
少个v[6]爆破即可

[V&N2020 公开赛]strangeCpp

关注不合理的夹杂数据
通过welcome字符串中不合理的夹杂数据定位到关键函数

__int64 sub_140013580()
{
   
   
  __int64 *v0; // rdi
  signed __int64 i; // rcx
  __int64 result; // rax
  __int64 v3; // [rsp+0h] [rbp-20h]
  int v4; // [rsp+24h] [rbp+4h]
  int j; // [rsp+44h] [rbp+24h]
  __int64 v6; // [rsp+128h] [rbp+108h]

  v0 = &v3;
  for
### 关于BUUCTF RE1类型题目 #### BUUCTF平台简介 BUUCTF是一个专注于网络安全竞赛训练的在线平台,提供多种类型的挑战供参赛者练习。其中RE1(Reverse Engineering Level 1)类别主要涉及逆向工程的基础知识和技术应用。 #### 题目实例:Simple_RE1 在BUUCTF平台上存在一道名为`Simple_RE1`的经典入门级逆向题目[^2]。该题目的目标是从给定的可执行文件中提取出隐藏的信息或者理解其内部逻辑流程来获取flag。 #### 解思路概述 对于这类基础性的逆向题目来说,通常会考察以下几个方面: - **工具使用**:掌握基本调试器(如IDA Pro, Ghidra)以及十六进制编辑器(HxD等)的操作方法。 - **程序分析**:能够阅读并解析编译后的机器码或字节码,识别常见的算法结构和字符串处理方式。 - **漏洞挖掘**:了解常见软件缺陷模式及其利用手法,在此案例中可能涉及到简单的缓冲区溢出等问。 具体到这道`Simple_RE1`题目上,解法可以概括如下: 1. 使用反汇编工具加载二进制文件; 2. 寻找main函数入口点,并跟踪调用链直至发现关键操作区域; 3. 对比输入参数与预期输出之间的差异,推测加密/编码机制; 4. 尝试修改特定条件分支语句以绕过验证过程从而获得正确答案; ```python from pwn import * context.arch = 'amd64' elf = ELF('./simple_re') p = elf.process() payload = b'A' * offset + pack(flag_address) p.sendline(payload) print(p.recvall().decode()) ``` 上述代码片段展示了如何通过构造特殊的数据包发送至目标进程实现对内存地址的有效控制,进而读取或篡改指定位置的内容。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值