- 博客(42)
- 资源 (4)
- 收藏
- 关注
原创 微软轻量级系统监控工具sysmon内核实现原理
上文讲解了sysmon的ring3部分实现原理,本文则开始讲解ring0部分。Sysmon的ring0是一个minifilter类型的驱动,内部实现了进程信息、文件访问信息以及注册表访问信息的记录,下面开始具体讲解它的实现流程。 一、 驱动DriverEntry的初始化 从DriverEntry(PDRIVER_OBJECTDriverObject, UNICODE_ST...
2018-12-26 10:24:51
1241
原创 微软轻量级监控工具sysmon原理与实现
Sysmon是微软的一款轻量级的系统监控工具,被常常用来进行入侵检测分析,它通过系统服务和驱动程序实现记录进程创建、文件访问以及网络信息的记录,并把相关的信息写入并展示在windows的日志事件里。经常有安全人员使用这款工具去记录并分析系统进程的活动来识别恶意或者异常活动,下面开始讲解该软件的原理与实现。 下面开始上篇的讲解,ring3实现对网络数据记录以及对驱动返回的数据进行...
2018-12-26 10:23:12
7187
原创 如何实现自己的ollydbg调试器 (1) 界面的实现
在逆向时候我们需要一些工具,但是很多工具毕竟是别人写的,我们无法改变,一套好的工具就会事半功倍,如果我们自己实现一套自己的工具的话,那就更加完美了,读者如果有兴趣可以自己去实现一套全新的调试器。Windows程序的调试器有很多,比如windbg、ollydbg 等等,但是大多数搞逆向的人都喜欢使用ollydbg来动态调试程序,因为它的快捷键丰富,众多的插件,以及稳定的调试功能,但是还有一个
2017-11-20 08:54:23
1720
1
原创 一个钓鱼木马的分析(二)
这个木马隐蔽性很强,内存中不存在任何明文字符串,很难用内存搜索去搜索一些明显字符串,内存的数据都是加密存在需要时才解密,然后立即释放,不会长期驻留在内存,所有的内容计算校验使用的是hash值来对比查找,而且还是用双重加密,给分析人员增加了不小的难度, 上次讲到此木马在内存里有个加密的pe文件存在,接下来我们就来讲解这个从内存里扣出来的pe文件到底怎么工作的。
2017-08-07 09:18:55
1099
原创 一个邮件钓鱼木马的分析 (一)
已发表于本人专栏: http://www.freebuf.com/column/142406.html最近收到一个钓鱼木马邮件,内容形式如下: 邮件里有个链接,当点开链接后会下载一个doc文档,打开文档会发现有宏代码 经过一些列解密后悔执行shell执行宏命令,打印出这个信息出来后发现,原来执行了powershell命令 是从网
2017-07-31 09:18:40
15175
原创 Win7、win10下利用ETW Trace跟踪用户的文件读写信息
发表于freebuf : http://www.freebuf.com/column/138862.html Windows® 事件跟踪 (ETW) 是操作系统提供的一个高速通用的跟踪工具。ETW 使用内核中实现的缓冲和日志记录机制,提供对用户模式应用程序和内核模式设备驱动程序引发的事件的跟踪机制。自windows2000开始,各
2017-06-30 22:37:13
8884
2
原创 Windows资源监视器软件的原理
微软给我们提供了一些很好的程序,比如资源监视器,可以从这个软件里获取分析windows的自身的一些性能数据,比如CPU、内存、磁盘数据、文件读写、进程线程等,他具体怎么实现呢,今天这天文章就带你去获取其真实的原理。
2017-06-17 11:59:13
1370
原创 Win7、win8、win10下实现精准截获Explorer拷贝行为
已经发表于freebuf ( http://www.freebuf.com/column/134192.html)在企业数据安全中我通常需要监测用户的拷贝行为,特别像explorer这样的进程,方法很多比如文件过滤驱动监测文件的打开与读写,但是这样会有很多噪音产生,实现的不好的话也可能会造成用户在桌面操作感受不良好,比如卡,所以我们需要的是一种更精准地方法,下面我们就来分析
2017-05-22 16:43:08
2563
原创 细说Wannacry勒索软件所使用的木马技术
已经发表于freebuf: ( http://www.freebuf.com/column/134855.html)5月12日晚突然爆发的Wannacry勒索病毒给人们也给各大安全厂商一个措手不及,360追日团队也第一时间给出了完整的木马分析,结合我自己的逆向以及分析我们来细说Wanncry使用了哪些木马技术。 1. 资源释放文件这个技术最早始于root
2017-05-22 16:39:53
1855
原创 Wannacry之t.wnry核心库解密算法完全分析
已经发布于freebuf : http://www.freebuf.com/column/135103.html Wannacry机理很多安全厂商都已经分析透了,他的加密核心功能就在他释放的t.wrny这个文件里,这个文件实际上是个动态链接库,是被Wanncry通过他自己的RSA+AES加密存放的,Wannacry在释放的时候会先读取到内存,然后通过RSA还原AES的key密码,最后
2017-05-22 16:37:23
1121
原创 360极速浏览器和360chrome首页设置加密算法
freebuf 已经发布该文章(http://www.freebuf.com/articles/terminal/128902.html) 如今浏览器经常会面临被其他软件劫持主页的风险,浏览器该如何自保呢。今天给出360浏览器的主页设置算法一些分析。360浏览器设置主页大致有两次计算机器码:一次是磁盘id,一次是计算网卡mac地址。两种md5计算方法,两
2017-04-14 12:18:42
2489
原创 一次文件系统过滤驱动蓝屏的分析
在一次写文件过滤驱动的时候突然蓝屏,状况如下:堆栈如下:分析: 应用层在调用NtQueryAttributesFile 经过KiFastCallEntry 进入到内核的NtQueryAttributesFile,然后调用文件系统管理器去解析IopParseDevice解析的时候挂了,我们看汇编挂在了 mov eax,dword pre[eax+28
2016-12-02 11:18:07
1728
原创 如何分析解决COM接口IFileOperation的hook去支持vista、win7、win8、win10 x86 x64系统
怎么进行COM接口IFileOperation hook我就不讲了,下面这个链接有讲解,http://blog.youkuaiyun.com/wzsy/article/details/17665311 ;他的hook方法我实验了可用于win8、win10,包括x64位系统,但是他这个有个缺点是在获取源复制文件路径信息的时候,只适用于win7,不适用于win8、win10.上面那个文章用的是
2016-08-03 12:54:05
4187
2
原创 chrome配置文件校验初始化隐含参数的逆向
这篇文章接上一篇文章进一步升华:花了4个小时获得该信息的计算方式比如在 chrome目录下的\Chrome\User Data\Default目录下的Secure Preferences,需要设置"startup_urls":["http://www.baidu.com/"]改参数时,chrome会在该文件中生成"startup_urls":"651507D384340BD7A56E3D3D7
2015-08-17 17:55:47
3426
原创 chrome的配置文件加密校验的hash算法(逆向所得)
chrome的代码开源的,但是代码量有2g,懒得看,经过一个多星期的逆向获得了其加密校验配置文件的算法: 有四、五轮的 sha256非标准的加密算法,下面是我的逆向的代码调试与程序调试的对比第一轮:hash 第二轮:hash第三轮 hash第四轮:hash第五轮 也就是最后一轮:输出
2015-08-14 16:13:54
4915
2
原创 360安全浏览器和360chrome 首页设置加密算法(逆向所得)
(为了避免被360公司的法律问题,该不能写的很详细)360首页设置函数01D29F17 56 PUSH ESI01D29F18 53 PUSH EBX01D29F19 57 PUSH EDI01D29F1A E8 617AF2FF CALL chrome.0
2015-07-14 14:59:03
4277
原创 DxgkInitialize的原理分析
很久没写技术文章了,今天实在不想写代码就写一篇技术贴,DxgkInitialize是虚拟显卡驱动注册自己的ddi所用的到函数,做虚拟显卡的人很多只知道去调用却不知道他的原理是什么今天我们就分析下。首先我看下这个函数汇编代码 mov edi, edi.text:00016605 push ebp.tex
2015-07-14 14:57:01
2911
原创 windows内核 win7 和 xp下 hook过滤KiFastCallEntry的不同之处(远离360 hook)
我们先看下hook kiFastCallentry 点的汇编代码: winXp: FF05 38060000 inc dword ptr [638]80542656 8BF2 mov esi, edx80542658 8B5F 0C mov ebx, dword ptr [edi+C]8054265B 33C9 xor ecx,
2011-10-05 12:29:28
2102
原创 safeengine虚拟机licence破解手记
声明:请支持使用正版软件,尊重原作者的劳动成果,此文只做技术交流,如有他人利用,产生后果,不负任何责任。 Safengine是一个具有反调试、反附加、动态自效验等功能,同时提供了对代码的变形、乱序和虚拟化等功能的应用程序保护壳,是一款简单易用的软件保护工具,它改变您的软件执行流程,以达到阻碍自动分析,消耗破解时间、精力的目的。Safengine的代码分析引擎将在保护
2011-04-25 12:01:00
4418
原创 逆向分析破解一款会务管理软件
声明:请支持使用正版软件,尊重原作者的劳动成果,此文只做技术交流,如有他人利用,产生后果,不负任何责任。 最近破解一款会务管理软件,用PEid侦查外壳,发现是是穿山甲的 外壳, 但是还是无法显示出完整的信息出来可以发现 Upx0,UPX1的节段,说明,加了双层外壳,还有一层UPX的压缩壳,首先用OD打开这个软件
2011-04-06 16:11:00
3196
原创 一个外挂的简单分析
上周末突然有个外挂,逃过了反挂检测,竟然是全图外挂,通过IDA分析发现 一个virtualQuery函数, 于是在od中加载,算了一下该函数相对模块首地址的位置断下该函数,相对基址的偏移为0xB55E,于是断下 发现只要打勾,反复循环间隔500ms 都会走此函数,于是判断改地址是 外挂修改游戏的信息的函数 继续推测:通过windbg:来断下改地址,通
2011-03-22 12:07:00
1113
原创 madcHook的dll逆向简说
madchook的技术比较成熟和稳定,但是却被木马等程序利用,以至于被许多杀毒软件直接报木马,所以修改madchook内特有字符名称,可以逃脱杀毒软件报毒,与查杀,主要的特殊的字符窜是他的内存映射名称和他的文件名称,但是不能直接修改驱动文件名,否则dll文件无法加载驱动,所以本人经过多次的反复动态调试与逆向分析,发现dll中的特有字符串都被加密了,包括驱动的名称,分析发现加密的方式很简单,就是
2010-11-11 21:41:00
1475
原创 PGP透明加解密研究-----简要技术分析
技术分析⑴.主要派遣例程IRP_MJ_CREATE例程对应的函数: CFilterEngine::DispatchCreate(DEVICE_OBJECT *device, IRP *irp)如果是自己的设备访问则直接放过if(device ==CFilterControl::s_control) { irp->IoStatus.Status
2010-04-21 11:03:00
1622
原创 PGP透明加解密研究------代码结构与功能
代码结构与功能文件功能说明CFilterBase.Cpp基础功能库类例如GUID函数,hash函数,获得或者设置系统信息的函数等等;CFilterCallback.cpp应用层和驱动密码交互的回调函数类例如Request()驱动请求应用层获得密码或者随机数的回调函数,
2010-04-16 15:22:00
958
转载 被占用文件操作三法
【转载】【翻译】被占用文件操作三法转载自看雪论坛,有很高的参考价值。=======================标 题: 【翻译】被占用文件操作三法作 者: libradohko时 间: 2007-02-03,00:44链 接: http://bbs.pediy.com/showthread.php?threadid=39001被占用文件操作三法无疑我们中的很多人都会遇到需要读写被其它进程占
2009-10-27 09:22:00
886
1
转载 抹掉所有进程中自己的句柄(源代码)
抹掉所有进程中自己的句柄(源代码)来自www.debugman.com之前听过一个检测进程的想法,就是暴力枚举所有进程中的handle,查找其中类型为PROCESS的.此法也被炉子牛用于他的LzOpenProcess().下面我就写了一断代码来对抗这个方法,纯属小伎俩,牛牛们飘过~严格说,此段代码不算原创,是从某rootkit的bin中扒出来的,因此基本保留其原貌,经我修改测试,主要函数如
2009-10-27 09:17:00
738
转载 明明白白自旋锁
明明白白自旋锁来自 www.debugman.com 自某日看了iceboy和MJ0011关于多处理器同步的一些讨论,才发现原来我对自旋锁的理解也有一定错误,还好现在明白了~~为了加深理解,就深入分析了一下自旋锁的实现,一篇小小的自旋锁分析文章,献给大家。写得比较碎,欢迎各位大牛小牛指出错误~一、自旋锁是什么?先进行下简单科普,自旋锁是一种轻量级的多处理器间的同步机制。因此,自旋锁对于单处
2009-10-27 09:14:00
712
转载 删除被锁定的文件(类似Unlocker的方法)
个人论坛:http://www.devhk007.com 删除被锁定的文件(类似Unlocker的方法)Deleting Locked Files Zoltan CsizmadiaFor more information, check out the CodeGuru article entitled, Examine Information on Windows
2009-10-27 09:09:00
1074
原创 vc++ post http实现文件上传
bool CTCSDlg::UpFileOfHttp(TCHAR* strSourceName,TCHAR* strDestName,TCHAR* _strFtpSite){ TCHAR* pName=new TCHAR[256]; wsprintf(pName,L"%s?filename=%s",m_strFtpSite,strDestName); AfxOutInfoToFile("==
2008-08-20 11:45:00
6472
1
转载 查看IDT的驱动
#include #include #if DBG#define dprintf DbgPrint#else#define dprintf#endif#define kprintf DbgPrint#define NT_DEVICE_NAME L"//Device//GDTDump"#define DOS_DEVICE_NAME L"//DosDevices//
2008-07-23 15:48:00
957
1
转载 网络游戏外挂制作之我所见(系列文档1-5)
本技术文档和开发工具均来自Internet,仅交流学习技术使用,请在观看24小时之后,自行忘记内容,如果您喜欢本贴,请支持正版游戏盗版外挂,或请回复顶之,谢谢。 ==================================================网络游戏外挂制作之我所见(1) 在几年前我看到别人玩网络游戏用上了外挂,做为程序员的我心里实在是不爽,想搞清楚这到底是怎么回事。就拿了一些
2008-01-02 14:36:00
1480
1
原创 vc++工作笔记1
1) 透明位图按钮在对话框上添加一个按钮,定义按钮的风格为BS_OWNERDRAW(自画风格),添加一个按钮类继承于CButton,重载虚函数virtual void DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct);这个函数的作用就是在改变按钮。可以变成ICON,也可以变成位图,要想改变按钮的背景还必须执行消息WM_ ERASEBKGND的
2007-10-12 18:06:00
683
原创 用vc++重写的文件扩展名批量修改工具(改进了一下)
重写的文件扩展名批量修改工具,会不断改进,比网上的其他所有版本都要好! 地址:http://download.youkuaiyun.com/source/233385
2007-08-22 22:30:00
1030
原创 vc制作不规则窗体
由于需要 最近做起了vc界面开发,首先做的是不规则窗体,不规则窗体可以实现你所想要的任何形状的窗体,下面我们就在制作不规则窗体。 首先建立一个MFC工程Test 2.准备两张位图,一张显示位图,另一个张是掩摸遮盖图片 3。在类中添加一个CBitmap m_bmp;的成员变量 4.添加一成员函数,它的的功能就是设置不规则窗体void CTest1::SetupR
2007-07-11 21:23:00
1498
原创 现代软件开发的感悟
自从b/s模式的开发流行以后,似乎应用级的程序员越来越多了,因为它毕竟比你学开发操作系统容易的多,成为专家也快的多,但本人认为,这样的专家只能称为冒冒专家, 他们并不能称为高手,高手的称为属于那些能把系统玩得底朝天,甚至能把系统随心所欲,的人.我们这里有一个java web开发搞了八年的人,在java 方面可以说他很牛,我一直都很鄙视java,而且更不喜欢web开发,有一次他看到我的移动硬盘里
2007-05-07 15:38:00
1128
4
转载 struts 实现文件上传与下载
struts 实现文件上传与下载 /******************************************************************************* * 文件名: FileUploadAction.j
2007-05-05 14:25:00
640
转载 在Linux下安装JDK及环境设置
我在magic linux 2.0上已经成功安装了jdk(jdk-1_5_0_02-linux-i586.rpm),过程很简单:1. 先从网上下载jdk(jdk-1_5_0_02-linux-i586.rpm) ,推荐SUN的官方网站www.sun.com,下载后放在/home目录中,当然其它地方也行。进入安装目录#cd /home#cp jdk-1_5_0_02-linux-i586.r
2007-05-04 21:24:00
738
The.Developers.Guide.to.Debugging.rar
2010-02-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人