Windows编程 | Windows原理
文章平均质量分 94
meiweiboboji
这个作者很懒,什么都没留下…
展开
-
ROP技术初识
1、ROP的全称为Return-oriented programming(返回导向编程),这是一种高级的内存攻击技术可以用来绕过现代操作系统的各种通用防御(比如内存不可执行和代码签名等)。待续..参考:https://www.anquanke.com/post/id/85619https://bbs.pediy.com/thread-221041.htmhttps://bbs.pediy.com/thread-123602.htm...原创 2020-07-05 15:14:38 · 722 阅读 · 0 评论 -
根据函数地址调用 DLL 中的无名函数
#include <iostream>#include <windows.h>#include <string>#include <shlwapi.h>#pragma comment(lib, "shlwapi.lib")#include <fstream>using namespace std;typedef char(*pDecrypt)(LPVOID a, int** b); // 函数指针pDecrypt Decr.原创 2020-06-09 13:59:06 · 476 阅读 · 0 评论 -
OD 附加隐藏进程
命令行窗口 od.exe -p PID ,PID 通过 PC hunter 等工具可以查看原创 2020-05-05 15:06:47 · 2254 阅读 · 0 评论 -
反调试检测函数是否被下断点,检测 CC 断点
以简单的 MessageBoxA 来举例: FARPORC Uaddr; BYTE Mark = 0; (FARPORC&)Uaddr = GetProcAddress( LoadLibrary("user32.dll"), "MessageBoxA"); Mark = *((BYTE*)Uaddr); if (Mark == 0xCC) { ...原创 2020-05-05 14:25:06 · 928 阅读 · 0 评论 -
C++编写守护进程
#include <iostream> #include <windows.h> #include <stdio.h> #include <tchar.h> using namespace std;int _tmain(int argc, TCHAR *argv[]){ STARTUPINFO si; // 打印某个对象的类型...原创 2020-04-03 14:37:47 · 934 阅读 · 0 评论 -
根据函数名调用 DLL函数的方法
#include <iostream>#include <windows.h>#include <string>using namespace std;int main(){ int a,b; cout<<"请输入一个整数a="; cin>>a; cout<<endl; c...原创 2020-03-20 11:57:46 · 383 阅读 · 0 评论 -
【漏洞分析】关于 OLE 漏洞的简单总结
OLE 全称是 对象链接和嵌入,OLE 漏洞的产生一般也来自 链接对象 和 嵌入对象 两个方面,谈 OLE 漏洞可以从 OLE文档的加载过程开始讲:比如你打开一个 OLE文档,那么其加载过程分为两步, ① 初始化 OLE 对象(包括两个攻击面) ② 执行 Verb 动作(包括一个攻击面)两个步骤中共包括了三个攻击面(如上三个步骤都可以被攻击):...原创 2020-01-17 14:17:42 · 1318 阅读 · 0 评论 -
初识 ASLR
最近在学习 OLE 相关漏洞的时候看到了这个名词,OLE漏洞所能导致的其中一种后果就是可以加载任何未开启 ASLR 的 DLL ,因此有必要学习一下 ASLR 究竟是个什么鬼。一、ASLR(Address space layout randomization)ASLR 其实是一种针对缓冲区溢出的安全保护技术,通过对 堆、栈、共享库映射 等线性内存区域的随机化布局,增加攻击者...原创 2020-01-17 10:55:02 · 568 阅读 · 0 评论 -
Adobe flash player ActiveX、NPAPI、PPAPI 的区别
在下载 Flash 的时候会看到 Flash有如下三个版本,有啥区别呢,这三个都是用于浏览器的控件,但是是针对不同内核的浏览器使用的控件。1、首先说 Adobe flash player ActiveX,这个基本上是最常见的一个控件了,如下在 IE中查看方法,ActiveX控件是用于IE内核浏览器,用于视频播放,还有游戏客户端里面也有ActiveX选项。比如:360浏览器,因为...原创 2020-01-14 10:51:18 · 21484 阅读 · 1 评论 -
office 复合文档数据结构解析“初探”
一、OLE(Object Linking and Embedding) 文件二进制结构Office 文档(如:.doc、.ppt、.xls等)很多是复合文档(OLE文件),所有文件数据都是存储在一个或多个流中。每个流都有一个相似的数据结构,用于存储元数据的数据结构。这些元数据有用户和系统的信息、文件属性、格式信息、文本内容、媒体内容。宏代码信息也是以这种方式存储在复合文档中的。为了在......原创 2020-01-08 13:00:01 · 9060 阅读 · 3 评论 -
通过 PEB 隐藏导入表
有时候分析样本查看不到其中的导入表,可是没有导入表如何调用系统函数呢?这有可能是通过TEB、PEB动态获取,达到隐藏的目的。主要原理是通过FS:[0x30]所指向的PEB结构体入手,得到ntdll.dll或kernel32.dll的基址。如下新建一个最简单的控制台程序,release编译。可以看到VC.dll、KERNEL32.dll和其他一些系统函数,其中VC和系统函数可以去掉。...原创 2018-04-16 20:50:08 · 1072 阅读 · 0 评论 -
遍历PE文件基本信息
遍历导入表和导出表见另一篇文章运行效果如下:代码如下,获取的是主要信息:#include <stdio.h>#include <windows.h>#pragma warning(disable : 4996)IMAGE_DOS_HEADER DosHeader; PIMAGE_DOS_HEADER pDosHeader;IMAG...原创 2019-12-07 17:19:31 · 456 阅读 · 0 评论 -
Windows反调试技术
病毒会通过各种方法获取当前运行的进程状态,看病毒进程是否处于被调试状态,如果处在被调试状态,则执行破坏模块或者执行其他的反调试逻辑。一、利用WindowsAPI检测调试器1、IsDebuggerPresentIsDebuggerPresent查询进程环境块(PEB)中的IsDebugged标志。如果进程没有运行在调试器环境中,函数返回0;如果调试附加了进程,函数返回一个非零值。参考反...原创 2018-04-16 20:19:12 · 1212 阅读 · 0 评论 -
DLL注入_远程线程注入
什么是线程注入?线程注入,是通过开启远程线程的方式,将DLL加载到目标宿主进程中的常用方式。什么是动态链接库?首先Windows中链接库分为两种:动态链接库DLL、静态链接库LIB。① 静态链接库:在运行的时候就直接把代码全部加载到程序中,调用方式比如:#prama comment (lib,"Psapi.lib")② 动态链接库:在需要的时候加载,加载方式为...原创 2019-08-23 18:50:22 · 3457 阅读 · 5 评论 -
DLL注入的8种姿势
目录1、远程线程注入2、APC注入3、注册表注入4、ComRes注入5、劫持进程创建注入6、输入法注入7、消息钩子注入8、依赖可信任进程注入一、DLL注入——远程线程注入https://blog.csdn.net/Cody_Ren/article/details/100041660二、DLL注入——APC注入APC注入...原创 2019-08-24 16:44:38 · 13455 阅读 · 0 评论 -
C++ 提示 C4996 编译错误
在运行程序时,可能会出现如下图提示:两种解决方法:在出现报错的cpp文件的文件头加上 #pragma warning(disable : 4996) (但是注意:该语句只对当前文件生效,并非对整个工程)项目——>属性——>配置属性——>C/C++——>预处理器,在预处理器定义中加上 _CRT_SECURE_NO_WARNINGS,多个属性间以英文状态下的分号分隔,如下图 : (注意:该项设原创 2017-10-10 19:14:40 · 1722 阅读 · 1 评论 -
C语言遍历导入表导出表
通过C语言遍历PE文件的导入表和导出表原创 2018-07-06 11:37:27 · 2154 阅读 · 0 评论 -
IAT导入函数地址表 | IT导入表
之前对 IAT 的理解一直比较模糊,现在通过一个简单脱壳来梳理一下。一、场景用到的两个素材如下,一个没壳,一个有UPX壳。首先在Crackme中查看MessageBoxA函数的入口地址,不同系统不同版本可能地址不一样,这个程序在我电脑上运行正常,可能在别的电脑上就会出错,为了解决这个兼容问题,IAT(导入函数地址表)就诞生了。二、栗子在OD中右键查看所有模块间...原创 2019-10-18 17:30:34 · 2009 阅读 · 0 评论