vista下开机启动 简单绕过UAC的方法

Windows Vista升级Win7兼容性实战指南:驱动、UAC与网络栈深度解析 Windows系统升级本质上是内核演进与硬件软件生态协同适配的过程。从Vista(NT 6.0)到Win7(NT 6.1),不仅涉及驱动模型(WDDM 1.1)、UAC权限体系和网络栈(NLA服务)的重构,更考验CPU指令集兼容性、注册表配置迁移及用户配置文件(User Profile)结构一致性。这类跨版本升级常暴露底层兼容性断层,尤其在老旧工业终端、办公资产利旧等场景中,需兼顾稳定性、安全性和成本控制。本文聚焦Vista→Win7迁移中的真实故障模式——如蓝屏0x7B、UAC虚拟化导致的软件授权失效、N 阅读详情

 

   vista下开机启动 简单绕过UAC的方法 

背景
      vista下,如果不开启UAC,那就没有我下面要说的问题了,呵呵。下面说的都是在vista开启UAC的前提下说的,win7也适用。
      在vista下,系统开启了UAC,如果你的软件通过manifest进行了提权(提升到管理员权限),那么exe上面会打上一个“小盾”的图标,这种程序启动的时候,会激活UAC保护机制,弹一个全局对话框出来询问用户是否允许启动,这就是微软标榜的灰常灰常的安全,到底安全不安全,先不讨论了,呵呵!现在一切都很和谐,没有问题,多点一下就多点下呗,但是如果你的程序是一个开机启动程序,而且通过manifest提升到了管理员权限,开机启动的时候,问题就来了,会直接被Windows Defender拦截下来不予启动,够邪恶吧,不幸的是QQ医生也遇到了这个问题,造成vista开机启动后QQ医生的实时保护程序起不来。不过360的保护程序貌似没有这个问题。那就研究下360吧。

解决方案
      360的托盘程序360tray.exe没有通过manifest提权,因为它上面没有小盾啊(这个秘密我一般不告诉别人),但是通过ProcessExplorerNT查看360tray的权限,发现它有管理员权限,说明它是动态提权的,那可以猜测360tray.exe在内部把自己重新启动了一次,用OD把360tray跑起来,fc居然被保护了,调试不了,把360tray.exe拷贝到桌面,再调试,嘿嘿,顺利运行,下了几个API断点,主要是CreateProcessA,CreateProcessW,ShellExecuteA,ShellExecuteW,ShellExecuteExA,ShellExecuteExW……反正就是起进程的几个API都bp下来,在UAC开启的情况下,最终会在某个ShellExecuteExW下断下来,此时观察ShellExecuteExW的参数(它的参数是一个结构体指针,此处是将指针ESP+20放入了ECX中,而ESP+20处mov了0x3c进去,也就是SHELLEXECUTEINFOW的大小,和我们平时调用不同是,lpVerb传入了一个字符串"runas",很诡异),如下图所示:


      答案基本明了了,在Windows Vista里面,ShellExecuteExW lpVerb的参数可以传入一个runas命令,使得系统调用 ShellExecuteEx的时候,会将目标文件强制完全admin模式启动,即使目标文件的manifest没有申明需要完全admin权限。 效果和在目标程序上右键单击,然后选择 run as administrator 菜单运行效果一样。
      事实胜于雄辩,马上写了个程序测试了一下,果然……

 

// 判断命令行

if (0 == ::lstrcmp(AfxGetApp()->m_lpCmdLine, TEXT("-uac")))

