摘要: 栈 定义:栈是限定仅在表尾进行插入和删除操作的线性表。 我们把允许插入和删除的一端称为栈顶(top),另一端称为栈底(bottom),不含任何数据元素的栈称为空栈。栈又称为先进后出(Last In First Out)的线性表,简称LIFO结构。 首先他是一个线性表,栈元素具有线性关系,即前驱后继关 阅读全文
posted @ 2021-03-05 21:13 leei 阅读(169) 评论(0) 推荐(0)
摘要: 定义 线性表:零个或多个数据元素的有限序列。 首先,他是一个序列,元素之间是有顺序的,若存在多个元素,**则第一个无前驱,最后一个无后继,其他元素每个元素都有且只有一个前驱和后继。 **然后,线性表强调是有限的,元素的个数是有限的。 线性表元素的个数n(n>-0)定义为线性表的长度,当n=0时,称为 阅读全文
posted @ 2021-03-04 16:26 leei 阅读(103) 评论(0) 推荐(0)
摘要: elf文件IDA打开后,程序很简单 要求输入14个字符,然后进入judge中进行相应操作,那么judge是关键函数,可是我们不能反编译这个函数,可能是对函数进行了加密,我们发现7-11行对judge进行了一系列操作,应该是解密过程,我们直接说解决的办法吧 这里应该有两种方式可以解决,由于IDA py 阅读全文
posted @ 2020-10-30 14:13 leei 阅读(190) 评论(0) 推荐(0)
摘要: 这是一道迷宫题。 经过step_1,2是创建迷宫,step_3是走迷宫。进入step_3后发现: 使用了w、a、s、d表示上下左右,我们输入这四个字母对应正确的迷宫路径就是flag,那么得到迷宫就是关键了,我们可以直接在step_3设断点、调试时查看step_1、2运行后的迷宫。 然后写脚本得到迷宫 阅读全文
posted @ 2020-10-30 13:03 leei 阅读(333) 评论(0) 推荐(0)
摘要: xctf中进阶第三题,遇到了mips架构的题目。无法进行反编译。学了点misp的指令去看汇编 程序结构 数据声明+普通文本+程序编码(文件后缀为.s,或者.asm也行),数据声明在代码段之后 数据声明 以.data开始声明,声明后即在主存中分配空间。 声明格式: name: type value(s 阅读全文
posted @ 2020-09-05 12:37 leei 阅读(442) 评论(0) 推荐(0)
摘要: 1.Guess-the-Number 下载附件后是jar文件,然后百度一波jar文件。 发现可以直接解压文件得到 反编译class文件(可以使用JD-GUI直接对jar包进行反编译)得到java源代码 所以进行xor运算后得到flag:a7b08c546302cc1fd2a4d48bf2bf2ddb 阅读全文
posted @ 2020-08-13 22:23 leei 阅读(218) 评论(0) 推荐(0)
摘要: f5 反编译 shift+e 快速提取ida中数据 alt+t 查找ida的数据 ctrl+t继续查找下一个重复数据 。。。慢慢加吧 不用真的是想不起来, 函数调用 view->open subviews->function calls d变为数据,c变为代码,p重新构造函数 阅读全文
posted @ 2020-08-13 21:41 leei 阅读(592) 评论(0) 推荐(0)
摘要: no-strings-attached 一、查壳 elf文件,无法在windows上运行。32位 二、拖入ida分析 发现在函数 authenticate()有关键点 进入后在&unk_8048B44中发现有Success! Access denied! 所以我们找对了关键函数。再看上面decryp 阅读全文
posted @ 2020-07-26 22:29 leei 阅读(356) 评论(0) 推荐(0)
摘要: 1.open-source 下载附件后,看到他是.c文件。用相应的软件打开,我这里是用的Geany。打开后如下图 发现经过三个判断后经过最后的hash便是我们要找的flag,其中的first、second、strlen(argv[3])我们可以通过上面的三个if来写脚本得到 1 first = 0x 阅读全文
posted @ 2020-03-18 20:36 leei 阅读(732) 评论(0) 推荐(0)