CTF-Reverse学习-为缺少指导的同学而生

发布时间:2023年12月22日

更新日志:

2023-12-22 11:57?发布博客,创建工具列表,创建实验1

Reverse是什么?

????????CTF中Reverse题型通常会给你一些与程序相关的程序,往往是一些编译后的程序,然后通过反汇编的方式,窥探和猜测程序的逻辑,并分析程序逻辑,获取解题逻辑。利用解题逻辑,按固定条件执行尘效果或者编写逆向逻辑脚本的方式来获取flag。

????????软件代码逆向主要指对软件的结构,流程,算法,代码等进行逆向拆解和分析。

????????逆向逆向,逆向的是程序吗,nonono,逆向的是人心,编程人的心。程序是人写的,只要他在开发时走了下神,或者少考虑了一个细节,就会产生漏洞和BUG,绝大多数都会被修复,但完全没有错误的程序是不存在的。

解题步骤

  1. 获取题目附件
  2. 分析文件是程序从开发到编译到运行的哪个阶段的产物
  3. 通过反汇编,猜测源代码等一系列手段,逆向出源代码或者代码逻辑
  4. 分析源代码和逻辑,找到解题思路
  5. 利用解题思路,按顺序执行程序或者编写解题脚本来得到flag

本博客在B站有配套视频,随博客同步跟新,但博客内容的替换和更新会更加频繁。等博主社恐的毛病处理好,视频会重新录制,现在可能有些糟糕。还望大家见谅

Rotten战队-Reverse入门icon-default.png?t=N7T8https://www.bilibili.com/video/BV14g4y1Z7HR/?spm_id_from=333.999.0.0&vd_source=b0baa38241452f542afabdf70d10fca7

一、教学用的题库网址

?我会以NSSCTF,BUUCTF平台的题目做教学,后面也会加其他平台。

NSSCTF网址
NSSCTF平台

BUUCTF
BUUCTF平台
?

二、工具列表

IDA?pro 7.7

反汇编工具

链接:https://pan.baidu.com/s/11YzTTBgDzlrg8a_k-raqqw?pwd=6666?
提取码:6666?

解压后

?执行,选择yes即可完成破解

温馨提示:安装目录请不要有中文路径。

jadx-gui 1.4.7

安卓反编译工具

exeinfope

查壳工具

FFI

脱壳工具

MUMU模拟器

安卓模拟器

MuMu模拟器官网_安卓12模拟器_网易手游模拟器

好用!

如果报错显卡问题,请先检查独立显卡的驱动更新,如果CPU带有核显,核显也需要更新

AndroidKiller

安卓反编译工具

kali虚拟机

三、刷题加学习

实验1?字符串泄露(1)

学习目标:
  1. 学会使用Linux中的file指令查看程序位数
  2. 学会使用IDA?pro?查找字符串
  3. 学会使用jadx-gui查找安卓程序字符串
1.easyre

BUUCTF平台

题目附件拖入kali,使用file指令查看这个文件,可以看到有X86-64标记,为64位程序

使用64位的IDA打开,如果用32位可能会存在无法反编译等其他异常情况。

点击OK,如果发现缺少第一二行的选项,请检查是否安装错误(只是这道题目,别的题目可能真只有最后的选项)

一路YES,让你选文件夹的点取消

接下来使用shift+F12来查找字符串

有些同学电脑键盘上可能存在键位冲突,这样打开即可

?按CTRL+F执行搜索,输入flag或者{,或者flag{。

即可搜索到flag,如果想复制,请双击这个字符串,在这个页面复制

flag{this_Is_a_EaSyRe}

退出IDA时,勾选DON'T SAVE?the?database,删除缓存文件,如果你还要再次打开,可暂时保留

2.内涵的软件

BUUCTF平台

你可以看到一个名字很长的文件,建议是将其改成简短的名字,如1.exe,方便使用file指令

file指令看位数,这回带了个Intel 80386标记,是32位的程序

进入后,查找字符串,flag搜不出来

?换{

拿到flag

DBAPP{49d3c93df25caad81232130f3d2ebfad}

3.[BJDCTF2020]JustRE

BUUCTF平台

长度还行,就不改文件名了

?放入kali,file一下,32对吧

IDA 32位打开,{搜到l东西,但直接提交是错误的

双击进去,在这个字符串上按这个,跳转引用它的地方,看看它的伪代码

F5一下,看看伪代码?

?

C语言格式化字符串打印函数,那填个空就好,%d换成后面的数字

flag{1999902069a45792d233ac}

?

4.helloword

BUUCTF平台(安卓)

得到一个apk,安卓APP文件

模拟器打开

?真只有hello world。那么用jadx-gui反编译查看

?打开之后,文本搜索flag{

?点击进去看看,提交flag正确

?

B站配套视频

Reserve入门-字符串泄露(1)_哔哩哔哩_bilibili

课后练习
  1. Lucknum-攻防世界平台
  2. 逆向签到题-CTF.SHOW平台
  3. [SWPUCTF 2022 新生赛]base64-NSSCTF平台 (记得base64解码)

后方内容施工中》》》》》》》》》

文章来源:https://blog.csdn.net/yuwoxinanA3/article/details/134757152
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。