自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Windows内存管理学习笔记(二)—— 物理内存的管理

Windows内存管理学习笔记(二)—— 物理内存的管理前言物理内存实验一:理解MmNumberOfPhysicalPagesMmPfnDatabase_MMPFN物理页状态六个链表实验二:理解零化链表实验三:查看进程占用的所有物理页前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海东老师牛逼!物理内存最大物理内存10-10-12分页:最多识别4GB物理内存2-9-9-12分页:最多识别64GB物理内存操作系统限制在xp系统中,即使采用2-9

2021-01-14 16:52:17 1475

原创 Windows内存管理学习笔记(一)—— 线性地址的管理

Windows内存管理学习笔记(一)—— 线性地址的管理前言线性地址的管理用户空间实验:理解用户空间线性地址管理Private Memory实验:理解Private Memory堆前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海东老师牛逼!线性地址的管理基本概念:每一个进程都有一个4GB的线性地址空间进程空间地址划分:注意:1)只有用户模式区是用户能够访问的2)所谓的“无法访问”只是目标地址并没有被挂上有效的物理页(详见保护模式章节)3)通常

2021-01-13 19:02:29 906

原创 Windows异常学习笔记(五)—— 未处理异常

Windows异常学习笔记(五)—— 未处理异常前言前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海东老师牛逼!

2021-01-12 19:54:10 710

原创 Windows异常学习笔记(四)—— 编译器扩展SEH

Windows异常学习笔记(四)—— 编译器扩展SEH前言要点回顾编译器支持的SEH过滤表达式前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海东老师牛逼!要点回顾当我们通过编程实现windows的异常处理方式使用SEH结构化异常时,我们必须做如下几件事情将异常处理函数挂入SEH链表需要自定义一个异常处理函数(异常过滤,异常处理)注意:这种方式相对而言不太方便,因此现在的编译器都对SEH结构化异常提供了语法支持,并在其之上做了一定的拓展编译器支

2021-01-12 16:51:57 507

原创 Windows异常学习笔记(三)—— VEH&SEH

Windows异常学习笔记(三)—— VEH&SEH前言要点回顾分析 KiUserExceptionDispatcher分析 _RtlDispatchException_RtlCallVectoredExceptionHandlersVEH(向量化异常处理)实验:自定义VEH总结:VEH异常处理流程SEH(结构化异常处理)分析 RtlDispatchException实验:构造自定义SEH总结:SEH异常处理流程前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com

2021-01-11 16:54:04 1340

原创 Windows异常学习笔记(二)—— 内核异常处理流程&用户异常的分发

Windows异常学习笔记(一)—— CPU异常记录前言软件模拟异常实验:分析模拟异常第一步:编译并运行以下代码第二步:查看汇编代码第三步:分析 __CxxThrowException第四步:分析 RaiseException前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海东老师牛逼!软件模拟异常实验:分析模拟异常第一步:编译并运行以下代码...

2021-01-11 14:12:02 1581

原创 Windows异常学习笔记(一)—— CPU异常记录&模拟异常记录

Windows异常学习笔记(一)—— CPU异常记录前言基础知识异常的分类CPU异常前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海东老师牛逼!基础知识异常产生后,首先是要记录异常信息(异常的类型、异常发生的位置等),然后要寻找异常的处理函数,称为异常的分发,最后找到异常处理函数并调用,称为异常处理异常的分类CPU产生的异常软件模拟产生...

2020-03-27 10:08:35 1207

原创 Windows句柄表学习笔记 —— 句柄表&全局句柄表

Windows句柄表学习笔记 —— 句柄表&全局句柄表前言句柄表实验一:在WinDbg中查看句柄表第一步:打开一个Win32窗口程序第二步:编译并运行以下代码第三步:查看运行结果第四步:在WinDbg中定位句柄表句柄表结构实验二:在WinDbg中查看并分析句柄表结构第一步:打开一个Win32窗口程序第二步:编译以下代码并运行第三步:查看运行结果第四步:在WinDbg中定位最后一个句柄第五步...

2020-03-19 09:36:26 3192

原创 Windows事件等待学习笔记(四)—— 事件&信号量&互斥体

Windows事件等待学习笔记(四)—— 事件&信号量&互斥体前言要点回顾事件实验:验证SignalState第一步:编译并运行以下代码第二步:观察结果第三步:修改代码并执行第四步:观察结果第五步:修改代码并执行第六步:观察结果总结实验二:验证Type第一步:编译并运行以下代码第二步:观察结果第三步:修改代码并执行第四步:观察结果解释说明分析WaitForSingleObject信...

2020-03-18 10:15:09 1191

原创 Windows事件等待学习笔记(三)—— WaitForSingleObject函数分析

