自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 学习笔记,记录文章

学习笔记,记录文章2020.11ida动态调试elf(无坑详细)IDA动调报错(google):Sorry, this database has been created by a pirate version of IDAIDApython安装

2020-11-21 23:24:34 134

原创 【2023.3.8】数据结构复习笔记

看b站【王道数据结构】,对自己遗漏的知识点进行回顾总结,并记录笔记。

2023-03-18 15:11:57 1216 1

原创 【2023.3.5】MOOC程序设计与算法

学习mooc视频做的一些笔记。

2023-03-12 23:07:25 570

原创 【2023.3.1】c语言复习笔记

C语言复习笔记,只是记录一些我自己不熟悉的,并没有记录所有C语言知识点。

2023-03-12 22:44:46 528

原创 【2022.3.8】记一次exe手动添加shellcode

记录一次exe手动添加shellcode

2023-03-04 17:21:37 885

原创 【2022.1.3】手脱压缩壳练习(含练习exe)

记录练习手脱壳(简单的压缩壳),都有对应练习exe。

2023-03-04 17:15:05 813

原创 【2021.12.28】ctf逆向中的迷宫问题(含exe及wp)

迷宫问题是ctf逆向中的经典问题。

2023-03-04 17:12:51 1830

原创 【2021.12.25】ctf逆向中常见加密算法和编码识别

在对数据进行变换的过程中,除了简单的字节操作之外,还会使用一些常用的编码加密算法,因此如果能够快速识别出对应的编码或者加密算法,就能更快的分析出整个完整的算法。CTF 逆向中通常出现的加密算法包括 base64、TEA、AES、RC4、MD5 等。

2023-03-04 17:08:23 1768

原创 【2021.12.25】xv6系统入门学习

xv6 是 MIT 设计的一个教学型操纵系统。记录Ubuntu上安装x86版本的xv6系统,为其添加开机密码,添加自己的命令,的入门学习历程。

2023-03-04 17:05:12 818

原创 Experiment 0x4:IO复用实现并发服务器

Experiment 0x4:I/O复用实现并发服务器文章目录Experiment 0x4:I/O复用实现并发服务器0x0 说明0x1 要求0x2 实现0x3 源码1- TCP服务端源码2- TCP客户端源码0x0 说明实验四:I/O复用实现并发服务器客户端跟实验二、实验三一样,服务器通过I/O复用实现并发。这一节不太理解。。记录一下实验课代码代码环境:win10VS2019 远程连接 ubuntu20进行linux编程0x1 要求要求:实现采用阻塞方式的并发服务网络通信程序,同时

2022-03-30 19:07:17 1737 1

原创 linux-守护进程

linux-守护进程文章目录linux-守护进程0x0 说明0x1 守护进程简介0x2 代码实现截图0x3 源码0x0 说明守护进程也是网络编程这门课的知识点,但是没有实验要求,自己写了一下,然后记录一下。参考连接:【Linux】守护进程( Daemon)的定义,作用,创建流程照着这篇文章写的代码的,只写了创建守护进程的部分。0x1 守护进程简介贴一张参考链接的截图[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cTmA0boj-1648301544881)(D

2022-03-26 21:33:05 502 1

原创 Experiment 0x3:多线程并发服务器TCP编程

Experiment 0x3:多线程并发服务器TCP编程文章目录Experiment 0x3:多线程并发服务器TCP编程0x0 说明0x1 要求0x2 实现0x3 源码1- TCP服务端源码2- TCP客户端源码0x0 说明实验三:多线程并发服务器TCP编程跟实验二几乎一样,只是服务端多进程改为多线程。记录实验课代码代码环境:win10VS2019 远程连接 ubuntu20进行linux编程0x1 要求要求:实现一个采用多线程并发服务器技术的网络通信程序,同时包含服务器与客户端。

2022-03-24 23:30:16 612

原创 Experiment 0x2:多进程并发服务器TCP编程

Experiment 0x2:多进程并发服务器TCP编程文章目录Experiment 0x2:多进程并发服务器TCP编程0x0 说明0x1 要求0x2 实现0x3 源码1- TCP服务端源码2- TCP客户端源码0x0 说明实验二:多进程并发服务器TCP编程记录实验课代码代码环境:win10VS2019 远程连接 ubuntu20进行linux编程0x1 要求要求:实现一个基于TCP协议的多进程并发通信服务器与客户端,要求完成以下功能1、基于多进程并发服务器编程模板,设计一个基于T

2022-03-23 16:01:46 4202

原创 Experiment 0x1:UDP套接字编程

Experiment 0x1:UDP套接字编程文章目录Experiment 0x1:UDP套接字编程0x0 说明0x1 要求0x2 实现0x3 源码1- UDP服务端源码2- UDP客户端源码0x0 说明实验一:TCP套接字编程或UDP套接字编程此篇为第二部分:UDP套接字编程记录实验课代码代码环境:win10VS2019 远程连接 ubuntu20进行linux编程0x1 要求要求:实现一个基于UDP协议的对等用户通信程序,要求完成以下功能。通信程序:从命令行读入对等端的

2022-03-23 15:45:44 3317

原创 Experiment 0x1:TCP套接字编程

Experiment 0x1:TCP套接字编程文章目录Experiment 0x1:TCP套接字编程0x0 说明0x1 要求0x2 实现0x3 源码1- TCP服务端源码2- TCP客户端源码0x0 说明实验一:TCP套接字编程或UDP套接字编程此篇为第一部分:TCP套接字编程记录实验课代码代码环境:win10VS2019 远程连接 ubuntu20进行linux编程0x1 要求要求:实现一个基于TCP协议的服务器-客户端程序,要求完成以下功能。客户端:从命令行读入服务器

2022-03-23 15:43:08 3842

原创 Angr_ctf

Angr_ctf:1~13练习文章目录Angr_ctf:1~13练习#、angr 入门00_angr_find(1)总结(2)练习01_angr_avoid(1)总结(2)练习02_angr_condition(1)总结(2)练习03_angr_symbolic_registers(1)总结(2)练习04_angr_symbolic_stack(1)总结(2)练习05_angr_symbolic_memory(1)总结(2)练习06_angr_symbolic_dynamic_memory(1)总结(2)

2021-10-25 23:31:19 588

原创 Unicorn基础学习

Unicorn基础学习跟着看雪无名侠的文章学的:Unicorn 在 Android 的应用知识点在他给的印象笔记里,我也就学了快速入门。。。基础入门是这篇:Unicorn快速入门下面给了两份代码,都差不多,也是粘的大佬的,然后写了注释,方便理解。模拟ARM执行from unicorn import *#导入ARM指令的指令集from unicorn.arm_const import *#我们要模拟执行的ARM指令ARM_CODE = b"\x37\x00\xa0\xe3\x03\

2021-09-06 11:00:42 1053 1

原创 Python_Z3

Python_Z3学习文章目录Python_Z3学习0、简介1、安装2、整型(Int)方程求解3、有理数(Real)型解方程求解4、位向量(BitVec)求解(二进制位运算求解)5、实际ctf中的位运算求解0、简介利用python的Z3库可以进行约束求解,即解任何方程(只要有解),常用的包括整数求解、有理数求解、位向量求解(二进制位运算求解)。1、安装pip install z3_solver注意不是安装z3,是z3_solver,两个不一样。2、整型(Int)方程求解网上贴的代码,我标注

2021-08-18 15:55:45 3068

原创 WP-攻防世界misc_新手区

WP-攻防世界misc_新手区文章目录WP-攻防世界misc_新手区2、pdf3、如来十三掌总结:rot13编码4、give_you_flag总结:二维码5、stegano总结:摩尔斯点码6、坚持60s7、gif8、掀桌子9、ext310、SimpleRAR总结:(1)用`010editor`时添加模板辅助分析文件结构总结:(2)RAR文件结构的理解11、base64stego总结:(1)zip文件结构及其伪加密总结:(2)base64隐写12、功夫再高也怕菜刀总结:(1)在010editor中写入16进

2021-08-16 18:01:45 866

原创 线程、临界区、互斥体、事件

文章目录0.说明1.线程a.线程的理解b.创建线程c.线程基本操作挂起线程:恢复线程:终止线程:2.CONTEXT3.临界区_互斥简述多个临界区造成互锁4.互斥体_互斥5.事件_互斥a.事件简述b.线程同步:生产者与消费者0.说明去年底写的文章,忘了发,发一下。观看滴水逆向视频总结(部分截图来自于滴水课件)编译器:vc++6.0编写语言:c欢迎大家留言交流????^ __ ^1.线程a.线程的理解我的理解:一个程序进入main函数,逐步运行的流程,就是主线程。开辟多线程的作用就是,可

2021-08-16 17:58:28 296

原创 Windows PE文件结构图

Win32 PE文件格式图

2021-06-17 04:00:22 234

原创 win32消息处理和创建窗口

文章目录0.说明1.win32事件和消息2.系统处理消息3.win32创建窗口和消息处理4.源代码0.说明观看滴水逆向视频总结(部分截图来自于滴水课件)编译器:vc++6.0编写语言:c欢迎大家留言交流????^ __ ^1.win32事件和消息2.系统处理消息1.用户产生消息,该消息进入系统的消息队列2.所有的应用程序也存在一个队列,该队列挨个读取消息队列。3.如果一个应用程序检测到这个消息是自己的,就处理该消息,如果不是,就不管,继续循环读取队列中下一个消息。4.如果一个消息

2020-10-17 01:08:15 440 1

原创 模拟PE文件加载

PE重载文章目录PE重载0.说明1.PE重载原理第一步:将exe映射至内存第二步:修正重定位表的地址第三步: 修正IAT表第四步:跳转运行至PE入口2.PE重载总结3.一个小问题4.源码0.说明观看滴水逆向视频总结(部分截图来自于滴水课件)编译器:vc++6.0编写语言:c欢迎大家留言交流????^ __ ^可以加我qq一起学习:1245885144????????1.PE重载原理模拟系统加载一个exe的过程,通过pe重载的方法,可以将原有exe分割、加密、任意操作后,再通过pe重载的方

2020-08-10 15:33:05 693 4

原创 PE导入表和IAT表的原理及工作关系

PE导入表和IAT表的原理及工作关系文章目录PE导入表和IAT表的原理及工作关系0.说明1.PE导入表和IAT表大致工作关系(1)为什么会有IAT表(2)为什么会有导入表2.导入表和IAT表的真正关系(原理)(1)OriginalFirstThunk(2)Name(3)FirstAddress3.C语言解析导出表(1)建议(2)C源代码4.移动导出表到新增节区(1)流程(2)我遇到的困难(3)C源代码0.说明观看滴水逆向视频总结(部分截图来自于滴水课件)编译器:vc++6.0编写语言:c观看滴水

2020-07-14 03:27:30 4361

原创 PE目录项之重定位表(解析、移动、模拟运作)

PE目录项之重定位表(解析、移动、模拟运作)文章目录PE目录项之重定位表(解析、移动、模拟运作)0.说明1.解析重定位表(1)作用(2)详解2.移动重定位表到新建节区3.模拟重定位表工作(1)重定位表的工作(2)模拟它工作4.C源代码(1)解析重定位表(2)移动重定位表(3)模拟重定位表工作0.说明观看滴水逆向视频总结(部分截图来自于滴水课件)编译器:vc++6.0编写语言:c观看滴水逆向视频总结(部分截图来自于滴水课件)欢迎大家留言交流????^ __ ^可以加我qq一起学习:124588

2020-07-03 16:08:46 1345

原创 PE目录项之导出表(解析、移动)

PE目录项之导出表文章目录PE目录项之导出表0.说明1.简述导出表a.位置b.导出表的结构c.导出表的工作方式① 根据函数名导出② 根据序号导出函数③ 总结2.解析导出表a.注意要点b.源代码3.移动导出表所有结构到新建的节区a.移动导出表的原因b.大概流程c.注意事项d.源代码0.说明观看滴水逆向视频总结(部分截图来自于滴水课件)编译器:vc++6.0编写语言:c欢迎大家留言交流或询问????^ __ ^有不懂的直接留言,我必回!????????1.简述导出表导出表,顾名思义就是要导出的

2020-06-23 21:45:22 1255

原创 PE之FOA与RVA互相转换过程与C语言实现

文章目录说明一、FOA和RVA二、RVA转为FOA1.大致步骤2.特殊情况3.C语言实现函数功能三、FOA转为RVA1.大致步骤2.特殊情况3.C语言实现函数功能说明看滴水的视频写学习笔记总结语言:c/c++编译环境:vc++6.0C语言函数中定义的结构类型来自于头文件windows.h准确的说,定义的PE的结构体类型的所有数据都来自与头文件winnt.h,只不过windows.h内部声明了winnt.h一、FOA和RVA缩写英文全称含义FOAFile Offset

2020-05-21 18:18:25 1267 2

原创 静态链接库与动态链接库的建立与使用

文章目录说明一、静态链接库1.建立2.使用(1).方式一(2).方式二3汇编层,lib的调用3.静态链接库的特点二、动态链接库1.建立2.使用(1).方式一:隐身链接(2).方式二:显示链接(3).动态链接库的特点三、使用.def文件导出动态链接库建立过程查看该dll文件调用该dll文件直接写函数名字通过写函数序号说明看滴水的视频写学习笔记总结语言:c/c++编译环境:vc++6.0动态链接库方便我们封装函数,写大型项目的时候很重要,降低耦合,达到模块化的设计,方便重复使用与更新。一、静态链

2020-05-16 02:02:41 415

原创 C语言实现PE的拉伸压缩和扩大、合并、增加节区

C语言实现PE的拉伸压缩和扩大、合并、增加节区文章目录C语言实现PE的拉伸压缩和扩大、合并、增加节区0.说明一.各个部分的子函数1.读取2.拉伸3.压缩4.存盘5.扩大节6.合并节7.新增节二.整体代码0.说明看滴水初期视频PE部分的笔记然后自己写代码实现文件的拉伸过程PE节区扩大、合并、增大都是在拉伸之后实现的这之中涉及了许多结构体和自定义数据,都是定义在winnt.h这个头文件中,当然也被包含于windows.h这个头文件。开始的时候都是不熟,只有多写,自然就记着了。编译环境:vc++

2020-05-11 18:27:53 1553 4

原创 PE头结构说明及C语言解析

PE头结构说明及C语言解析文章目录PE头结构说明及C语言解析0.说明1.PE的整个结构2.PE结构详解DOS头NT头PE标签(PE_NT_SIGNATURE)PE文件头(PE_FIEL_HEADER)PE可选头(PE_OPTIONAL_HEADER)节表头3.C语言实现解析PE头文件0.说明看滴水初期视频PE部分的笔记1.PE的整个结构2.PE结构详解我这里只没有写数据项,因为还不怎么会0.0有些数据也没写,因为现阶段还没用DOS头WORD e_magic *

2020-05-11 17:16:51 1583 1

原创 base64反汇编

base64反汇编文章目录base64反汇编1.C语言代码(base64加密)2.base64反汇编3.对比分析1.C语言代码(base64加密)#include<stdio.h>#include<string.h>#include<stdlib.h>void jiami(char x,char y,char z);char s[100];i...

2020-04-12 21:33:21 1141

原创 数据结构_dfs深度优先算法入门(C语言)

数据结构_dfs深度优先算法入门(C语言)文章目录数据结构_dfs深度优先算法入门(C语言)0.闲话1.个人理解2.全排列问题(1到n的排列组合)2.八皇后问题求解二维迷宫(1)只输走出迷宫解的个数(2)输出解的个数和路径0.闲话​ 才学习数据结构的dfs,做一下笔记记录一下,加深理解-.-​ 我这里就简单讲一下我的理解和一下例子​ 推荐学习资源(B站视频,原理和实例):洛谷 普及组...

2020-03-30 16:03:17 4464 1

原创 C语言_指针详解

C语言_指针详解文章目录C语言_指针详解0.闲话1.内存引用2.指针类型的实质及其大小。3.指针寻址4.结构体指针5.数组指针6.指针数组7.指针函数6.指针数组7.指针函数0.闲话​ 看滴水逆向之后的学习总结。​ 编译环境:vc++6.0​ 个人认为:指针这一块要真正明白每个指针代表什么,如何在内存寻址,还是要看指针的反汇编,才能理解透彻。1.内存引用​ 指针的更本就是对内存的引用...

2020-03-29 20:51:28 796

原创 数据结构_C语言链表构造栈和队列

数据结构_C语言链表构造栈和队列文章目录数据结构_C语言链表构造栈和队列0.闲话1.栈(1)大致意思(2)栈:实现10进制转n进制2.队列(1)大致意思(2)队列:实现链式存储0.闲话​ 才开始学数据结构,写点笔记,加深理解。​ 栈和队列是数据结构的基础,很多算法都会基于这两个结构,比如dfs基于栈和bfs基于队列。​ 栈和队列可以用链表构造,也可以用数组构造,我这里是用链表构造,并且是...

2020-03-26 23:55:15 242

原创 C语言反汇编_switch_case

C语言反汇编 _ switch _ case文章目录C语言反汇编 _ switch _ case@[toc]0 . 说明1.情况一:汇编层和if_else相同的a.当`case n:`个数小于等于三时,无论是否连续。b.当`case n:`个数大于三,但n不连续,且相差较大时。2.情况二:内存中生成`大表`装地址a.当`case n:`个数大于三,且连续时。b.当`case n:`个数大于三,n...

2020-03-18 02:52:37 703 2

原创 C语言结构体_字节对齐

C语言_结构体 _ 字节对齐 - 详解文章目录C语言_结构体 _ 字节对齐 - 详解@[toc]0 . 说明1.结构体__字节对齐的背景(本质)2.结构体__字节对齐的处理方式总结3.`4字节对齐`__实例展示a.发生字节对齐b.改变书写顺序c.体会4.拓展5.`8字节对齐`实例展示6.强制转换 个别结构体 字节对齐的方式0 . 说明​ 看滴水逆向视频总结笔记​ 编译器VC++6.01....

2020-03-15 20:54:07 535

原创 C语言反汇编_数组和结构体

C语言反汇编_数组与结构体文章目录C语言反汇编_数组与结构体@[toc]0 . 说明1.数组1.数组对应堆栈空的分配2.数组的寻址1.一维数组2.二维数组3.三维数组3.数组的作为函数参数2.结构体0 . 说明​ 看滴水逆向视频总结笔记​ 编译器VC++6.01.数组1.数组对应堆栈空的分配​ 数组在汇编中的位置与普通局部变量有一些细节上的差异,一般局部变量都是从栈底依次分配到栈底,...

2020-03-13 23:33:04 853

原创 C语言反汇编入门小知识

C语言反汇编入门小知识文章目录C语言反汇编入门小知识0 . 说明1 . 子函数常识2 . 本机宽度:32位1).函数传参2).局部变量:int型/char型3).局部变量:int型数组/char型数组3 . 64位的数据存储0 . 说明​ 看滴水逆向视频总结笔记​ 编译器VC++6.0​ 主要总结一些C语言的反汇编常见的点。1 . 子函数常识​ 参数传入堆栈push eaxca...

2020-03-11 20:18:52 1428

原创 裸函数 和 调用约定

裸函数 和 调用约定文章目录裸函数 和 调用约定0.说面1.裸函数 _declspec(naked)2.调用约定 基于堆栈平衡_cdecl_stdcall_fastcall0.说面​ 看滴水逆向视频总结​ 编译器:vc++6.01.裸函数 _declspec(naked)​ 用于告诉编译器不用为函数生成任何汇编代码(包括开辟空间以及ret),方便自己用汇编书写函数部分...

2020-03-09 00:29:56 276

原创 经典缓冲区溢出小例子

经典缓冲区溢出小例子文章目录经典缓冲区溢出小例子0.说明1.基于缓冲区溢出的HelloWord2.永不停止的HelloWord0.说明​ 两个小程序,C语言编写,VC++6.0编译​ 调试用的OD。​ 小程序来源:“滴水逆向”的视频。1.基于缓冲区溢出的HelloWord#include<stdio.h>void HelloWord(){ printf("Hel...

2020-03-07 00:23:51 2268 7

空空如也

空空如也

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

TA关注的人

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