用驱动注入dll比ring 4012pim 驱动3注入有什么优势

查看: 1712|回复: 58
[思路]WIN64跨SESSION跨位数直接注入DLL(RING3)
主题帖子积分
注入DLL是个老生常谈的话题,之前已经实现了在RING0跨SESSION跨位数注入DLL(或都可以)。
但最近工作中有个需求是在RING3跨SESSION跨位数注入DLL。于是思考了两天,总结出两个方法:游客,如果您要查看本帖隐藏内容请
QQ群:(WINDOWS内核编程讨论)、(用户交流)
如果需要本人原创的代码请联系QQ:(付费服务,价格较高,非诚勿扰)
注意:最近发现有人恶意山寨本人网络ID,请认准上述本人唯一商务QQ防止上当受骗。
主题帖子积分
主题帖子积分
初级会员, 积分 223, 距离下一级还需 777 积分
初级会员, 积分 223, 距离下一级还需 777 积分
主题帖子积分
主题帖子积分
初级会员, 积分 351, 距离下一级还需 649 积分
初级会员, 积分 351, 距离下一级还需 649 积分
主题帖子积分
我记得使用CreateProcessUser可以跨SEDDION
主题帖子积分
初级会员, 积分 33, 距离下一级还需 967 积分
初级会员, 积分 33, 距离下一级还需 967 积分
主题帖子积分
这个要学习一下
主题帖子积分
主题帖子积分
高级会员, 积分 2331, 距离下一级还需 1669 积分
高级会员, 积分 2331, 距离下一级还需 1669 积分
支持管理员
Powered by常用软件推荐
原创软件推荐
驱动级Dll注入器软件是目前市面上最强大的驱动级dll注入器,支持所有windows32位和64位系统,如win7,win8等。驱动级Dll注入器功能如下 :1.支持进程启动时注入dll2.支持进程运行中注入dll3.支持dll注入及卸载4.支持关闭进程可供安全人员开发使用,也可供普通用户卸载进程中的恶意dll。驱动级Dll注入器 v1.0.14.426更新:修正了启动注入器时易蓝屏的可能性
高速下载器地址
适合机型:三星Note4,三星Note4 ROM
Android版本:6.0.1
ROM大小:1370.00 MB
本站提供的软件会测试再上传,但无法保证所有软件都没有问题,如果您发现链接错误或其它问题,请在评论里告诉我们!
下载点支持点击下载(IE图标)或(迅雷图标),若直接点击下载速度太慢,请尝试点击其他的下载点,若文件太大请使用高速下载器。为确保下载的文件能正常使用,请使用最新版本解压本站软件。
建议大家谨慎对待所下载的文件,大家在安装的时候务必留意每一步!关于或的有关提示,请自行注意选择操作。
本站所有资源均是软件作者、开发商投稿、网上搜集,任何涉及商业盈利目的均不得使用,否则产生的一切后果将由您自己承担!将不对任何资源负法律责任。所有资源请在下载后24小时内删除。系统安全相关分类
常用装机软件
软件标签:
软件授权:免费版
更新时间: 15:46:11
软件类型:国产软件
软件大小:3.86 MB
软件语言:简体中文 
应用平台:/XP/Vista/win7/win8
驱动级Dll注入器软件是一款目前市面上最强大的驱动级dll注入器,支持所有windows32位和64位系统,如win7,win8等。支持进程启动和运行时注入卸载dll,支持关闭进程。可供安全人员开发使用,也可供普通用户卸载进程中的恶意dll。【驱动级Dll注入器功能特点】1.支持进程启动时注入dll2.支持进程运行中注入dll3.支持dll注入及卸载4.支持关闭进程【驱动级Dll注入器更新日记】驱动级Dll注入器&v1.0.14.419更新:修正了启动注入器时易蓝屏的可能性
软件下载   
点击以下链接下载驱动级Dll注入器 1.0.14.419官方版  
高速下载器通道:
其他下载点通道:
相关资源   
?上一软件:
?下一软件:
 华彩软件站的所有软件都经过严格安装检测,如发现有病毒木马或不能下载,请()反馈。
 推荐使用[]等专业工具下载本站软件,可获取最高速的下载速度。
 请尽量使用[]或[]等解压缩工具,这样能确保您下载的软件运行正常。
 若下载的软件压缩包有加密,密码将是
 华彩软件站中所包含的破解版及注册码均搜集自互联网,如果上述行为侵犯到您的权益,敬请通知。
 感谢您对本站的支持,欢迎您加入华彩软件站用户QQ群①(满),QQ群②,进行交流!LdrLoadDll驱动dll注入源码 - C++ - 软件开发 - 码农网(全站资源免积分下载)
LdrLoadDll驱动dll注入源码
LdrLoadDll驱动dll注入源码(rar文件,141KB,免1积分)
赞助商链接
下载信息载入中...&&&&&&
请输入验证码:
下载说明:
1、推荐使用WinRAR v3.10 以上版本解压本站资源。
2、本站上所有资源均为网友收集上传。本站所有资源仅供学习和研究使用,不得用于任何商业用途。如有需要请购买正版。如有侵犯你版权的,请给我们发邮件,本站将立即改正。
3、下载本站资源时,如果服务器暂不能下载请过一段时间重试!
4、本站和网警密切配合,对发布违法资源零容忍。
驱动,DLL,注入,源码zip文件74KB驱动DLL,注入,源码zip文件74KBLdrLoadDll,驱动,注入rar文件141KB驱动rar文件502KBDLL注入器,驱动级注入,游戏注入器,过非法注入其他文档23KB内核注入DLL,SSDT,HOOKzip文件5KBDLL其他文档1011KBdll注入源码rar文件27.13KBdllrar文件2.03MBdll注入rar文件801.35KBRing3下注入Dll模块之Dll劫持
Dll劫持原理就是在一个exe文件启动的时候会优先加载当前目录下面的Dll,所以理论上所有的Dll都可以劫持,不过既然劫持了这个某个Dll为了防止目标进程奔溃也必须要实现该Dll导出的函数,经过初略整理,大部分进程会加载以下Dll:lpk.dll、usp10.dll、msimg32.dll、midimap.dll、ksuser.dll、comres.dll、ddraw.dll以lpk为例,在win7下由于lpk被加入KnownDLLs且该注册表值不可修改,使得lpk强制从系统目录加载,不过可以将lpk.dll加入ExcludeFromKnownDlls来解决,具体可以创建一个lpk.reg文件:Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager]&ExcludeFromKnownDlls&=hex(7):6c,00,70,00,6b,00,2e,00,64,00,6c,00,6c,00,00,00,\00,00成功导入后需要重新启动电脑才能生效。参考:另外win7下的lpk在编写方面需要注意:WIN7有的程序调用LPK.DLL的LpkInitialize输出函数在LPK的初始化前面.要在LpkInitialize这个函数中加入一些处理,并且这部分代码不能加密.因此为了兼容各个系统,可以在DllMain和LpkInitialize里均做判断,如果没有初始化就进行初始化。下面贴出完整代码:// lpk.cpp : Defines the entry point for the DLL application.//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 头文件#include &stdafx.h&////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 导出函数#pragma comment(linker, &/EXPORT:LpkInitialize=_AheadLib_LpkInitialize,@1&)#pragma comment(linker, &/EXPORT:LpkTabbedTextOut=_AheadLib_LpkTabbedTextOut,@2&)#pragma comment(linker, &/EXPORT:LpkDllInitialize=_AheadLib_LpkDllInitialize,@3&)#pragma comment(linker, &/EXPORT:LpkDrawTextEx=_AheadLib_LpkDrawTextEx,@4&)//#pragma comment(linker, &/EXPORT:LpkEditControl=_AheadLib_LpkEditControl,@5&)#pragma comment(linker, &/EXPORT:LpkExtTextOut=_AheadLib_LpkExtTextOut,@6&)#pragma comment(linker, &/EXPORT:LpkGetCharacterPlacement=_AheadLib_LpkGetCharacterPlacement,@7&)#pragma comment(linker, &/EXPORT:LpkGetTextExtentExPoint=_AheadLib_LpkGetTextExtentExPoint,@8&)#pragma comment(linker, &/EXPORT:LpkPSMTextOut=_AheadLib_LpkPSMTextOut,@9&)#pragma comment(linker, &/EXPORT:LpkUseGDIWidthCache=_AheadLib_LpkUseGDIWidthCache,@10&)#pragma comment(linker, &/EXPORT:ftsWordBreak=_AheadLib_ftsWordBreak,@11&)////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 宏定义#define EXTERNC extern &C&#define NAKED __declspec(naked)#define EXPORT __declspec(dllexport)#define ALCPP EXPORT NAKED#define ALSTD EXTERNC EXPORT NAKED void __stdcall#define ALCFAST EXTERNC EXPORT NAKED void __fastcall#define ALCDECL EXTERNC NAKED void __cdecl//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////LpkEditControl导出的是数组,不是单一的函数(by Backer)EXTERNC void __cdecl AheadLib_LpkEditControl(void);
EXTERNC __declspec(dllexport) void (*LpkEditControl[14])() = {AheadLib_LpkEditControl};
//////////////////////////////////////////////////////////////////////////////////////////////////添加全局变量BOOL g_bInited = FALSE;//////////////////////////////////////////////////////////////////////////////////////////////// &////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// AheadLib 命名空间namespace AheadLib{
HMODULE m_hModule = NULL;
// 原始模块句柄 & & & &// 加载原始模块
BOOL WINAPI Load()
TCHAR tzPath[MAX_PATH];
TCHAR tzTemp[MAX_PATH * 2];
GetSystemDirectory(tzPath, MAX_PATH);
lstrcat(tzPath, TEXT(&\\lpk.dll&));
OutputDebugString(tzPath);
m_hModule=LoadLibrary(tzPath);
if (m_hModule == NULL)
wsprintf(tzTemp, TEXT(&无法加载 %s,程序无法正常运行。&), tzPath);
MessageBox(NULL, tzTemp, TEXT(&AheadLib&), MB_ICONSTOP);
return (m_hModule != NULL);
// 释放原始模块
VOID WINAPI Free()
if (m_hModule)
FreeLibrary(m_hModule);
// 获取原始函数地址
FARPROC WINAPI GetAddress(PCSTR pszProcName)
FARPROC fpA
CHAR szProcName[16];
TCHAR tzTemp[MAX_PATH];
fpAddress = GetProcAddress(m_hModule, pszProcName);
if (fpAddress == NULL)
if (HIWORD(pszProcName) == 0)
wsprintf(szProcName, &%d&, pszProcName);
pszProcName = szProcN
wsprintf(tzTemp, TEXT(&无法找到函数 %hs,程序无法正常运行。&), pszProcName);
MessageBox(NULL, tzTemp, TEXT(&AheadLib&), MB_ICONSTOP);
ExitProcess(-2);
return fpA
}}using namespace AheadL//////////////////////////////////////////////////////////////////////////////////////////////// &//////////////////////////////////////////////////////////////////////////////////////////////////函数声明void WINAPIV Init(LPVOID pParam);////////////////////////////////////////////////////////////////////////////////////////////////void WINAPIV Init(LPVOID pParam){
//在这里添加DLL加载代码
return; } ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 入口函数BOOL WINAPI DllMain(HMODULE hModule, DWORD dwReason, PVOID pvReserved){
if (dwReason == DLL_PROCESS_ATTACH)
DisableThreadLibraryCalls(hModule);
if ( g_bInited==FALSE ){
g_bInited = TRUE;
//LpkEditControl这个数组有14个成员,必须将其复制过来 & &
memcpy((LPVOID)(LpkEditControl+1), (LPVOID)((int*)GetAddress(&LpkEditControl&) + 1),52);
_beginthread(Init,NULL,NULL);
else if (dwReason == DLL_PROCESS_DETACH)
return TRUE;}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 导出函数ALCDECL AheadLib_LpkInitialize(void){
if ( g_bInited==FALSE ){
g_bInited = TRUE;
GetAddress(&LpkInitialize&);
__asm JMP EAX;}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 导出函数ALCDECL AheadLib_LpkTabbedTextOut(void){
GetAddress(&LpkTabbedTextOut&);
__asm JMP EAX;}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 导出函数ALCDECL AheadLib_LpkDllInitialize(void){
GetAddress(&LpkDllInitialize&);
__asm JMP EAX;}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 导出函数ALCDECL AheadLib_LpkDrawTextEx(void){
GetAddress(&LpkDrawTextEx&);
__asm JMP EAX;}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 导出函数ALCDECL AheadLib_LpkEditControl(void){
GetAddress(&LpkEditControl&);
__asm jmp DWORD ptr [EAX];//这里的LpkEditControl是数组,eax存的是函数指针}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 导出函数ALCDECL AheadLib_LpkExtTextOut(void){
GetAddress(&LpkExtTextOut&);
__asm JMP EAX;}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 导出函数ALCDECL AheadLib_LpkGetCharacterPlacement(void){
GetAddress(&LpkGetCharacterPlacement&);
__asm JMP EAX;}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 导出函数ALCDECL AheadLib_LpkGetTextExtentExPoint(void){
GetAddress(&LpkGetTextExtentExPoint&);
__asm JMP EAX;}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 导出函数ALCDECL AheadLib_LpkPSMTextOut(void){
GetAddress(&LpkPSMTextOut&);
__asm JMP EAX;}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 导出函数ALCDECL AheadLib_LpkUseGDIWidthCache(void){
GetAddress(&LpkUseGDIWidthCache&);
__asm JMP EAX;}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 导出函数ALCDECL AheadLib_ftsWordBreak(void){
GetAddress(&ftsWordBreak&);
__asm JMP EAX;}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
上一篇:没有了
网友评论 (0 条评论)}

我要回帖

更多关于 ring 4012pim 驱动 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信