- 博客(17)
- 收藏
- 关注
原创 C语言数据结构
逆向工程(Reverse engineering)是一种技术过程,即对一项目标产品进行逆向分析及研究,从而演绎并得出该产品的处理流程、组织结构、功能性能规格等设计要素,以制作出功能相近但不完全一样的产品的过程。在CTF中,逆向工程一般是指软件逆向工程,即对已经编译完成的可执行文件进行分析,研究程序的行为和算法,然后以此为依据,计算出出题人想隐藏的flag。...
2021-10-18 08:50:58 133
原创 【攻防世界】REVERSE新手练习区 - simple-unpack
simple-unpack - wp分析题目附件:https://adworld.xctf.org.cn/media/task/attachments/847be14b3e724782b658f2dda2e8045b
2021-08-06 15:59:18 70
原创 【攻防世界】REVERSE新手练习区 - gegit
gegit - wp一、分析题目附件:https://adworld.xctf.org.cn/media/task/attachments/e3dd9674429f4ce1a25c08ea799fc027拖入Exeinfo PE中:发现是ELF文件,64位。ELF文件是一种用于二进制文件、可执行文件、目标代码、共享库和核心转储格式文件,是Linux的主要可执行文件格式。拖入ida64,找main函数按F5(Fn+F5)查看伪代码:LODWORD取得无符号长整型的低32位,先将v5赋值为0:
2021-08-04 23:07:30 138
原创 【攻防世界】REVERSE新手练习区 - python-trade
python-trade - wp一、下载题目附件:https://adworld.xctf.org.cn/media/task/attachments/f417c0d03b0344eb9969ed0e1f772091.pyc发现附件是.pyc文件,.pyc是一种二进制文件,是由.py文件经过编译后得到的字节码文件。.py文件中可以直接看到源码,经过编译后会变成.pyc文件。那么我们需要把.pyc文件反编译生成.py文件从而得到源码。二、反编译.pyc文件:反编译方法:利用python反编译在线
2021-08-02 19:30:35 233
原创 C++总结报告
C++学习之旅C++是C语言的继承,是面向对象程序设计的语言,支持数据封装和数据隐藏,支持继承,重用以及多态性。语法:相对于C语言,C++ 使用std命名空间:using namespace std; 用cin (标准输入流),cout(标准输出流)分别实现输入和输出。new和delete: 内建的操作符new运算符:开辟一个新的存储空间,创建动态对象,格式为 new +类型new int() 存放整数new char[]存放字符数组new int[][] 存放二维数组delete运算符
2021-07-24 17:44:08 504
原创 python学习总结报告第一期
人生苦短,我用python前言:这个暑假我终于向python下手啦!!! 相较于C语言,我很直观的体会到python作为脚本语言的好处,它不需要注意太多的细节,灵活性很大,而且更加容易上手,简言之,python是一门宝藏语言。下面对我这十来天与python的交流活动进行第一期总结。简单了解python语言,安装和运行python:Python提供了高效的高级数据结构,还能简单有效地面向对象编程,是一种代表简单主义思想的语言。通过安装python3.9,运行python,了解了python的交互模式
2021-07-24 15:38:06 1323 1
原创 【攻防世界】REVERSE新手练习区 - logmein
logmein - wp将附件拖入ida中:Shift+F12(Shift+Fn+F12)查找关键字符串:得到“You entered the correct password!\nGreat job!\n”(你得到了正确的密码!做的好!)的信息;跟进发现与 sub_4007F0+8↑o 有关,猜测它与正确的flag有关。F5(Fn+F5)查看伪代码:根据第18行得出,s是用户输入的flag。跟进sub_4007F0()发现其为flag正确的标志:跟进sub_4007C0()发现其
2021-07-24 13:23:13 184
原创 【攻防世界】REVERSE新手练习区 - Hollo,CTF
Hollo,CTF - wp点开附件发现是exe文件,需要输入正确的flag,才能得到 success!,否则得到 wrong!。将附件拖入ida中:F5(Fn+F5)查看伪代码:分析36-41行,得出要想得到aSuccess,if(!strcmp(&v10, &v13))中的条件需要为真,即 !strcmp(&v10, &v13)1,因为 !01,所以strcmp(&v10, &v13)==0,即v10的长度与v13的长度相等。另外根据第35
2021-07-24 02:56:35 232
原创 【攻防世界】REVERSE新手练习区 - open source
open source-wp打开附件得到一段源码:分析方框1中的内容可得,输出的hash即为正确的flag。而hash的值与first,second的值和argv[3]的长度有关。因此我们需要求出first,second和argv[3]。首先根据方框2中的内容求first的值:如果(first 不等于 0xcafe),会得到( “你错了,对不起。”)。说明 first要等于0xcafe 。0xcafe是十六进制的数,用计算器将它转化成十进制数:则得出 first = 51966 。接着
2021-07-23 21:47:02 197
原创 【攻防世界】REVERSE新手练习区 - insanity
insanity-wp打开ida.64,将题目附件拖入其中,得到如下图所示的界面:利用IDA快捷键Alt+t打开文本搜索对话框,在String文本框中输入要搜索的字符串flag,然后点击OK:最后得到本题的flag为9447{This_is_a_flag}。...
2021-07-22 11:18:37 241
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人