WINDOWS逆向

WINDOWS逆向

  • 进制
1
1.进制的定义 2.进制的运算 3.源码反码补码移码
  • 汇编
1
2
3
4
阶段概述
x86汇编基础
x64汇编基础
Win32汇编基础
  • c
1
2
3
4
5
6
7
8
9
10
阶段概述
变量
函数
三大结构
数组
指针
动态内存管理
文件I/O
结构体/联合体/枚举
预处理器
  • C++
1
2
3
4
5
6
7
引用
面向对象

虚函数
封装
继承
多态
  • 逆向基础篇
1
2
3
4
5
6
C/C++逆向分析
.NET逆向分析
Java逆向分析
本地程序破解
网络程序破解
注册机编写
  • 数据库
1
2
3
4
5
Mysql基础知识
Mysql创建数据库与表
Mysql增删改查
Mysql高级技术
C++与Mysql
  • 硬编码
1
2
3
基础概念
定长编码
变长编码
  • ShellCode
1
2
3
4
5
6
7
8
9
基础理论
poc
Exploit
shellcode定位
shellcode功能开发
动态函数获取
处理“坏字符”
突破系统保护-Ret2Libc
突破系统保-Rop
  • 反调试
1
2
3
4
基于系统API的反调试
基于环境监测的反调试
基于异常处理的反调试
基于调试器行为的反调试
  • 反虚拟机
1
2
基于环境监测的反虚拟机
基于其他条件的反虚拟机
1
2
3
加壳:压缩壳,加密壳,虚拟化壳
写壳:汇编壳,c++
脱壳:压缩壳,加密壳
  • 算法
1
2
3
4
时间复杂的
检索算法
排序算法
字符串相关算法
  • 网络开发
1
2
3
4
5
6
7
8
计算机网络基础
Winsock
网络I/O模型
完成端口
互联网广播与IP多播
原始套接字
P2P技术
协议分析
  • Windows程序设计
1
2
3
4
5
6
7
8
9
窗口与消息
绘图
鼠标
键盘
计时器
子窗口
文本字体
图像
动态链接库
  • MFC程序设计
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
基础概念
消息映射
输入输出
MFC类与变量
MFC集合类
基础控件
高级控件
文件I/O与串行化
对话框
单文档程序
多文档程序
工具栏/状态栏/组合栏
COM
OLE
Automation
ActiveX
  • Windows核心编程
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
错误处理
字符串处理
内核对象
进程
线程
线程调度
线程同步
同步设备I/O与异步设备I/O
线程池
内存管理

DLL
高级DLL技术
线程局部存储
注入与hook
异常处理
错误报告与引用恢复
  • 密码学
1
2
3
4
5
基础概念
单项散列函数
对称加密算法
公开密钥加密算法
其他算法
  • 调试原理
1
2
3
4
5
6
7
基础理论
保护模式
中断与异常
断点与单步执行
用户态调试流程
中断与异常管理
调试器实现原理
  • PE结构
1
2
3
4
5
6
7
8
9
10
11
12
什么是PE
MS-DOS
PE头
区段
导入表
导出表
资源表
重定位
TLS
延迟载入
手写最小PE
PE编辑器开发
  • 数据结构
1
2
3
4
5
6
线性表
链表
栈与队列


散列
  • 恶意代码
1
2
3
4
理论:恶意代码基础,恶意代码历史,恶意代码现状,恶意代码发展趋势
编码:恶意代码基本架构设计,功能模块设计,通信模块设计,对抗模块设计,传播模块设计,总体架构,反调试实现,反虚拟机实现,感染实现,通信实现,横向移动实现,漏洞利用实现,破坏性实现,功能性实现,混淆,白加黑
分析:恶意代码快速分析,静态分析,动态分析,本地行为分析,网络行为分析,对抗反调试,对抗反虚拟机,对抗混淆,对抗白加黑,shellcode分析,其他功能分析
案例:熊猫烧香,Wannacry,Bad Rabbit,Oceanlotus
  • 漏洞
1
2
3
漏洞基础:漏洞的概念,价值,现状,发展趋势,栈溢出漏洞,堆溢出漏洞,整数溢出漏洞,格式化字符串漏洞,双重释放漏洞,释放重引用漏洞,数组越界漏洞
文档漏洞:案例cve-2010-2883,案例cve-2012-1876
漏洞挖掘:FUZZ的基本概念,文件格式FUZZ,网络协议FUZZ,浏览器FUZZ,其他FUZZ

WINDOWS逆向
http://example.com/2023/07/26/WINDOWS逆向入门/
作者
luo
发布于
2023年7月26日
许可协议