自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

原创 逆向工具使用介绍

在逆向分析的时候有静态分析和动态分析两种,静态分析即为不运行程序,直接分析程序文件中的机器指令,去分析程序的底层运行逻辑和算法。而动态分析是将程序运行起来,在程序运行的同时,对程序进行下断点,查看内存等一系列操作去动态的查看程序运行中的一些数据的变化,去发现在静态调试时所遗漏或难以分析的问题,在实际应用中通常是动态分析和静态分析两者结合或单独运用,用最快的速度达到我们的目的静态分析时使用到的是ida,动态分析的时候用的是ollydbg,接下来就对这两种工具的功能及作用进行基本的介绍一、idaida在

2021-11-01 09:34:51 930

原创 汇编2021-10-13

一、16、32、64位cpu的整数和字符串的表示方法和范围1、16位对于无符号整数(即正数)取值范围为2^16-1(0~25535)16位二进制数都可用于表示整数对于有符号整数,以16位的最高位表示正数或负数,最高位为0,为正数,最高位为1,为负数当最高位为0,0000 0000 0000 0001 到 0111 1111 1111 1111即(1~2^15-1)(1-32767)当最高位为 1,即代表负数时,取值范围如下(以补码形式表示):1000 0000 0000 0000 到 1111

2021-10-15 11:06:03 1521 1

原创 从零开始:攻防世界_REVERSE_进阶区writeup

1、answer_to_everything把提供的附件下载出来用 PE 打开提示是linux 的64位文件,然后直接用ida64打开打开后直接进入主函数,查看伪代码进入主函数中,主函数的结构简单,直接查看 not_the_flag 函数其中有个 if 判断,输出的第一个内容表明flag没有任何特征第二个内容,意思是你真差劲,即答案错误我们注意到第一个文本后有一串特殊的字符串,可能为本题flagkdudpeh对于这一串字符,开始认为是本题flag,直接输入进去,错误,我们想起本题的题

2021-09-26 21:44:39 1301

原创 汇编语言assembly language

汇编指令集合mov 传送字或字节add 加法sub 减法push 把字压入堆栈pop 把字弹出堆栈loop 循环and/or 异或操作div 除法dup 数据重复在提到汇编之前,先提一下机器语言,机器语言就是机器指令(计算机可以执行的命令)的集合,机器指令是由0和1组成的二进制数,计算机将其变为高低电平,传输给电子器件,推动计算机的运行。到了现代,计算机中有一个可以进行数据处理的元件,即CPU(中央处理单元),CPU是一种微型处理器

2021-09-25 22:30:39 184

原创 一周一结(第一期)

从本周起,对每周的学习情况进行总结一、数据结构(c)1、顺序表本周学习了如何用C语言的顺序表最基本的写法,以及顺序表的相关知识。首先顺序表是在内存中创建了连续的一段空间用于存储所设定的数据,且顺序表只要得到起始地址,就可以通过相关的数据类型所占的字节数而得到后续数据的地址在顺序表之后也学习了顺序栈和队列;顺序栈的创建和写入遵循 “先入后出” 的原则,对顺序栈进行操作时,只可以对栈顶进行写入,删除,和插入的操作,基本写法与顺序表差别不大;而队列有队头和队尾,遵循 “先入先出” 的原则,即数据写入

2021-09-19 00:23:46 63

原创 ctf——逆向新手题目11 (csaw2013reversing2) WP

