Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   Вопрос о "пользователе" System (https://forum.antichat.xyz/showthread.php?t=50073)

_nic 28.09.2007 21:47

Вопрос о "пользователе" System
 
Возможно ли приложние неявляющиеся сервисом добавить в автозагрузку что бы оно загружалось от имени System ? Если нет то может возможно получить системные права(при условии что приложение запущенно от имени пользователя с административными правами)уже после загрузки?

W!z@rD 29.09.2007 12:28

это сервис...

_nic 29.09.2007 15:12

Цитата:

Сообщение от W!z@rD
это сервис...

Какой то расплывчатый ответ :confused: Или это означает что кроме написания сервиса альтернативы нет?

KEZ 29.09.2007 15:16

Надо было разработчикам назвать этого "пользователя" не SYSTEM
а WINDOWS_SYSTEM_NOT_A_USER - что б некоторые кодеры не спрашивали "как запустится от юзера system" + что бы другие кодеры им не отвечали "это сервис".
Топикстартер, как думаешь, если штук десять приложений работают с пометкой систем - можно ли ещё одно такое запустить?
Сюда не надо приплетать администратора системы и нулевое кольцо.

Цитата:

Если нет то может возможно получить системные права(при условии что приложение запущенно от имени пользователя с административными правами)уже после загрузки?
Если ты работаешь под админом - у тебя и так все права на всё есть, хочешь драйвер поставь, хочешь ZwOpenSection на physical memory сделай, хочешь - любой процесс открой. Чтоб системные процессы открывать -
Код:

int LoadSeDebugPrivilege( void )
{
        HANDLE hToken;
        LUID Val;
        TOKEN_PRIVILEGES token_priv;

        if (!_OpenProcessToken( _GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken )) return (_GetLastError());

        if (!_LookupPrivilegeValue( NULL, SE_DEBUG_NAME, &Val )) return (_GetLastError());

        token_priv.PrivilegeCount = 1;
        token_priv.Privileges[0].Luid = Val;
        token_priv.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;

        if (!_AdjustTokenPrivileges( hToken, FALSE, &token_priv, sizeof( token_priv ), NULL, NULL )) return (_GetLastError());

        _CloseHandle( hToken );

        return 1;
}

(из илюжона)

Если надо поставить меточку "system" в окошке task manager (ctrl+alt+del), то (я конечно не могу сказать на 100%), но придется писать дров и копаться в потрохах винды (относительно security-дескрипторов, прав доступа, хэндлов, структур описателей процесса и тп), рискуя навсегда стать Great'ом : )


Время: 03:51