информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Сетевые кракеры и правда о деле ЛевинаГде водятся OGRыЗа кого нас держат?
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Очередное исследование 19 миллиардов... 
 Оптимизация ввода-вывода как инструмент... 
 Зловреды выбирают Lisp и Delphi 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / operating systems
Имя Пароль
если вы видите этот текст, отключите в настройках форума использование JavaScript
ФОРУМ
все доски
FAQ
IRC
новые сообщения
site updates
guestbook
beginners
sysadmin
programming
operating systems
theory
web building
software
hardware
networking
law
hacking
gadgets
job
dnet
humor
miscellaneous
scrap
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
[NT] Про session SID понятно, спасибо... Остался вопрос про то, как прикрутить регион к DesktopWindow :-( 13.05.03 14:17  Число просмотров: 1444
Автор: HandleX <Александр М.> Статус: The Elderman
<"чистая" ссылка>
<operating systems>
[NT] Desktop object, DesktopWindow и прочая странности-несуразности... 12.05.03 23:40  
Автор: HandleX <Александр М.> Статус: The Elderman
Отредактировано 12.05.03 23:50  Количество правок: 1
<"чистая" ссылка>
Вот, доигрался ;-)

Сегодня мучал WinNT десктопы и всё с ними связанное, кое-что так и не понял...
Открыл текущий десктоп (в котором я влогинен), и прочитал DACL, и вот что я увидел (операционка — WinXP):

ACCESS_ALLOWED_ACE1:
SID=S-1-5-5-0-1802738 (это что за зверь такой, кто знает? LookUpAccountSID говорит, что идентификатору имя не сопоставлено);
AccessMask=ALL_ACCESS.

ACCESS_ALLOWED_ACE2:
SID=«ОГРАНИЧЕННЫЕ (NT AUTHORITY)» (во блин! кто знает подробнее про этот SID, расскажите, плз.);
AccessMask=ALL_ACCES (в чём их ограничение, известно только Б.Г. :-).

ACCESS_ALLOWED_ACE3:
SID=«Administrators (BUILTIN)»
AccessMask=
DESKTOP_READOBJECTS | DESKTOP_CREATEWINDOW | DESKTOP_CREATEMENU |
DESKTOP_ENUMERATE | DESKTOP_WRITEOBJECTS | DESKTOP_SWITCHDESKTOP
Как видим, администраторы самые урезанные в правах на десктоп. Не включены права DESKTOP_HOOKCONTROL, DESKTOP_JOURNALRECORD, DESKTOP_JOURNALPLAYBACK, что странно...

ACCESS_ALLOWED_ACE4:
SID=«SYSTEM - (NT AUTHORITY)»
AccessMask=ALL_ACCESS (ну, система, это понятно);

Непонятны мне две вещи. Первое — загадочный SID (см. выше).
Второе — я полез ковырять объект десктопа из-за того, что не смог прикрутить region к DesktopWindow. Вот этот фрагмент не работает

procedure TForm1.Button1Click(Sender: TObject);
Var
  aWnd: HWND;
  aReg: HRGN;
begin
  aReg := CreateEllipticRgn(0, 0, 1024, 768);
  Win32Check(aReg <> 0);
  Try
    aWnd := GetDesktopWindow;
    Win32Check(SetWindowRgn(aWnd, aReg, True) <> 0); 
    // ^^^^ Вот тут валится с ошибкой. SetWindowRgn возвращает 0,
    // причём GetLastError = ERROR_SUCCESS. 
  Except
    DeleteObject(aReg);
    Raise;
  End;
end;

---
Из чего я делаю вывод, что DesktopWindow это какое-то «неполноценное» окно, или OS особым образом его защищает. У кого какие мысли по этому поводу? Можно ли прикрутить region к DesktopWindow?
Кстати, рулит этим окном CSRSS.EXE, может из-за того, что он работает под LOCALSYSTEM, OS не даёт модифицировать его окна? Хотя я запустил своё тестовое приложение под SrvAny под Localsystem, там такая же песня...

Заранее всем спасибо за советы.

