[笔记] 关于CreateProcessWithLogonW函数创建进程

函数介绍

https://learn.microsoft.com/zh-cn/windows/win32/api/winbase/nf-winbase-createprocesswithlogonw

cpp 复制代码
BOOL CreateProcessWithLogonW(
  [in]                LPCWSTR               lpUsername,
  [in, optional]      LPCWSTR               lpDomain,
  [in]                LPCWSTR               lpPassword,
  [in]                DWORD                 dwLogonFlags,
  [in, optional]      LPCWSTR               lpApplicationName,
  [in, out, optional] LPWSTR                lpCommandLine,
  [in]                DWORD                 dwCreationFlags,
  [in, optional]      LPVOID                lpEnvironment,
  [in, optional]      LPCWSTR               lpCurrentDirectory,
  [in]                LPSTARTUPINFOW        lpStartupInfo,
  [out]               LPPROCESS_INFORMATION lpProcessInformation
);

几种使用方法

使用存在的账号信息创建进程

使用空网络账号信息创建进程

所以即使账号信息实际不存在也可以创建进程,只是无权访问网络资源

cpp 复制代码
if (!CreateProcessWithLogonW(L"MalseclogonUser", L"MalseclogonDomain", L"MalseclogonPwd", LOGON_NETCREDENTIALS_ONLY, NULL, cmdline, 0, NULL, NULL, &startInfo, &procInfo)) {
	printf("CreateProcessWithLogonW() failed with error code %d \n", GetLastError());
} else {
	// the returned handles in procInfo are wrong and duped into the spoofed parent process, so we can't close handles or wait for process end.
	printf("Spoofed process %S created correctly as child of PID %d using CreateProcessWithLogonW()!", cmdline, pid);
}
相关推荐
wdfk_prog8 小时前
[Linux]学习笔记系列 -- [fs][proc]
linux·笔记·学习
hetao17338378 小时前
2026-01-04~06 hetao1733837 的刷题笔记
c++·笔记·算法
民乐团扒谱机10 小时前
【微实验】数模美赛备赛MATLAB实战:一文速通各种“马尔可夫”(Markov Model)
开发语言·人工智能·笔记·matlab·数据挖掘·马尔科夫链·线性系统
宵时待雨10 小时前
数据结构(初阶)笔记归纳1:复杂度讲解
c语言·数据结构·笔记
今儿敲了吗10 小时前
第二章 C++对C的核心拓展
c++·笔记
weixin_4331793311 小时前
《旋元佑进阶文法》之 句型
笔记·英语语法
麻雀无能为力11 小时前
VAE(变分自编码器 Variational Auto-Encoder)学习笔记
笔记·学习
北岛寒沫11 小时前
北京大学国家发展研究院 经济学原理课程笔记(第十九课 长期经济增长)
经验分享·笔记·学习
ouliten11 小时前
vllm笔记(1):最基础的离线推理
笔记·vllm·模型推理
wtmReiner12 小时前
山东大学数值计算2026.1大三上期末考试回忆版
笔记·算法