Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.12;
Скачать: CL | DM;

Вниз

SetSecurityInfo в windows nt   Найти похожие ветки 

 
izhalex ©   (2002-10-14 13:56) [0]

есть у меня такая проблема может кто и поможет
пытаюсь сделать прогу неснимаемой из диспетчера задач
пишу :
if (InitializeAcl(ACL,SizeOf(_ACL),ACL_REVISION)) and (IsValidAcl(ACL))
then SetSecurityInfo(GetCurrentProcess,SE_KERNEL_OBJECT,DACL_SECURITY_INFORMATION,nil,nil,@ACL,nil);
(сам я в этом не очень рублю, просто взял пример из инета)
так вот, ежели запускаю прогу из win2000, то все катит как по маслу; ежели запускаю из NT - выдает страшную мессагу типа "The procedure entry point RtlSetSecurityDescriptorRMControl could not be located in the dynamic link library NTDLL.DLL" (дословно) и сворачивает.

подскажите плз, могет я где ламерю ...


 
Xemax ©   (2002-10-14 14:17) [1]

просто нету процедуры RtlSetSecurityDescriptorRMControl в библиотеки NTDLL.DLL - ищи в инети какой нибудь другой пример. А из какой версии NT ты запускаешь? и что такая за необходимось в НЕУБИВАЙМОЙ ПРОГИ - трояна или виря делаешь?


 
izhalex ©   (2002-10-14 15:00) [2]

да нет же просто хочу чтобы несознательные юзвери не убивали моего клиента вот и все (сам то я админ)


 
ZZ ©   (2002-10-14 16:16) [3]

или винду переустанови...т.к. все эти функции обязаны работать на NT (и скорее всего работают ;)

InitializeAcl
Windows NT/2000 or later: Requires Windows NT 3.1 or later.

SetSecurityInfo
Windows NT/2000 or later: Requires Windows NT 4.0 or later.


 
izhalex ©   (2002-10-14 17:25) [4]

дык и на заборе написано ...
а видимо setsecurityinfo или еще какая гадость вызывает процедуру RtlSetSecurityDescriptorRMControl, а вот ее то в nt то видимо и нет :((( А насчет "винду переустанови" ты лихо загнул, у меня 22 тачки под nt и НЕ ПОД ОДНОЙ не пашет ... можешь кстати ради прикола сам попробовать если не лень - это недолго(и сообщи о результате)


 
ZZ ©   (2002-10-15 01:45) [5]

Ну проверил... ну работает (по крайней мере запускается :))
WinNT 4.0 Server SP5 (других небыло :))
А 22 машины устанавливаются обычно методом наодномкривоустановилвездескопировал с помощью всяких ghost"ов. Или ты на все 22 машины ОС руками устанавливал? (а может дистрибутив кривой ?)

PS. Вместо GetCurrentProcess лучше использовать OpenProcess(GetCurrentProcessId,...)


 
izhalex ©   (2002-10-15 08:52) [6]

ну не растет кокос и все тута Ж-:<
перепробовал уже и под worksta и под сервером (все под sp5) - ноль. а под 2k пашет (или могет у меня в натуре ntdll.dll под nt кривой посмотри плз сколько он у тебя весит)


 
SVM   (2002-10-16 13:19) [7]

procedure AppHideNT;
const
ACL_REVISION = 2;
var
ACL : _ACL;
begin
if (InitializeAcl(ACL,SizeOf(_ACL),ACL_REVISION)) and (IsValidAcl(ACL)) then
SetSecurityInfo(GetCurrentProcess,SE_KERNEL_OBJECT,DACL_SECURITY_INFORMATION, nil, nil, @ACL, nil);
end;


 
izhalex ©   (2002-10-16 14:36) [8]

> SVM
дак я все так и писал и даже OpenProcess пробовал вместа GetCurrentProcess, а резалт нулевой


 
Sergey V. Shadrin   (2002-10-16 15:24) [9]

а не проще пользователям политикой запретить прибивать процессы?


 
ZZ ©   (2002-10-16 16:16) [10]

izhalex
В общем, скомпилируй прогу (вызов этой функции) у себя и вышли ее мне (лучше с исходником). Лучше прогу сделать консольной или (если D6) с ран-тайм пакетами. Проверю у себя.
e-mail:ifit(a)mail.ru

ЗЫ. Дополнительного лучше туда ничего не добавлять.. все равно буду тестить на виртуальном компе без сети ;)


 
izhalex ©   (2002-10-16 17:22) [11]

>ZZ
прогу отослал. проверь глюк - у меня без aclapi.dll не не пашет даже под 2k.


 
ZZ ©   (2002-10-17 03:10) [12]

izhalex
Отослал?? На ifit@mail.ru? Чего-то я ее не получил :(


 
izhalex ©   (2002-10-17 11:38) [13]

> ZZ
а ты посмотри что у тебя в анкете нагорожено про емыл. я конечно сильно сомневался но отправил. не телепаты мы, извини ...

зы отправил письмо по-новому


 
ZZ ©   (2002-10-17 13:25) [14]

izhalex
А ты прочитай что написано ZZ © (16.10.02 16:16) после слова E-mail. Это что касается мыла...

Теперь о проге - она ДЕЙСТВИТЕЛЬНО не запускается на NT4 (на 2K не рискнул :)) НО те-же исходники скомпиленные на D6 делают полностью рабочий exe-шник (там раздел импорта функций оооочень сильно отличается от твоей проги и вместо ACLAPI.DLL используется ADVAPI32.DLL (для SetSecurityInfo) и судя по MSDN это правильно. Ты чем компилировал??


 
izhalex ©   (2002-10-17 13:47) [15]

>ZZ
насчет мыла - не заметил извини (смотрел тока в анкете :)
о проге - компилил в d5


 
izhalex ©   (2002-10-30 13:17) [16]

недавно тут нарыл d6, откомпилил :) все пошло и под нт, но !!! под ней (нт) прога убивается из диспетчера задач ! (а под w2k без привилегий ни-ни). вот таки дела...


 
Fiend ©   (2002-10-30 14:47) [17]

а не проще ли сделать вашу "прогу" службой. уж ее то юзер фиг остановит


 
ZZ ©   (2002-10-30 16:11) [18]

Fiend
НО - уж ее то юзер фиг запустит


 
izhalex ©   (2002-10-30 17:37) [19]

>ZZ
Если ты знаешь, службы запускаются автоматически при старте компа

>Fiend
я пробовал такой подход
НО: 1) я в принципе пока не придумал иное применение для сервиса
2) для этого нужно сильно модифицировать прогу
3) у меня эта прога узнает узвера на тачке, а GetUserName в случае сервиса выдает SYSTEM
вот такой вот ГЕМОРРОЙ...


 
ZZ ©   (2002-10-31 00:54) [20]

Если ты знаешь, службы запускаются автоматически при старте компа
Я - не знаю... И что, прям так все и запускаются?


 
izhalex ©   (2002-10-31 08:10) [21]

>ZZ
ну конечно, не все... но какой смысл тогда узверу запускать прогу, которая за ним же будет потом и следить ! :)



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

Текущий архив: 2002.12.12;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.022 c
14-36333
Ketmar
2002-11-20 17:47
2002.12.12
test


3-36068
Pontic
2002-11-22 17:26
2002.12.12
Как установить Interbase в локальной сети???


6-36327
Alik
2002-10-01 15:41
2002.12.12
Процессы на компьютере в сети


14-36329
Nox
2002-11-19 14:41
2002.12.12
Функции Dll


3-35993
DBer
2002-11-23 11:13
2002.12.12
---|Ветка была без названия|---