- 博客(59)
- 资源 (7)
- 收藏
- 关注
原创 栈调试分析
栈分析:0: kd> kv 00 98803784 99d60f41 88e0fe00 98803814 98803810 DoubleCBFilter!PfpGetFullPathPreCreate (FPO: [Non-Fpo]) (CONV: stdcall)01 98803890 99d61303 00000000 86f1d020 88e0fe00 Dou
2017-11-01 17:04:05 603
转载 对于ESP、EBP寄存器的理解
转载地址:http://blog.csdn.net/yeruby/article/details/39780943esp是栈指针,是cpu机制决定的,push、pop指令会自动调整esp的值;ebp只是存取某时刻的esp,这个时刻就是进入一个函数内后,cpu会将esp的值赋给ebp,此时就可以通过ebp对栈进行操作,比如获取函数参数,局部变量等,实际上使用esp也可以;
2017-10-30 15:34:10 5284 1
原创 MacOS内核扩展驱动开发
1. kext 10.11之后都要签名才能安装, 开发时候,可以安装VMWare, 然后真机,command+R进入系统恢复,选择实用工具,输入csrutil disable, 关闭签名验证,就可以sudo kextload test.kext加载了。2. 新建工程,注意要添加一个libkern的版本sudo kextutil *.kext ----看有没有问题sudo chow
2017-10-25 14:32:55 4473 2
原创 SwapBuffer驱动进阶(一)
之前通过阅读swapbuffer的read的部分代码,基本上弄明白了缓存交换的原理。 那么我们怎么做到文件的透明加解密,直接使用其缓存交换的方式来实现呢,目前参考了Antinvader, 有一个步骤是肯定要做的,那就是在Create的Post中,添加文件流的上下文,这样才能知道你打开的文件,是不是在read中确认是你需要处理的问题,因为在Read中的FileName是不准确的,例
2017-10-25 14:31:30 888
原创 SwapBuffer驱动进阶(二)
在前面的SwapBuffer驱动进阶(一)中我们添加了一个Create的回调,那么如何让后面的PreRead识别出相同的文件,采用的方法是添加文件流的上下文。首先我们设计一个数据结构,也就是文件流的上下文,主要是需要保存什么文件信息://文件的上下文信息typedef struct _FILE_STREAM_CONTEXT{UCHAR ucIsE
2017-10-25 14:30:59 1207
原创 SwapBuffer分析
将原先自己的博客迁移!介绍自己开辟一块缓存,将文件进行缓存交换,后续都是操作该缓存,例如加密解密等,等待操作完成后,再将缓存交换回去。(https://docs.microsoft.com/zh-cn/windows-hardware/drivers/ifs/file-system-minifilter-drivers) 修改示例代码的INF文件,将相关的swap
2017-10-25 14:28:55 3907
原创 windows虚拟桌面
https://github.com/jbouhier/VNC ----一个开源的Client和Server, C写dehttp://jingyan.baidu.com/article/92255446501628851648f43c.html -----了解SV和VDIhttp://blog.csdn.net/chenyujing1234/article/details/814
2017-10-25 14:26:30 276
原创 Docker容器介绍资料
http://www.linuxidc.com/Linux/2016-07/133506.htm ---Docker介绍http://blog.csdn.net/gobitan/article/details/51108558 ---windowsDocker使用https://www.docker.com/docker-windows ---官网的docker容器
2017-10-25 14:24:51 179
原创 u_boot添加命令(NOR Flash中uboot的烧写代码)
关于命令的几个文件:include /command.hcommon/command.cinclude/cmd_confdefs.hcommon/cmd_*.c 先看一下添加命令的宏:U_BOOT_CMD定义在include/command.h中#define U_BOOT_CMD(name,maxargs,rep,cmd,usage,help) \cmd
2017-10-25 14:23:50 1677
原创 U-boot(NOR Flash)
163博客迁移1. 顶层目录下的Makefile按照配置顺序:davinci_config : unconfig @./mkconfig $(@:_config=) arm arm926ejs davinci执行配置命令: make davinci_config通过./mkconfig脚本会生成incl
2017-10-25 14:21:13 751
转载 Window驱动的同步机制
转载请标明是引用于 http://blog.csdn.net/chenyujing1234 欢迎大家拍砖! 参考书籍:>1、中断请求级在Windows的时候,设计者将中断请求分别划分为软件中断和硬件中断,并将这些中断都映射成不同级别的中断请求级(IRQL)。同步处理机制很大程序上依赖于中断请求级,本节对中断请求级做介绍。1、1 中断请求(I
2017-10-25 14:15:15 1431
原创 ARM MIPS(一)
概念CPU : 利用多个专用的逻辑模块,构造成一个专用的数据处理结构, 利用指令进行数据的存放,计算,取出等动作,是一个复杂的数据逻辑处理模块, 体系主要有RISC和CISC.RISC: 精简指令设置的计算机体系,这个指的是将指令进行精巧而有效的规定, 该体系指的是CPU的结构,是的使用该CPU更容易理解和微代码的实现!CISC: 复杂指令设置的计算机体系,这个更多的是x86的Int
2017-10-24 10:38:02 418
原创 MX27汇编简介
Linux 是一个运行在保护模式下的 32 位操作系统,采用 flat memory 模式,目前最常用到的是 ELF 格式的二进制代码。一个 ELF 格式的可执行程序通常划分为如下几个部分:.text、.data 和 .bss,其中 .text 是只读的代码区,.data 是可读可写的数据区,而 .bss 则是可读可写且没有初始化的数据区。代码区和数据区在 ELF 中统称为 section,根据实
2017-10-24 10:37:04 254
原创 ARM汇编简介
163博客迁移!简介ARM是一家公司,该公司不生成芯片,也不销售芯片,只出售芯片技术授权!因此ARM只是一种技术,ARM技术无处不在! 本质上来说ARM具有RISC的特点:大量的存储器、通过load/store的体系结构在内存和寄存器之间传递数据、寻址方式简单、采用固定长度的指令格式....我是从51过渡而来的,写过51汇编的都知道51寄存器的相关设置,不过ARM更加多,寄存器更丰
2017-10-24 10:35:59 536
原创 sfilter文件驱动(二)--文件的关联
前面说了关于sFilter的设备的挂载,主要是针对DeviceObject, 通过将驱动创建多个过滤设备,挂载到系统的卷设备上, 系统就会将所有到该卷的IRP操作都重定向到我们的驱动派遣函数中 接着,我们这里要分析关于针对文件的操作了,经过几天的研究,发现了几个有趣的地方,首先了解下大致的流程。IRP_MJ_CREATE: 创建文件例程首先,我们操作文件的时候,都要先打开
2017-10-24 10:33:36 428
原创 sfilter开源驱动分析(一)--文件过滤的基本步骤
NT的I/O管理器支持分层的驱动程序模式。 当应用层的CreateFile() (R3层) --> || NtCreateFile() [I/O管理器在这一层,ntdll.dll] -->||内核驱动层(R0层) ,这里讨论的主要是针对最后的内核驱动层的处理。 当每个IRP被处理的时候,它会经过驱动层中的各个驱动程序,直到最终被某个驱动程序调用IoCo
2017-10-24 10:32:08 2254
原创 Windows虚拟桌面资料
https://github.com/jbouhier/VNC ----一个开源的Client和Server, C写dehttp://jingyan.baidu.com/article/92255446501628851648f43c.html -----了解SV和VDIhttp://blog.csdn.net/chenyujing1234/article/details/814
2017-10-24 10:30:36 322
原创 Window10驱动简单示例(一)--文件打开读取
在驱动,进行一次简单的读文件的操作。#include #define TestFileNamePath L"\\??\\c:\\1111\\111.txt.csx"NTSTATUSFileTest_Read(HANDLE hFile){NTSTATUS status = STATUS_SUCCESS;LARGE_INTEGER
2017-10-24 10:28:25 997
原创 Windows驱动安装info和调试
http://blog.csdn.net/blog_index/article/details/6012054 ----参考http://blog.csdn.net/coc_k/article/details/52034927http://blog.csdn.net/eqera/article/details/8237991 ---windbg下中断(CTRL-BREA
2017-10-24 10:21:04 1112
原创 WinDbg调试手册
http://blog.csdn.net/wangningyu/article/details/6748138 ----程序异常收集代码https://msdn.microsoft.com/en-us/library/cc704588.aspx ---所有内核错误码对照-----------------------------------------!Analyze
2017-10-24 10:19:59 296
转载 MDL内存映射
http://blog.csdn.net/cosmoslife/article/details/50395985 ---初步认识MDL
2017-10-23 11:40:07 2540
原创 Windows驱动必备的API
163博客迁移!(一)监控注册表信息(CmRegisterCallback()):typedef struct _CAPTURE_REGISTRY_MANAGER{PDEVICE_OBJECT deviceObject;BOOLEAN bReady;LARGE_INTEGER registryCallbackCookie;LIST_ENTRY lQueuedRegi
2017-10-23 11:38:57 1761
转载 Windows Dump异常处理
http://www.cnblogs.com/lzjsky/archive/2010/12/01/1893660.html ----友好的Dump生成和告警http://blog.163.com/jk_new/blog/getBlog.do?fromString=bloglist ---深入理解SHE异常机制
2017-10-23 11:38:10 557
转载 AD RMS文档管理
http://reinember.blog.51cto.com/2919431/721127 ---Server 2008 R2 AD RMS完整部署
2017-10-23 11:37:20 348
原创 COM组件学习资料
http://www.cnblogs.com/dwjaissk/archive/2012/12/19/2824672.html ----《COM技术内幕》https://wenku.baidu.com/view/af9171d7360cba1aa811dae7.html ---《Win32 COM编程入门》https://wenku.baidu.com/v
2017-10-23 11:36:42 1435
原创 VSTO入门 (一) 建立测试工程
163博客迁移!首先如果没有安装VSTO, 需要打开控制面板,找到VS2015之类的,更改,然后安装Office开发安装好之后,会有Visual C# -->office/sharePoint --->Word 2013 VSTO 外接程序(这个是作用所有的主机上的word文档), (另外还有, -->Word 2013 VSTO的工作薄和模板,都会创建出一个doc的文档,VSTO
2017-10-23 11:35:43 1032
原创 COM初学 (一) 理论入门
163博客迁移!面向对象:整个世界是由不同的对象组成的,花、草、人、动物等等,所有的这些对象是有其特定的固有的属性,例如:人有很多的行为属性(走、跑、跳..)、心里属性(哭、笑...),我们将该对象的这种固有的、稳定的特征找出来,归纳为一系列的方法,例如就是前面提到的人的行为方法:描述怎么走的方法、描述怎么跑的方法、描述怎么跳的方法等等,这种思想,我们就称之为面向对象。
2017-10-23 11:34:23 1398
原创 COM初学(二) 编写和使用一个简单的COM
网上教程很多,COM开发一般都是直接使用ALT的模板来开发COM,这里我们因为是初学入门,所以我们通过自己来写一个简单的COM,学习COM是个什么东西,实际上我的理解是,COM就是类似DLL,甚至是EXE,只是说通过微软的COM规范来进行调用而已。1. 打开VS2015, 直接Win32-->Win32项目-->DLL (空项目即可),点击完成, 这样创建出来啥都没有。2. 添加源
2017-10-23 11:33:37 1700 1
原创 COM初学(三) ALT组件简单入门
创建一个ATL的COM组件,可以参考后面的资料。下面这个是使用的代码, 直接创建console的工程, 并且包含ATL头文件,然后点击完成,即可。/*********************代码****************/#include "stdafx.h"#include "MyATL_i.h"//----组件生成的头文件,可以拷贝过来#include "My
2017-10-23 11:32:34 1569 1
原创 framebuffer编程
博客迁移,163真垃圾解决问题:编程时候发现,如果使用/dev/fb0来编写应用程序图片导入,当800*480大图片整屏刷新的时候,会发现图像不是一下子就出现的,而像是一卡一卡的刷新出来,如何解决该问题?使用:fbfd = open("/dev/fb0", O_RDWR);//打开视频驱动显示模块,以读写的方式ioctl(fbfd, FBIOGET_FSCREENINFO,
2017-10-23 11:28:45 587
原创 DoubleFilter调试记录
问题1: 驱动加载后,无法卸载答: 检查DriverObject->DriverUnload = DriverUnload; --是否实现
2017-10-20 10:58:43 415
原创 WFP 原理
(WIN7 32位开发驱动: X86的纯净版的KEY:HTXFV-FH8YX-VCY69-JJGBK-7R6XP)数据流处理: (入站和出站都是一样)1. 一个包进入到了协议栈2. 协议栈找到并发现一个shim(垫片),应该就是很多的sublayer注册的地方。3. 该shim(垫片)调用该特定的sublayer层注册的Classfication分类进行处理。
2017-10-19 14:25:06 6752
原创 WFP过滤开发(一)
如果要支持win8/Win10的驱动开发,建议搭建VS2015+WDK10的开发环境,搭建的时候注意SDK和WDK的版本一定要匹配,否则会出现找不到头文件的各种错误。 https://docs.microsoft.com/zh-cn/windows-hardware/drivers/network/using-bind-or-connect-redirection(TCP重定向)
2017-10-19 14:22:55 4826
原创 WFP 驱动环境搭建(WIN10)和编译
网易博客迁移,不知道为什么封禁了帐号,先迁移部分博客过来到csdn(吐槽:网易莫名其妙的封禁了博客帐号,也不告知是什么原因! 所以这种云上的或者外部网站的,真的不好,哪天你的大量心血就没了!:( , 这个对用户知识太不尊重了!CSDN最好能够提供设置博客分享权限的功能,因为有时候自己工作的一些笔记会记录,但是由于设置商业机密,这样就不能放在博客上进行分享,此时设置下博客权限,至少对一般人是
2017-10-19 14:13:46 4887 1
原创 MakeFile 命令参数---字符串处理函数(转)
Makefile---字符串处理函数^_^ Makefile中的字符串处理函数 $(subst ;,;,;) 名称:字符串替换函数——subst。 功能:把字串;中的;字符串替换成;。 返回:函数返回被替换过后的字符串。 示例: $(subst ee,EE,feet on the
2008-10-24 10:50:00 1511
原创 linux
内核编译的步骤:make mrpropermake menuconfigmake make installmake bzImagemake modulesmake modules_installhttp://linux.chinaitlab.com/kernel/742158.html模块存放位置:/lib/modules/linux....可以用命令lsmod查看模块,也可以查看/proc/mo
2008-04-07 17:30:00 463
原创 (CVS建立)ubuntu subversion后续建立和使用
完整搭建,建议先查看论坛:http://www.subversion.org.cn/搭建了2天的ubuntu subversion以及apache2 没搞定!因为时间问题,先写一个CVS的吧,svn的帖子是很多,可是有许多的问题!有一些问题卡住了,看来是不是我用的ubuntu版本更新了的问题,还是有待研究啊!局域网CVS服务器的搭建和管理方法:环境说明:我用了redhat 9,完全安装的那种,CV
2008-03-21 10:20:00 1073
原创 虚拟机Ubuntu创建交叉编译环境(二)
我用的是Vmware-workstation 6.0+注册破解,升级了!哈!配置512内存,8.0G以上,网络:选择桥接Bridged虚拟机的安装不需要说了吧!下载xubuntu-7.10-desktop-i386.iso,选择该光盘启动。启动àF2(语言)àF3(键盘)à回车,进入光盘的ubuntu模式,进入后选择“安装”****注:有可能安装的时候会有下不去的时候,一般都是内存
2008-03-19 16:09:00 1351
华为AI防火墙技术白皮书.pdf
2020-08-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人