{

TCHAR szPath[MAX_PATH] = {0};

::GetModuleFileName(NULL, szPath, MAX_PATH);

SHELLEXECUTEINFO sei = {0};

sei.cbSize = sizeof(SHELLEXECUTEINFOW);

 

sei.fMask = SEE_MASK_NOCLOSEPROCESS | SEE_MASK_FLAG_NO_UI;

 

sei.lpFile = szPath;

sei.lpVerb = TEXT("runas");

sei.lpDirectory = NULL;

 

ShellExecuteEx(&sei);

return FALSE;

}

 

      看来我们只要在vista下实现一个一般权限应用程序,然后在启动时,内部根据参数判断用runas传入ShellExecuteEx来重新启动自己,此时会弹一个UAC的对话框出来,但是总比被直接拦截了起不来要好。内部可以判断需要提权的时候才提权(或者简单点不判断是不是需要提权,只判断系统,vista以其以上版本系统下直接用runas启动也行)。360下有个判断uac是否开启的函数,还没有时间跟进去,具体原理还不明,有时间再跟下。

 

C++ Windows7及以上系统中管理员权限与UAC虚拟化详解(附源码) 本文详细讲述一下Vista及以上Windows系统的管理员权限与UAC虚拟化相关的相关话题,给大家提供一个借鉴与参考。 阅读详情

相关推荐

Windows7及以上系统中管理员权限与UAC虚拟化详解(附源码)

Windows7及以上系统中管理员权限与UAC虚拟化详解(附源码)

dvlinker的技术专栏 327

首创,教你去掉Win7的360开机加载UAC提示

自从360安全卫士开始兼容Windows7后,许多人都在问怎样不让UAC在360开机运行时拦截,每次开机要点一下继续确实挺麻烦。当然关掉UAC可以解决这个问题。应大家的要求,我提供一种不用关闭UAC即可消除360开机运行的UAC提示。 (本方法同样适用于Vista) 1、打开任务计划管理程序       2、点击左边的“任务计划程序库”,然后点击右边的“创建任务”      

数据轨迹的专栏 2414

Jetson AGX Xavier载板设计:699 pin连接器与电源时序避坑

嵌入式载板设计常被理解为原理图绘制与接口点亮,真正决定量产可靠性的却是连接器引脚分配、电源时序、高速通道角色和机械支撑等基础约束。以699 pin连接器为骨架,电源域与上电、掉电时序决定系统能否有序启动和安全关机;PCIe的RP/EP角色、USB恢复模式和MIPI CSI skew规则则影响高速链路枚举与视频输入稳定性。把这些约束前置到选型、评审和bring-up检查清单中,可减少打板后飞线与返工,提升振动、温循和验收通过率。面向Jetson AGX Xavier OEM整机与边缘AI设备开发,DG-098

weixin_33766168的博客 360

ShellExecuteEx API 阻塞和异步调用进程的两种方法

阻塞: SHELLEXECUTEINFO ShExecInfo = { 0 }; ShExecInfo.cbSize = sizeof(SHELLEXECUTEINFO); ShExecInfo.fMask = SEE_MASK_NOCLOSEPROCESS; ShExecInfo.hwnd = NULL; ShExecInfo.lpVerb = NULL; ShExecInfo.lpFile = (LPCWSTR)newAppPath.utf16(); // _telegramPath.toLocal8

翻肚鱼儿的博客 770

编写绕过360安全卫士自启动项 - 黑白网络

编写绕过360安全卫士自启动项 - 黑白网络

Win7下绕过UAC代码

LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM); void RefreshProcs(HWND hWnd); int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow) { g_hInstance = hInstance; UNREFERENCED_PARAMETER(hPrevInstance); UNREFERENCED_PARAMETER(lpCmdLine); // Init base Windows services etc. { INITCOMMONCONTROLSEX icce = {0}; icce.dwSize = sizeof(icce); icce.dwICC = ICC_STANDARD_CLASSES; if (!InitCommonControlsEx(&icce)) { MessageBox(NULL, L"InitCommonControlsEx failed", L"Win7Elevate", MB_OK | MB_ICONERROR); return 0; }

winform程序开机自动启动

app.manifest <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> /// <summary> /// 在注册表中添加、删除开机自启动键值 /// </summary> ...

dibeichan3033的博客 188

虚拟机Ubuntu连接USRP

笔记本通过网线连接USRP。

xiaozir的博客 2306

Vista/Win7中绕过UAC自启动

转载自:http://www.shily.net/topic/bypassing-uac-since-the-launch-on-vista-win7/#more-136 在开启了UAC的Vista/Win7/windows server 2008 等系统上,如果程序使用manifest进行了提权(requireAdministrator),程序在启动的时候系统会弹出一个全局的对

收集学习过程中对自己有帮助的牛人文章 1904

ICC 实战解析——CTS 时钟树综合中的关键设置与优化策略

本文深入解析ICC工具中CTS时钟树综合的关键设置与优化策略,涵盖时钟树异常引脚设置、目标参数配置、非默认布线规则(NDR)等核心技术。通过实战案例展示如何有效控制时钟偏差、优化信号完整性,并平衡功耗与面积,为芯片物理设计提供专业指导。

weixin_30872577的博客 324

SAP 分期付款,付款条件的要件定义方法

以上内容做好后,可以在F-02或者F-60里看设置后的结果。找到相关路径选择【维护支付条件】点击进入后,选择【新条目】再设置一个总的支付规则,注意这里【付款条款】一定要选择。例:默认付款条件SP00,改成刚定义好的0028即可。将刚才基础创建的付款条件,以以下方式录入,注意。028A- 30天到期,过账日期基础。028B- 60天到期,过账日期基础。028C- 90天到期,过账日期基础。目的:新建支付条款(本次以。的选择,然后保存后,完成。,【基准日期缺省值】选择。基础创建好了以后,选择【

晴天的博客分享技术知识 2936

深入了解UAC

UAC(User Account Control)即用户帐户控制,是从Windows Vista开始引入的,并在Windows 7中得到了很大的改进一种机制,无论对普通用户还是对开发者都有很大的影响。但是谈到UAC到底是一个怎样的机制,不见得每个人都知道,反而在很大程度上都被误解了。本文就试图阐述UAC的一些原理机制及作用意义。 相信绝大多数人的Windows都只开了一个账户,即管理员账户,

debugge的专栏 1289

(UE4 4.27) HISM性能优化:从空间剔除到合批渲染的实战解析

本文深入解析了UE4 4.27中HISM(UHierarchicalInstancedStaticMesh)组件的性能优化原理与实战技巧。核心在于利用其N叉树空间结构实现高效的CPU视锥剔除,并结合GPU实例化进行合批渲染。文章详细探讨了从控制叶子节点粒度、平衡剔除精度与渲染效率,到结合LOD系统等关键参数的调优方法,为开放世界或大场景的植被性能瓶颈提供了系统解决方案。

weixin_29015051的博客 327

Vista下 VC编程申请UAC及XP风格的双重实现

最近一直在整U盘监控的程序      期间学到了不少    一是安装程序的制作    用的是GPBuilder    感觉还不错二是U盘插拔的响应     目前用后台持续遍历磁盘和响应U盘插拔消息两种方法来实现       三就是在UAC方面的研究         由于Vista UAC机制    自己的程序   在进行某些注册表操作时   没法实现      我就开始想   怎样申请UAC   

许落 1671

VS2022+Qt6保姆级环境配置指南:从插件安装到项目互通全流程

本文提供VS2022与Qt6深度整合的全流程指南,涵盖环境配置、插件安装、项目互通等关键步骤。详细解析编译器版本匹配、跨IDE协作方案及效能优化技巧,帮助开发者高效搭建C++界面设计开发环境,实现软件项目无缝互通。

zero1的博客 733

火灾图像检测识别:cnn卷积神经网络 Adaboost 支持向量机 随机森林 决策树 完整代码数据

火灾图像检测识别:cnn卷积神经网络 Adaboost 支持向量机 随机森林 决策树 完整代码数据

862

VISTA下权限问题。。。

    开发的程序需要在vista运行,原程序使用了CreateProcess函数,而发现由于UAC的问题,该函数会调用失败,同时修改注册表中开机启动位置也会失败。意识到该问题后,在安装程序的时候,将注册表中 HKEY_CURRENT_USER/Software/Microsoft/Windows   NT/CurrentVersion/AppCompatFlags/Layers 添加了相关的程序

perddy的专栏 883

零基础DSP实战TMS320F28035:第九节,ADC比较器&EPWM

ADC比较器框图如下所示:-电压-----------------------------输出-电压A>电压B------------------ 1-电压A

sinat_30943509的博客 2535

多系统兼容(支持Vista和Win7)

前言:Vista和Win7下为提高系统安全性,引入UAC。UAC给程序运行带来很大不便,如普通管理员权限运行的程序不能操作注册表,操控服务,读写文件等。有管理员运行权限的进程运行时会弹框提示等,且有管理员权限的程序若为设置自动启动,电脑重启后将被阻止。解决:给程序配置管理员权限,绕过UAC控制 一:给程序添加管理员运行权限      1、添加新建项(应用程序清单文件),配置为管

WLQ.CodePointer的专栏 850

Oracle11g下载与安装(windows)

一、Oracle11g下载 二、安装准备 三、执行安装步骤 四、测试连接 附:Oracle11g服务说明

欢迎订阅我的“JAVA全栈开发笔记(全)”专栏,价格优惠,仅需19.9元。 2万+

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

从Vista演变到Win7,Aero是怎么延续的?

Windows Vista到Win7的涅槃之路 从Vista到Win7的演进并非一帆风顺,而是一场历时3年、历经数十个内部版本的技术长征。Vista因苛刻的硬件要求、兼容性问题和代码膨胀被视为"失败",却为Win7奠定了技术基础。关键转折点出现在Build 6469,首次使用"Windows 7"名称并引入新特性。后续版本逐步优化了任务栏设计、文本渲染、启动界面等,最终Build 7600成为正式版。这段历史证明,Win7的成功并非偶然,而是建立在Vista的经验教训之上,通过持续迭代打磨...

GaltonLai的csdn博客 392

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

.net 创建计划任务开机后自动以管理员身份启动运行 win7 ~ win10

假如要启动 this.exe。以下逻辑中会启动先后关联启动三个实例分别是ABC。先启动第一个实例A,A启动实例B,B启动实例C. 要求: 1.如果没有以管理员权限运行,则请求管理员权限运行,即使没有请求成功或请求成功之前,也要先以非管理员权限运行,因为它定时要执行一些任务,不能因阻塞而错过。 2.如果没有以管理员权限运行,也要可以动态申请以管理员权限来注册开机启动,然后托盘显示右键菜单指示是...

weixin_30239339的博客 437

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Windows Vista提高运行速度八式

Windows Vista提高运行速度八式  Windows Vista操作系统由于在XP的基础上增加了许多新特性,以至于非常庞大,对计算机硬件的要求也就相对较高。有鉴于此,在不升级硬件的条件下,我们可以采用一些招数巧妙地提升Vista系统的运行速度。 第一式 关闭用户账户控制UACUAC是微软为提高系统安全而在Windows Vista中引入的新技术,它要求所有用户在标准账号

chszs的专栏 6289

网友总结出Vista最常用的10个系统设置

Vista之家总结出Vista下面最经常用到的10个设置,下面就一一罗列给大家。  1、关闭UAC  原因:Vista新添的用户帐户控制(UAC)功能,使他的安全性有了极大提升,但是同时也给用户带来了诸多不便,如果您无法忍受每次开启程序时的弹出,就可以将他关闭了。  方法:Vista优化大师--安全优化--用户安全设置--禁用用户帐户控制,勾选,保存设置。或者,控制面板/用户帐户和家庭

afterain的专栏 607
上一篇: ADO数据库编程入门
下一篇: 判断当前用户是否打开了UAC(Vista or Win7 OS)
ShenRui
博客等级 码龄20年 63粉丝 36原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值