_________________________
В великой мудрости великая печаль, и кто умножает познания, умножает и скорбь...
(C) Экклезиаст — мудрый и печальный ;-)
[NT] Desktop object, DesktopWindow и прочая странности-несуразности... 13.05.03 02:28  
Автор: + <Mikhail> Статус: Elderman
<"чистая" ссылка>
> Вот, доигрался ;-)
>
> Сегодня мучал WinNT десктопы и всё с ними связанное,
> кое-что так и не понял...
> Открыл текущий десктоп (в котором я влогинен), и прочитал
> DACL, и вот что я увидел (операционка — WinXP):
>
> ACCESS_ALLOWED_ACE1:
> SID=S-1-5-5-0-1802738 (это что за зверь такой, кто знает?

SID: S-1-5-5-X-Y
Name: Logon Session
Description: A logon session. The X and Y values for these SIDs are different for each session.


> LookUpAccountSID говорит, что идентификатору имя не
> сопоставлено);
> AccessMask=ALL_ACCESS.
>
> ACCESS_ALLOWED_ACE2:
> SID=«ОГРАНИЧЕННЫЕ (NT AUTHORITY)» (во блин! кто знает
> подробнее про этот SID, расскажите, плз.);
> AccessMask=ALL_ACCES (в чём их ограничение, известно только
> Б.Г. :-).
>
> ACCESS_ALLOWED_ACE3:
> SID=«Administrators (BUILTIN)»
> AccessMask=
> DESKTOP_READOBJECTS | DESKTOP_CREATEWINDOW |
> DESKTOP_CREATEMENU |
> DESKTOP_ENUMERATE | DESKTOP_WRITEOBJECTS |
> DESKTOP_SWITCHDESKTOP
> Как видим, администраторы самые урезанные в правах на
> десктоп. Не включены права DESKTOP_HOOKCONTROL,
> DESKTOP_JOURNALRECORD, DESKTOP_JOURNALPLAYBACK, что
> странно...
>
> ACCESS_ALLOWED_ACE4:
> SID=«SYSTEM - (NT AUTHORITY)»
> AccessMask=ALL_ACCESS (ну, система, это понятно);
>
> Непонятны мне две вещи. Первое — загадочный SID (см. выше).
> Второе — я полез ковырять объект десктопа из-за того, что
> не смог прикрутить region к DesktopWindow. Вот этот
> фрагмент не работает
>
> procedure TForm1.Button1Click(Sender: TObject);
> Var
>   aWnd: HWND;
>   aReg: HRGN;
> begin
>   aReg := CreateEllipticRgn(0, 0, 1024, 768);
>   Win32Check(aReg <> 0);
>   Try
>     aWnd := GetDesktopWindow;
>     Win32Check(SetWindowRgn(aWnd, aReg, True) <> 0); 
>     // ^^^^ Вот тут валится с ошибкой. SetWindowRgn
> возвращает 0,
>     // причём GetLastError = ERROR_SUCCESS. 
>   Except
>     DeleteObject(aReg);
>     Raise;
>   End;
> end;
> 

---
> Из чего я делаю вывод, что DesktopWindow это какое-то
> «неполноценное» окно, или OS особым образом его защищает. У
> кого какие мысли по этому поводу? Можно ли прикрутить
> region к DesktopWindow?
> Кстати, рулит этим окном CSRSS.EXE, может из-за того, что
> он работает под LOCALSYSTEM, OS не даёт модифицировать его
> окна? Хотя я запустил своё тестовое приложение под SrvAny
> под Localsystem, там такая же песня...
>
> Заранее всем спасибо за советы.
>
>_______________________
> В великой мудрости великая печаль, и кто умножает познания,
> умножает и скорбь...
> (C) Экклезиаст — мудрый и печальный ;-)

Well-Known SIDs
[NT] Про session SID понятно, спасибо... Остался вопрос про то, как прикрутить регион к DesktopWindow :-( 13.05.03 14:17  
Автор: HandleX <Александр М.> Статус: The Elderman
<"чистая" ссылка>
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2025 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach