• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Sddl String To Binary

  • Автор темы Red Wind
  • Дата начала
Статус
Закрыто для дальнейших ответов.
R

Red Wind

Доброго времени суток!
Есть SDDL строка: D:(A;;GX;;;S-1-5-19)
Скажите, как её конвертировать в массив байтов так, что бы указатель на этот массив можно было использовать в качестве выходного параметра ppSecurityDescriptor реализации функции GetSecurity интерфейса ISecurityInformation.
Код:
HRESULT GetSecurity(
SECURITY_INFORMATION RequestedInformation,
PSECURITY_DESCRIPTOR* ppSecurityDescriptor,
BOOL fDefault
);
То есть, например есть функция ConvertStringSidToSid, но она конвертит только SID строки, каторые являются часным случаем SDDL.
 
G

Guest

Deny all, Allow generic execute to S-1-5-19?
Если эта строка константа, почему бы не собрать соответствующий дескриптор руками?

Если же все-таки нужно конвертить, вот тут: есть многообещающая фраза:
The process for converting the SDDL form of the SID into a binary SID, which can then be used in a call to the LookupAccountSid API to return the SAM account name form is as follows: 1. Parse the SDDL form of the SID found in the IADsAccessControlEntry::Trustee property so that the issuing authority and the subauthority relative identifiers (RIDs) can be determined.
2. Initialize a binary SID with the appropriate number of subauthorities.
3. Build the binary SID by adding the appropriate subauthorities in the proper order.
4. Use the newly created binary SID in a LookupAccountSid call targeting the local computer were the SDDL SID was obtained.
Там же пример на С++ (если пролисать VB)
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!