11 2018 档案

摘要:通过注入DLL后使用热补丁钩取API 0x00 对比修改API的前五个字节钩取API 对前一种方法钩取API的流程梳理如下: 所以每次进入新函数后就要反复进行挂钩脱钩,这是一个极度消耗cpu的工作,特别是对于要整个系统的进程都要注入dll时就更要命了。 现在有一种更好的方式来弥补这种方法的不足,这就 阅读全文
posted @ 2018-11-26 15:22 2f28 阅读(681) 评论(0) 推荐(0)
摘要:通过注入DLL修改API代码实现钩取(一) Ox00 大致思路 本实验目标:注入指定dll后隐藏我们的目标进程。 下面两图表示了API钩取之前与API被钩取之后程序的执行过程: 其实明白之后发现原理并不是很难,无非就是先获取到API函数的地址,然后再把原先API的首地址改为JMP 指令跳往指定函数, 阅读全文
posted @ 2018-11-24 20:54 2f28 阅读(1272) 评论(0) 推荐(0)
摘要:动态链接库有2种连接方式,一种是通过库直接加入(又叫隐式加载或载入时加载),一种是在运行时加入。后者很好理解,比如LoadLibrary(),GetProcAddress()获取想要引入的函数,使用完后,就FreeLibrary()。 reeLibrary是释放该动态链接库。而由于动态链接库是多进程 阅读全文
posted @ 2018-11-24 17:34 2f28 阅读(837) 评论(0) 推荐(0)
摘要:Windows在一个Win32程序的地址空间周围筑了一道墙。通常,一个程序的地址空间中的数据是私有的,对别的程序而言是不可见的。但是执行多个执行实体表示了程序的所有执行实体之间共享数据是毫无问题的。当您在一个窗口中增加或者删除一个字符串时,这种改变将立即反映在其它的窗口中。 在全部例程之间,STRL 阅读全文
posted @ 2018-11-23 10:35 2f28 阅读(980) 评论(0) 推荐(0)
摘要:通过调试对WriteFile()API的钩取 0x00 目标与思路 目标:钩取指定的notepad.exe进程writeFile()API函数,对notepad.exe进程的写入的字符保存时保存为大写形式 思路: 1)使用DebugActiveProcess函数使调试器附加到指定进程中。 2)使用W 阅读全文
posted @ 2018-11-20 18:57 2f28 阅读(384) 评论(0) 推荐(0)
摘要:代码注入——汇编编写注代码 0x00 思路 在准备些汇编代码之前,我们先要理清楚整个调用过程的思路,以及过程中的参数传递过程。我的的目标是在指定的目标程序中注入一个messagebox线程,首先要调用messageBox就需要用到LoadLibrary装入user32库函数。我们还需要Getproc 阅读全文
posted @ 2018-11-18 17:39 2f28 阅读(1976) 评论(0) 推荐(0)
摘要:代码注入之——c++代码注入 0x00 代码注入和DLL注入的区别 0x01 通过c++编写注入代码 1)编写注入程序 代码如下: // CodeInjection.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。 // #include "pch.h" #include < 阅读全文
posted @ 2018-11-17 16:33 2f28 阅读(4019) 评论(1) 推荐(1)
摘要:参考自:https://msdn.microsoft.com/zh-cn/library/253b8k2c.aspx 通过隐式和显式链接,Windows 首先搜索“已知 DLL”,如 Kernel32.dll 和 User32.dll。 Windows 然后按下列顺序搜索 DLL: 当前进程的可执行 阅读全文
posted @ 2018-11-17 13:56 2f28 阅读(734) 评论(0) 推荐(0)
摘要:0x00 函数原型 HMODULE LoadLibraryA( LPCTSTR lpLibFileName//模块的的的名字 ) FARPROC GetProcAddress( HMODULE hModule, // DLL模块句柄 LPCSTR lpProcName // 函数名 ); 0x01 阅读全文
posted @ 2018-11-17 13:54 2f28 阅读(6919) 评论(0) 推荐(0)
摘要:参考博客:https://blog.csdn.net/xiaominggunchuqu/article/details/72837760 阅读全文
posted @ 2018-11-17 11:58 2f28 阅读(252) 评论(0) 推荐(0)
摘要:参考博客:https://www.cnblogs.com/johngu/p/7877939.html 阅读全文
posted @ 2018-11-17 11:56 2f28 阅读(490) 评论(0) 推荐(0)
摘要:参考自:https://www.cnblogs.com/jisongxie/p/7892366.html 阅读全文
posted @ 2018-11-16 21:10 2f28 阅读(223) 评论(0) 推荐(0)
摘要:DLL注入之修改PE静态注入 0x00 前言 我们要注入的的力量功能是下载baidu首页数据。代码如下: #include "stdio.h" #include"stdio.h" #include "windows.h" #include "shlobj.h" #include "Wininet.h 阅读全文
posted @ 2018-11-16 16:28 2f28 阅读(2431) 评论(0) 推荐(0)
摘要:参考:https://blog.csdn.net/yockie/article/details/17029293 阅读全文
posted @ 2018-11-14 14:33 2f28 阅读(225) 评论(0) 推荐(0)
摘要:DLL注入之windows消息钩取 0x00 通过Windows消息的钩取 通过Windows消息钩取可以使用SetWindowsHookEx。该函数的原型如下: SetWindowsHookEx( __in int idHook, \\钩子类型 __in HOOKPROC lpfn, \\回调函数 阅读全文
posted @ 2018-11-13 19:07 2f28 阅读(1046) 评论(0) 推荐(0)
摘要:转自:https://blog.csdn.net/qq_29924041/article/details/74857469#commentBox 阅读全文
posted @ 2018-11-12 21:41 2f28 阅读(156) 评论(0) 推荐(0)
摘要:0x00 前言 对于上篇所讲的那个练习,PE文件属于运行时解压缩文件,而且文件包含校验和检验,如果直接修改代码可能得花点功夫了。对于这种情况我们可以使用内嵌补丁轻松解决。 由上图我们知道要进行运行内嵌补丁,先得找到外壳程序跳往OEP的关键跳转。上篇我们已经知道4018083处为跳往OEP的关键跳。 阅读全文
posted @ 2018-11-11 10:52 2f28 阅读(264) 评论(0) 推荐(0)
摘要:内嵌补丁练习(一) 0x00 前言 首先介绍以下运行时压缩或者运行解压文件,这类文件通常是代码在运行之前已经压缩过或者代码被加密过,在运行过程中在进行解压缩或者解密的PE文件。通常这样做的目的可能为了压缩文件体积或者加密代码保护代码安全。下图位运行时解压缩文件和普通压缩文件对比。 0x01 调试查看 阅读全文
posted @ 2018-11-10 21:53 2f28 阅读(322) 评论(0) 推荐(0)
摘要:0x00《逆向工程核心原理》 不得不说这本书真是很适合入门,而且讲的特别细致,纵使我已经看过了《加密与解密》但是看一章开始我发现我还是能获得很多东西,要入门这本书一定要看!!! 0x01 《加密与解密第三版》 本书是著名的看雪论坛的著作,也是很经典的一本书,我们图书馆居然第一版第二版,第三版都有,而 阅读全文
posted @ 2018-11-04 16:18 2f28 阅读(740) 评论(0) 推荐(0)
摘要:其中IP=IP+所读指令的字节数。 那么,所读指令的字节数应该怎么判断呢? 汇编指令长度与寻址方式有关,规律或原则如下: 一、没有操作数的指令,指令长度为1个字节 二、操作数只涉及寄存器的的指令,指令长度为2个字节 如:mov bx,ax 三、操作数涉及内存地址的指令,指令长度为3个字节 如:mov 阅读全文
posted @ 2018-11-04 11:50 2f28 阅读(3820) 评论(2) 推荐(1)