Windows事件等待学习笔记(三)—— WaitForSingleObject函数分析前言要点回顾WaitForSingleObjectNtWaitForSingleObjectKeWaitForSingleObject:上半部分关键循环总结关于强制唤醒实验:证明等待块与等待块表的关系第一步:编译并运行以下代码第二步:再WinDbg中找到该进程第三步:查看线程信息前言一、学习自滴水编程达人...

2020-03-04 16:06:30 2544

原创 Windows事件等待学习笔记(二)—— 线程等待与唤醒

Windows事件等待学习笔记(二)—— 线程等待与唤醒前言要点回顾等待与唤醒机制可等待对象可等待对象的差异线程与等待对象一个线程等待一个对象实验第一步:编译并运行以下代码第二步:在WinDbg中找到该进程第三步:查看线程信息一个线程等待多个对象实验第一步:编译并运行以下代码第二步:在WinDbg中找到该进程第三步:查看线程信息第四步:查看等待块具体细节等待网总结前言一、学习自滴水编程达人中...

2020-03-03 17:43:57 891

原创 Windows事件等待学习笔记(一)—— 临界区&自旋锁

Windows事件等待学习笔记(一)—— 临界区&自旋锁前言基础知识演示代码案例一:案例二:LOCK单行代码原子操作多行代码原子操作临界区演示代码:手动实现自旋锁分析 KeAcquireSpinLockAtDpcLevel总结前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海东老师牛逼!基础知识并发:是指多个线程在同时执行单核(是分时...

2020-03-02 21:22:28 796 2

原创 Windows APC学习笔记(二)—— 挂入过程&执行过程

Windows APC学习笔记(二)—— 挂入过程&执行过程前言基础知识挂入过程KeInitializeApcApcStateIndex前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海东老师牛逼!基础知识无论是正常状态还是挂靠状态,都有两个APC队列,一个内核队列,一个用户队列每当要挂入一个APC函数时,不管是内核APC还是用户AP...

2020-02-29 21:11:16 1221

原创 Windows APC学习笔记(一)—— APC的本质&备用APC队列

Windows APC机制学习笔记(一)—— APC的本质前言基础知识APCAPC队列APC结构总结分析 KiServiceExit前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海东老师牛逼!基础知识线程是不能被“杀掉”、“挂起”、“恢复”的,线程在执行的时候自己占据着CPU,别人怎么可能控制它呢?举个极端的例子:如果不调用API,屏蔽中断...

2020-01-12 09:41:22 2785

原创 pwn学习总结(五) —— 堆溢出经典题型整理

pwn学习总结(九) —— 经典题目整理三(持续更新)fastbin + 栈溢出fastbin + 函数构造fastbin + 栈溢出题目:fastbin环境:ubuntu 16.04下载地址:https://pan.baidu.com/s/1R6-BVR91Io_ZVPDDpBcCkA 提取码:r7e5查看程序防护:使用ida进行反编译:已知条件:可以得到mai...

2019-12-29 19:08:27 1894 2

原创 pwn学习总结(四)—— 堆基础知识(持续更新)

pwn学习总结(八)—— 堆前言chunk使用中:空闲中(被释放):chunk空间复用Bins容器Fast Binsunsorted binTop chunk前言学习自《glibc内存管理ptmalloc源代码分析》庄明强 著chunk使用中:Size of previous chunk:上一个chunk的大小Size of chunk:当前chunk的大小,后三位另有作用Us...

2019-12-26 15:07:30 1339

原创 Windows驱动开发学习笔记(七)—— 多核同步&内核重载

Windows驱动开发学习笔记(七)—— 多核同步之临界区前言基础知识并发与同步示例分析InterlockedIncrement原子操作相关API内核文件临界区错误的临界区正确的临界区自旋锁分析 KeAcquireSpinLockAtDpcLevel前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海东老师牛逼!基础知识并发:指多个线程在同时执行...

2019-12-17 21:02:05 1557 4

原创 Windows驱动开发学习笔记(六)—— Inline HOOK

Windows驱动开发学习笔记(六)—— Inline HOOK前言实验一:3环 Inline HOOK实验二:0环 Inline Hook前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海东老师牛逼!实验一:3环 Inline HOOK#include <stdio.h>#include <windows.h>BY...

2019-12-16 21:45:09 1167 1

原创 Windows驱动开发学习笔记(五)—— SSDT HOOK

Windows驱动开发学习笔记(五)—— SSDT HOOK前言系统服务表系统服务描述符表前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海东老师牛逼!系统服务表描述:全称:SystemServiceTable(系统服务表)可以通过系统服务描述符表访问系统服务表系统服务描述符表描述:全称:System Services Desc...

2019-12-14 22:08:43 1260 3

原创 Windows驱动开发学习笔记(四)—— 3环与0环通信(常规方式)

Windows驱动开发学习笔记(四)—— 3环与0环通信(常规方式)前言设备对象创建设备对象设置数据交互方式创建符号链接IRP与派遣函数IRP的类型其它类型的IRP派遣函数派遣函数注册位置注册派遣函数派遣函数的格式实验Ring 0代码Ring 3代码第一步:运行Ring 0代码第二步:运行Ring3代码前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海...

2019-12-13 11:27:48 1539 8

原创 Windows驱动开发学习笔记(三)—— 内核空间&内核模块

Windows驱动开发学习笔记(三)—— 内核空间&内核模块前言内核空间实验第一步:编译如下代码第二步:将 .sys 文件拷贝到虚拟机中第三步:部署 .sys 文件并运行第四步:打开一个任意程序第五步:在 WinDbg 中查看新进程的高2G内存内核模块驱动对象DRIVER_OBJECTLDR_DATA_TABLE_ENTRY实验第一步:编译如下代码第二步:将 .sys 文件拷贝到虚拟机中第...

2019-12-12 19:31:02 1327 5

原创 Windows驱动开发学习笔记(二)—— 驱动调试&内核编程基础

Windows驱动开发学习笔记(二)—— 驱动调试&内核编程基础前言基础知识驱动调试PDB(Program Debug Database)WinDbg 加载 PDB实验:调试 .sys 文件第一步:编译代码第二步:将 .sys 文件拷贝到虚拟机中第三步:添加 pdb 文件路径第四步:部署 .sys 文件并运行内核编程基础内核API的使用未导出函数的使用基本数据类型返回值内核中的异常处理常用...

2019-12-11 21:10:13 1206

原创 PWN学习总结(四)—— BROP

pwn学习总结(七) —— BROP描述攻击条件攻击思路例题判断栈溢出长度寻找 stop gadgets寻找 brop gadgets寻找 puts 函数的 plt 地址寻找 puts 函数的 got 地址并 dump plt 表getshell描述BROP(Blind ROP)于 2014 年由 Standford 的 Andrea Bittau 提出,其相关研究成果发表在 Oakland...

2019-12-11 16:36:14 2457 1

原创 Windows驱动开发学习笔记(一)—— 环境配置&第一个驱动程序

Windows驱动开发学习笔记(一)—— 环境配置&第一个驱动程序前言环境配置第一个驱动程序前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海东老师牛逼!环境配置安装VS2010:https://pan.baidu.com/s/1uZWWxCtB60QPaqlf4ICWVQ 提取码:qqro安装WDK7600:https://pan.b...

2019-12-09 14:49:21 2054 5

原创 Windows进程与线程学习笔记(九)—— 线程优先级/进程挂靠/跨进程读写

Windows进程与线程学习笔记(九)—— 线程优先级前言要点回顾调度链表前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海东老师牛逼!要点回顾三种情况会导致线程切换:当前线程主动调用API:KiSwapThread -> KiSwapContext -> SwapContext当前线程时间片到期:KiDispatchInt...

2019-12-09 10:17:21 1056

原创 Windows进程与线程学习笔记(八)—— 线程切换与TSS/FS

Windows进程与线程学习笔记(八)—— 线程切换与TSS/FS前言要点回顾线程切换与TSS内核堆栈调用API进0环实验:分析SwapContext线程切换与FS段描述符结构分析SwapContext总结前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海东老师牛逼!要点回顾SwapContext这个函数是Windows线程切换的核心,无论是主...

2019-12-06 20:46:11 967

原创 Windows进程与线程学习笔记(七)—— 时间片管理

Windows进程与线程学习笔记(七)—— 时间片管理前言要点回顾基本概念CPU时间片分析 KeUpdateRunTime分析 KiDispatchInterrupt备用线程总结前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海东老师牛逼!要点回顾在上一篇中,学习了线程切换的三种方式,其中一种是时钟中断时钟中断最终会导致线程切换,但要注意不是...

2019-12-06 15:04:12 1424

原创 Windows进程与线程学习笔记(六)—— 线程切换

Windows进程与线程学习笔记(六)—— 线程切换前言主动切换时钟中断异常处理前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海东老师牛逼!主动切换Windows中绝大部分API都调用了SwapContext函数,也就是说,当线程只要调用了API,教室导致线程切换线程切换时会比较是否属于同一个进程,如果不是,切换Cr3,Cr3换了,进程也就...

2019-12-06 14:02:49 1119

原创 NCTF2019 -- PWN部分writeup

easy_rop链接:https://pan.baidu.com/s/1ohXfpbiIb3jjHpYtcuS9xA提取码:lz3e文件防护反汇编调试的时候发现main函数的rbp居然是pie,而返回地址下面第四行是main函数自己的头部指针已知条件存在栈溢出,大小为4个栈单元开启了canary保护,可以用’+'号绕过main函数的 rbp 为 pie(基址)main函...

2019-11-27 14:27:45 1239

原创 pwn学习总结(三) —— 栈溢出经典题型整理

pwn学习总结(五) —— 经典题目整理一1. 栈溢出入门2. 字符串截取+缓冲区执行3. GOT泄露4. libc泄露5. 使用DynELF实现远程libc泄露1. 栈溢出入门平台:jarvisoj题目:level0靶机:nc pwn2.jarvisoj.com 9881查看程序防护:查看反汇编:exp:from pwn import *import pwnr = ...

2019-11-19 20:04:26 2498

原创 pwn学习总结(二) —— 基础知识(持续更新)

pwn学习总结(四) —— 基础知识(持续更新)PLT表&GOT表PLT表&GOT表PLT表:指向GOT表,作用是动态加载函数地址GOT表:位于数据段,函数被调用时,成员为函数在内存中的实际地址...

2019-11-19 13:19:50 930

原创 pwn学习总结(一) —— 常用命令

pwn学习笔记(一)介绍介绍

2019-11-18 17:45:15 3062

原创 Windows进程与线程学习笔记(五)—— 模拟线程切换

Windows进程与线程学习笔记(五)—— 模拟线程切换前言代码分析前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海东老师牛逼!代码分析线程结构体(仿ETHREAD):typedef struct{ char *name; // 线程名 int Flags; // 线程状态 int SleepMilli...

2019-11-18 13:23:04 1326

原创 Windows进程与线程学习笔记(四)—— 等待链表&调度链表

Windows进程与线程学习笔记(四)—— 等待链表&调度链表前言要点回顾33个链表等待链表实验:分析等待链表中的线程所属的进程第一步:查看所属线程结构体:第二步:查看所属进程结构体调度链表前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海东老师牛逼!要点回顾进程结构体EPROCESS(0x50和0x190)是2个链表,里面圈着当前进程...

2019-11-15 08:41:44 2081 9

原创 Windows进程与线程学习笔记(三)—— KPCR

Windows进程与线程学习笔记(三)—— KPCR前言KPCR+0x000 NtTib : _NT_TIB+0x120 PrcbData : _KPRCB前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海东老师牛逼!KPCR描述:CPU控制区(Processor Control Region)当线程进入...

2019-11-12 14:29:50 1164

原创 Windows进程与线程学习笔记(二)—— 线程结构体

Windows进程与线程学习笔记(二)—— 线程结构体前言线程结构体ETHREAD+0x000 Tcb : _KTHREAD练习前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海东老师牛逼!线程结构体ETHREAD描述:每个windows线程在0环都有一个对应的结构体:ETHREAD这个结构体包含了线程所有重要的...

2019-11-12 14:29:28 1123

原创 Windows进程与线程学习笔记(一)—— 进程结构体

Windows进程与线程学习笔记(一)—— 进程结构体&线程结构体前言进程结构体前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海东老师牛逼!进程结构体...

2019-11-12 14:28:48 1751 4

原创 Windows系统调用学习笔记(四)—— 系统服务表&SSDT

Windows系统调用学习笔记(四)—— 系统服务表前言要点回顾系统服务表实验:分析 KiSystemService 与 KiFastCallEntry 共同代码前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海东老师牛逼!要点回顾API进入0环后调用的函数:中断门 – KiSystemService快速调用 – KiFastCallEnt...

2019-11-11 09:22:35 2727 10

原创 Windows系统调用学习笔记(三)—— 保存现场

Windows系统调用学习笔记(三)—— 保存现场前言要点回顾API进入0环后调用的函数:基本概念Trap Frame结构线程相关的结构体ETHREADKTHREADCPU相关的结构体KPCR_NT_TIBKPRCB前言一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com二、海东老师牛逼!要点回顾API进入0环后调用的函数:中断门 – KiSystemSe...

2019-11-09 18:56:26 2129 2

原创 Windows系统调用学习笔记(二)—— 3环进0环

Windows系统调用学习笔记(二)—— 3环进0环前言要点回顾基本概念_KUSER_SHARED_DATA0x7FFE0300实验:判断CPU是否支持快速调用第一步:修改EAX=1第二步:将当前汇编指令修改为cpuid第三步:清空ECX与EDX第四步:执行cpuid,观察结果第五步:观察EDX的SEP位(第11位)3环进0环基本步骤中断门进0环分析 KiIntSystemCall分析 INT 0...

2019-10-30 21:03:03 2563 5

空空如也

空空如也

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

TA关注的人

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