谁有可以将DLL插入到系统EXE文件的代码

tianhuo_soft 2008-09-23 03:54:45
目前网上流传的代码都是可以插入到 普通EXE文件的

几乎都不可以插入到系统EXE文件

比如我想插入到
SVCHOST.EXE 就做不到,而普通的计算器文件 cacl.exe就能插入。
...全文
199 30 打赏 收藏 转发到动态 举报
写回复
用AI写文章
30 条回复
切换为时间正序
请发表友善的回复…
发表回复
tianhuo_soft 2008-09-26
  • 打赏
  • 举报
回复
UP
tianhuo_soft 2008-09-26
  • 打赏
  • 举报
回复
up
naxiahucao 2008-09-25
  • 打赏
  • 举报
回复
HINSTANCE calldll;
calldll=LoadLibrary("../hello/Debug/hello.dll"); //hello.dll为你要加入到exe的dll文件,引号里面是他的路径
if (NULL==calldll)
{
MessageBox("load dll failed!");
// return FALSE;
}
typedef void(_stdcall *pFunShowDlg)(CString);
pFunShowDlg pShowDlg;
pShowDlg=(pFunShowDlg)GetProcAddress(calldll,"ShowDlg");//ShowDlg是dll提供的方法
if (NULL==pShowDlg)
{
MessageBox("Function load failed!");
// return FALSE;
}
pShowDlg;
FreeLibrary(calldll);
  • 打赏
  • 举报
回复
我也想知道
tianhuo_soft 2008-09-25
  • 打赏
  • 举报
回复
up
tianhuo_soft 2008-09-24
  • 打赏
  • 举报
回复
HANDLE hRemoteProcess= NULL;
hRemoteProcess = OpenProcess( PROCESS_CREATE_THREAD | PROCESS_VM_OPERATION | PROCESS_VM_WRITE, FALSE, dwRemoteProcessId );
// 权限是这样的应该是最高了把
tianhuo_soft 2008-09-24
  • 打赏
  • 举报
回复
有代码吗
stivenjia 2008-09-24
  • 打赏
  • 举报
回复
你要将代码注入EXE?
首先你得知道目标PE节之间有多少空余空间?
不过这些空间长度不固定不好掌握,一般都是通过内存注入。
一个思路
tianhuo_soft 2008-09-24
  • 打赏
  • 举报
回复
我已经把权限弄到最高了
zoulie 2008-09-24
  • 打赏
  • 举报
回复
smss进程你就注入不了,因为它根本不就调用user23,gdi32,kernel32
我看你有戏 2008-09-24
  • 打赏
  • 举报
回复
注入的话会引起系统不稳定

除非楼主内功已经很深了
zoulie 2008-09-24
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 tianhuo_soft 的回复:]
引用 11 楼 zoulie 的回复:
远程注入线程 一搜一大把
注入的是进程,不是可执行文件。。。


我是找了很多 但是都不能注入系统进程
[/Quote]
提升load程序权限
tianhuo_soft 2008-09-24
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 zoulie 的回复:]
远程注入线程 一搜一大把
注入的是进程,不是可执行文件。。。
[/Quote]

我是找了很多 但是都不能注入系统进程
wltg2001 2008-09-24
  • 打赏
  • 举报
回复
你要将代码注入EXE?
首先你得知道目标PE节之间有多少空余空间?
不过这些空间长度不固定不好掌握,一般都是通过内存注入。
一个思路
============
注入EXE应该和PE节没有太多关系,这里的问题主要是我们远程注入的方法多是通过消息挂钩来处理的,但是一些系统后台程序没有消息队列,本身也不接受消息,所以无法注入,基本上,这个很难实现
tianhuo_soft 2008-09-24
  • 打赏
  • 举报
回复
BOOL EnabledDebugPrivilege()
{ // 兄台的代码和 我原来的代码是一样的
HANDLE hToken;
TOKEN_PRIVILEGES tkp;

if (!OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken))
return false;

LookupPrivilegeValue(NULL,SE_SHUTDOWN_NAME,&tkp.Privileges[0].Luid); //SeDebugPrivilege-->SE_SHUTDOWN_NAME 改成这样也不行

tkp.PrivilegeCount = 1;
tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;

AdjustTokenPrivileges(hToken,false,&tkp,0,(PTOKEN_PRIVILEGES)NULL,0);

if (GetLastError() != ERROR_SUCCESS)
return false;


}
vrace 2008-09-24
  • 打赏
  • 举报
回复
还要提升你程序的权限


HANDLE hToken;
TOKEN_PRIVILEGES tp;

OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY | TOKEN_ADJUST_PRIVILEGES, &hToken);
LookupPrivilegeValue(NULL, SE_DEBUG_NAME, &tp.Privileges[0].Luid);

tp.PrivilegeCount = 1;
tp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;

AdjustTokenPrivileges(hToken, FALSE, &tp, NULL, NULL, NULL);
tianhuo_soft 2008-09-24
  • 打赏
  • 举报
回复
UP
devoc 2008-09-24
  • 打赏
  • 举报
回复
lz想干坏事哦~~
tianhuo_soft 2008-09-24
  • 打赏
  • 举报
回复
DING
zoulie 2008-09-23
  • 打赏
  • 举报
回复
远程注入线程 一搜一大把
注入的是进程,不是可执行文件。。。
加载更多回复(10)

16,550

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