一.Windows消息钩取:SetWindowsHookEx HHOOK SetWindowsHookEx( intidHook,// hook type 就是HOOK的消息种类,如WH_KEYBOARD,WH_MOUSE....见MSDN HOOKPROClpfn,// hook procedure 钩子过程,安装消息钩子时候,钩子过程一定要位于某个DLL内部 HINSTANCEhMod,// handle to application instance 钩子过程的DLL句柄(为NULL则是局部钩子) ...

阅读全文>>

0x01 项目说明 实现在内存中对dll的加载和卸载 0x02 软件展示 0x03 代码展示 // TestInjectProcess.cpp : Defines the entry point for the application. // #include "stdafx.h" #include "resource.h" #include <Windows.h> #include <Tlhelp32.h> #include <assert.h> #include &...

阅读全文>>

一、DLL注入 DLL的远程注入技术是目前Win32病毒广泛使用的一种技术。使用这种技术的病毒体通常位于一个DLL中,在系统启动的时候,一个EXE程序会将这个DLL加载至某些系统进程(如Explorer.exe)中运行。 这样一来,普通的进程管理器就很难发现这种病毒了,而且即使发现了也很难清除,因为只要病毒寄生的进程不终止运行,那么这个DLL就不会在内存中卸载, 用户也就无法在资源管理器中删除这个DLL文件,真可谓一箭双雕哉。记得2003年QQ尾巴病毒肆虐的时候,就已经有些尾巴病毒的变种在使用这种技术了。 到了2004年初,我曾经尝试着仿真了一个QQ尾巴病毒,但独是跳过了DL...

阅读全文>>

一、远程线程注入基本原理 远程线程注入——相信对Windows底层编程和系统安全熟悉的人并不陌生,其主要核心在于一个Windows API函数CreateRemoteThread,通过它可以在另外一个进程中注入一个线程并执行。在提供便利的同时,正是因为如此,使得系统内部出现了安全隐患。常用的注入手段有两种:一种是远程的dll的注入,另一种是远程代码的注入。后者相对起来更加隐蔽,也更难被杀软检测。本文具体实现这两种操作,在介绍相关API使用的同时,也会解决由此引发的一些问题。 顾名思义,远程线程注入就是在非本地进程中创建一个新的线程。相比而言,本地创建线程的方法很简单,系...

阅读全文>>

简单测试基址 1 --- EAX=0000000B EBX=00097E68 ECX=00000000 EDX=0000000B ESI=00058338 EDI=005DF300 EBP=0160F768 ESP=0160F730 EIP=00425EBF Probable base pointer =00058338 00425EB2 - mov eax,00000FA0 00425EB7 - call Tutorial-i386.exe+E6F0 ---------00425EBC - mov [esi+18],eax 004...

阅读全文>>

0x001 易语言模拟了一个登录框 展示: 0x002 使用win32 模拟登录测试 全部代码: // 20180117_01.cpp : Defines the entry point for the application. //WTWindow #include "stdafx.h" #include <windows.h> BOOL isStart=FALSE; //登录 void QQLogin() { TCHAR szTitle[MAX_PATH...

阅读全文>>

类似案件按键精灵的东西,直接上代码 // 20180116_02.cpp : Defines the entry point for the application. // #include "stdafx.h" #include <windows.h> #include <stdio.h> //FindWindow void test1() { TCHAR szTitle[MAX_PATH]={0}; HWND hwnd = FindWindow(TEXT("WTWindow"),TEXT("用户名 采集 V1.0...

阅读全文>>

20180115.rar   0x001 写了一个多星期了 大多参考的时课程,以及红色病毒的代码 还有很多的知识点不太理解 模模糊糊的写出来了, 中间也遇到了很多困难,   字节贴关键代码吧 我把工程文件也附加上 // TestShell.cpp : Defines the entry point for the application. // #include "stdafx.h" #include <windows.h> #include ...

阅读全文>>

早上起来忙了两个小时, 主要参考的红色病毒的代码,一直在更改中 还有四步才能实现 帖一下半成品的代码 // TestShell.cpp : Defines the entry point for the application. // #include "stdafx.h" #include <windows.h> #include <stdio.h> #include <stdlib.h> #include "PEOperate.h" /* 以挂起的形式创建进程, 获取Conte...

阅读全文>>

文章地址:https://zhuanlan.zhihu.com/p/28671064 进程注入是一种广泛应用于恶意软件和无文件攻击中的逃避技术,这需要在另一个进程的地址空间内运行自定义代码。进程注入提高了隐蔽性,一些技术也实现了持久性。 尽管有许多流程注入技术,在本博客中,我提供了十种在现实看到注入另一个进程运行恶意代码的技术。 我还提供了许多这些技术的屏幕截图,以便于逆向工程和恶意软件分析,协助针对这些常见技术进行检测和防御。 1. 经典的DLL注入方式:通过CREATEREMOTETHREAD和LOADLIBRARY进行注入 ...

阅读全文>>

 Windows的PE加载器在启动程序的时候,会将磁盘上的文件加载到内存,然后做很多操作,如函数导入表重定位,变量预处理之类的。这位仁兄等于是自己写了一个PE加载器。直接将内存中的程序启动。记得以前的“红色代码”病毒也有相同的特性。     直接启动内存中的程序相当于加了一个壳,可以把程序加密保存,运行时解密到内存,然后启动,不过对于增加破解难度还要稍微复杂点。否则人家把内存中的进程DUMP出来然后修复导入表就被拖出来了。 代码自己改吧 #include "stdafx.h" type...

阅读全文>>

前言      你可能不希望在发布程序时附带上一个外部的 DLL,因为可能会有些用户在无意中把 DLL 删除了而造成 EXE 不能正确运行,也有可能该 DLL 会被别人拿去使用,也有可能,此 DLL 会成为破解者破解你的程序的突破口。无论出于何种原因,如果你想把一个 DLL 合并到一个 EXE 中的话,本文向你介绍这种方法。   Win32 ...

阅读全文>>