首先将下载的文件打开运行确实如题目描述所说运行可以得到flag,但是却为乱码那就先用Exeinfo PE查看信息这次为c++编写的32位程序,直接用ida32打开进入后直接查看主函数的伪代码这个主函数看起来还是比较复杂的先查看开头的HeapCreate()函数和heapAlloc()函数的作用,百度了解到这两个函数实际上就是申请了内存空间的(https://www.cnblogs.com/lancidie/archive/2011/02/12/1952356.html)然后看一下memc

2021-08-09 22:50:51 189

原创 ctf——逆向新手题目9 (no-strings-attached) WP

首先用Exeinfo PE打开文件查看信息这是 linux 的 32位 ELF 文件 直接用ida32打开,直接进主函数查看伪代码(F5)主函数比较简单,各自看一下其功能第一个 setlocale() 是一个初始化函数,是 c++ 中的自有函数 不影响解题第二个int banner(){ unsigned int v0; // eax v0 = time(0); srand(v0); wprintf(&unk_80488B0); rand(); return

2021-08-09 12:13:57 249

原创 ctf——逆向新手题目12 (maze) WP

首先根据题目描述该题是一个迷宫,解这道题前先记住这是迷宫首先先用Exeinfo PE打开,看到这是linux的ELF64位文件接着去用ida64打开进入main函数查看伪代码对于这道题,其实算是比较有难度的一道题,对伪代码分块分析伪代码中有较多的数字都转换为相应的字符(按R)这里是判断我们输入的flag是否满足长度为24以及字符前后是否为 ‘nctf{’ ‘}’(这里的v10有的时候打开是v9,目前不清楚为啥会变)中间的判断移动方向先不看,倒着看最后面的if条件判断不成立就跳转20

2021-08-02 17:57:50 534

原创 ctf——逆向新手题目6 (open-source) WP

这次根据题目描述,我们将得到源代码,就先将附件下载出来以下为本题提供的源码#include <stdio.h>#include <string.h>int main(int argc, char *argv[]) { if (argc != 4) { printf("what?\n"); exit(1); } unsigned int first = atoi(argv[1]); if (first != 0xcafe) { printf("you a

2021-07-30 11:34:27 401

原创 Python编写的简单学生信息管理系统

stu_list = []# 主菜单def show_menu(): print('1.添加学生') print('2.删除学生') print('3.修改学生信息') print('4.查询单个学生信息') print('5.查询所有学生的信息') print('6.退出系统')# 添加学生信息def insert_student(): s_id = input('输入学号') for stu in stu_list:

2021-07-29 18:43:20 439

原创 ctf——逆向新手题目4 (game) WP

首先还是下载附件,这次是一个exe文件,先打开看一下发现这是一个依次输入数字然后点亮所有的符号,得到flag的游戏,然后我们就用Exeinfo PE打开发现是一个c++编写的32位程序,然后就用ida32打开有时进来之后无法直接找到main函数,那就按 Alt+T 搜索文本 main 就能找到,然后就跟进main函数查看伪代码继续跟进main_0函数,跟进后可以看到以下代码这些代码是判断输入的数字是否在要求范围内,否则重新输入,下面的代码是根据输入的数字,改变字符我们就先跟进 sub

2021-07-29 12:38:24 982 4

原创 ctf——逆向新手题目10 (getit) WP

首先我们先下载提供的附件,用Exeinfo PE打开查看信息是一个64位的ELF文件,无壳,接下来就用ida64去打开然后进入主函数查看伪代码这是我们去分析伪代码首先给 v5 赋了 0 为初值,然后在 while 循环里与 s 的长度进行比较,我们就追踪 s 查看其内容s 为一串字符,暂不知含义,继续看,进行了一个(v5 & 1)的运算,实际上就是判断v5的二进制最后一位是否为1若是返回值为 1,否则为 0,实际就是判断奇偶数,最后一位为1,为奇数 v3=1,否则为偶数 v3 =

2021-07-28 13:15:54 344

原创 ctf——逆向新手题目7 (simple-unpack) WP

首先,我们先将提供的附件下载出来,根据题目描述这是一个被加壳的二进制文件然后我们就用ExeinfoPe去查看一下文件的基本信息打开后我们根据最后两行我们可以看出这是一个Linux系统下64位的ELF文件,并且加了upx壳我们先不去脱壳直接用ida64去打开看一下由于这个文件加壳的原因我们从函数区无法找到有用信息,所以就想去用一下脱壳工具去脱壳脱去壳之后再去用ida64去尝试打开这次我们就能在左边的函数区找到main函数点进去这时从右边我们就意外的看到本题的flag这会我还是想去查看一

2021-07-27 21:58:53 342

原创 Python学习总结(基础篇)(pycharm)

课堂笔记0. 课程介绍时间安排每天视频目录说明知识掌握程度计算机的组成[了解]2.计算机如何处理程序的[了解]编程语言[了解]python 介绍 [了解]第一个 python 程序[掌握]使用记事本(sublime)书写一个 python 代码使用 pycharm 书写 python 代码pycharm 软件的基本设置file 菜单setting - 背景色setting - 设置字体颜色和大小setting – 设置解释器注释[掌握]变量的定义和

2021-07-25 12:26:58 1761 1

原创 c++学习过程总结(基础篇)

一、基础知识1、注释单行注释:// 描述信息多行注释: /* 描述信息 /2、常量#define 宏常量:#define 常量名 常量值 (通常在文件上方定义,表示一个常量)const修饰的变量:const 数据类型 常量名 = 常量值 (通常在变量定义前加关键字const,修饰该变量为常量,不可修改)3、 标识符命名规则标识符不能是关键字,标识符只能由字母、数字、下划线组成,第一个字符必须为字母或下划线,标识符中字母区分大小写二、数据类型1、整形short(短整型)

2021-07-24 17:19:00 453 1

原创 ctf——逆向新手题目2 (python-trade) WP

首先下载所提供的附件可以看到后缀名是pyc(pyc是一种二进制文件,是由py文件经过编译后,生成的文件),因此我们需要用python的反编译工具https://tool.lu/pyc/我们进入以上这个线上网页进行反编译结果出来我们分析代码首先用一个函数进行字符的处理异或处理(ord(i)是将传输进去的字符串,返回对应的ASCII值)之后进行加16再用chr函数将处理过的x所对应的数字转变为字符串连接在s后面,最后进行base64加密处理,最后得到以上这个字符串我们反向过来就先进行bas

2021-07-22 18:01:28 3120

原创 ctf——逆向新手题目8 (logmein) WP

先将附件下载出来用Exeinfo PE打开发现该文件是属于Linux下的6位的ELF文件,直接用ida64打开进入后点击main函数,F5查看伪代码,进行分析最上方给出三个默认数值,不知做什么,先放着出入一个字符串放入s中且s的长度不能超过v8的长度,否则执行下面的函数,执行 代码为发现其结果为错误,继续往下分析for循环中的i为限定输入字符的长度超过也输出错误最后一步若s中的第i的字符与经过后面的加密运算的字符不同也输出错误最后若全部无误进行最后一个操作,即字符串正确#inc

2021-07-19 18:15:33 347

原创 ctf——逆向新手题目3 (re1) WP

先查看所提供文件运行后的内容,发现是要求输入flag从运行结果发现图中又出现flag的字符,这里我首先想到是改后缀名为 txt 搜索flag字符搜索后确实发现了一个字符串应为本题flagDUTCTF{We1c0met0DUTCTF}以下为正常做法先用Exeinfo PE打开查看文件信息为visual c++编写的 32位程序 且无壳,接着用ida32打开查看main函数并用F5 查看伪代码接着分析伪代码输入一个字符串给v9,v9和v5进行比较若v9和v5相等的话v3的值

2021-07-19 16:04:42 859

原创 ctf——逆向新手题目5 (Hello, CTF) WP

首先查看提供的文件是exe文件,先打开查看文件内容发现要求我们输入正确的flag,然后先随便输入一个字符,错误会进行提示输入错误,那这样我们就按照正常操作先用ExeinfoPe查看文件基本信息从图中看出此文件使用vs c++编写的,并且没有壳为32位程序接着我们用ida32打开文件在左边函数一栏找到main函数,按F5查看伪代码,分析得到flag的关键位置从右边一栏的蓝色字体看起,第一行将右边一串字符赋给v13,从下方的if条件语句看出我们输入的字符串长度v9不能超过0x11(十六进制数,即十进制

2021-07-19 15:33:25 607

原创 ctf——逆向新手题目1 (insanity) WP

第一步下载好所提供的的文件按照正常做法先用ExeinfoPE去查看此文件的基本信息从图中圈出的部分看出此文件非windows EXE文件,而是一个Linux的ELF的32位文件,接着用我们的ida32去打开这个文件打开后进入点击左边的main函数,一般新手题目不会很难,直接进入即可然后按F5变为伪代码通过分析这些代码,发现其中的关键字符串str,我们点击str去进入这个字符串的具体内容这时我我们看到了红线所圈住的地方发现本题的flag为 9447{This_is_a_flag}..

2021-07-16 11:53:31 498

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除