Показать сообщение отдельно

  #4  
Старый 29.09.2007, 15:16
KEZ
Banned
Регистрация: 18.05.2005
Сообщений: 1,981
Провел на форуме:
1941233

Репутация: 2726


Red face

Надо было разработчикам назвать этого "пользователя" не 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'ом : )

Последний раз редактировалось KEZ; 29.09.2007 в 15:34..
 
Ответить с цитированием