Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2011.12.11;
Скачать: [xml.tar.bz2];

Вниз

Как запустить процесс с привилегиями System   Найти похожие ветки 

 
SCL ©   (2008-12-14 10:16) [0]

Как запустить процесс от пользователя System и с привилегиями Системы (как некоторые антивирусы)


 
Игорь Шевченко ©   (2008-12-14 13:05) [1]

1. Процесс всегда можно увидеть
2. Процесс всегда можно убить
3. Систему безопасности в Windows разрабатывали умные люди.


 
Leonid Troyanovsky ©   (2008-12-14 16:31) [2]


> SCL ©   (14.12.08 10:16)  

> Как запустить процесс от пользователя System

Ну, например, через Schedule, если оно от лица System,
то и все им пущеннные будут таковыми.

--
Regards, LVT.


 
МистерТ   (2008-12-15 16:53) [3]

Это называется системная служба или сервис.
Но права там далеко не системные.


 
Eraser ©   (2008-12-15 18:02) [4]

> Как запустить процесс с привилегиями System

вызвать CreateProcess из приложения с правами и привилегиями System.


 
Fighter   (2009-01-03 04:48) [5]

Гдето на работе валялся асемблерный исходник который такое делат. доберусь до работы и если вспомню напишу.  Вспоминается что там используется функция GetKernelObjectSecurity которая получает SecurityDescriptor. потом следует танец с бубном и CreateProcess


 
apic   (2009-01-29 12:20) [6]

Fighter, ждем тебя! Мне тоже интересно...


 
Eraser ©   (2009-01-29 16:54) [7]

> [6] apic   (29.01.09 12:20)

можешь не ждать, а купить книгу Руссиновича, там все описано и даже готовое решение есть http://technet.microsoft.com/en-us/sysinternals/bb897553.aspx


 
user00   (2009-04-10 19:27) [8]

Запустить файл как сервис


 
имя   (2009-04-11 06:39) [9]

Удалено модератором


 
Игорь ©   (2009-04-12 10:33) [10]

Вот держи убогую хрень написанную мной

RunAsSystem под 2000, 2003, XP, Vista

http://www.onlinedisk.ru/file/118954/


 
Riply ©   (2009-04-29 16:23) [11]

> [10] Игорь ©   (12.04.09 10:33)
> Вот держи убогую хрень написанную мной

Ну не совсем уж и убогая :)

Смотрела бегло, но сразу обратила внимание, на то что ты меняешь секюрити у winlogon.
Конечно это никуда не годится, надо искать другой путь.
(Вариант временно изменить и потом вернуть обратно тож плох).
Так что, если конечно интерес не пропал, дерзайте дальше :)
P.S.
Есть там еще ошибки, но они меркнут в сравнении с описанной выше :)


 
Игорь ©   (2009-04-29 17:13) [12]

Вот доделанный вариант, PACL winlogon"у назад возвращаеться

function _RunAsSystem_1(ApplicationName: string; CommandLine: string): Boolean;
var
 SI: STARTUPINFO;
 PI: PROCESS_INFORMATION;
 PSD: PPSecurity_Descriptor;
 ppDacl: PACL;
 hProcess, hToken: Cardinal;
begin
 Result:= False;
 hProcess:= OpenProcess(PROCESS_QUERY_INFORMATION, False, GetWinlogonPID);
 if hProcess <> 0 then
 begin
   try
     OpenProcessToken(hProcess, MAXIMUM_ALLOWED, hToken);
     if hToken <> 0 then
     begin
       if GetSecurityInfo(hToken, SE_KERNEL_OBJECT, DACL_SECURITY_INFORMATION, nil, nil, @ppDacl, nil, PSD) = ERROR_SUCCESS then
       begin
         if SetSecurityInfo(hToken, SE_KERNEL_OBJECT, DACL_SECURITY_INFORMATION, nil, nil, nil, nil) = ERROR_SUCCESS then
         begin
           CloseHandle(hToken);
           hToken:= 0;
           OpenProcessToken(hProcess, MAXIMUM_ALLOWED, hToken);
           if hToken <> 0 then
           begin
             try
               if ImpersonateLoggedOnUser(hToken) then
               begin
                 ZeroMemory(@SI, SizeOf(SI));
                 SI.cb:= SizeOf(SI);
                 if CreateProcessAsUser(hToken, PChar(ApplicationName), PChar(CommandLine), nil, nil, False, CREATE_DEFAULT_ERROR_MODE, nil, nil, SI, PI) then
                   Result:= True;
                 RevertToSelf;
               end;
               SetSecurityInfo(hToken, SE_KERNEL_OBJECT, DACL_SECURITY_INFORMATION, nil, nil, ppDacl, nil);
             finally
               CloseHandle(hToken);
             end;
           end;
         end;
         LocalFree(DWORD(ppDacl));
         LocalFree(DWORD(PSD));
       end;
     end;
   finally
     CloseHandle(hProcess);
   end;
 end;
end;


 
trix   (2009-09-13 00:45) [13]

Запустить как сервис. =)


 
СовестьДМ ©   (2009-09-13 02:19) [14]

Удалено модератором



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2011.12.11;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.004 c
8-1217964911
Рацелий
2008-08-05 23:35
2011.12.11
Chip music


15-1313561619
vrem
2011-08-17 10:13
2011.12.11
shadow copy - как?


15-1313511154
Псарь
2011-08-16 20:12
2011.12.11
Delphi XE2


2-1314252487
Onyx2012
2011-08-25 10:08
2011.12.11
Фильтр по значению в Express Quantum Grid


15-1314016337
dreamse
2011-08-22 16:32
2011.12.11
Вопрос форма с тенью или обрез формы по png картинке





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский