Операция с файлом ключей что это
Речь пойдет о файлах primary.key, masks.key и header.key, которые лежат в директории ххххх.000 на флешке. Данные файлы входят в состав криптоконтейнера закрытого ключа электронной подписи криптопровайдера КриптоПро, формат которого нигде не опубликован. Целью данной статьи является чтение контейнера и преобразование закрытого ключа в формат, который может быть прочитан в библиотеке OpenSSL. Долгое время было распространено ошибочное суждение, что достаточно сделать нечто вида (primary_key XOR masks_key) и мы получим закрытый ключ в чистом (raw) виде, однако забегая вперед, можно утверждать, что в КриптоПро было применено более сложное преобразование, в худшем случае состоящее из более чем 2000 (двух тысяч) операций хеширования.
- Читает контейнер не напрямую, а через криптопровайдер, поэтому там, где кроме OpenSSL ничего нет, не работает.
- Если в свойствах ключа не отмечено, что ключ «экспортируемый», то конвертировать его невозможно.
- В демо версии не формирует файл с ключом, эта возможность присутствует только в платной версии.
Содержит 32 байта ключа в формате Asn1. Это только половина ключа, полный ключ получается при делении этого числа по модулю Q на маску. Поле, хранящее модуль Q в библиотеке OpenSSL имеет название order. Маска лежит в файле masks.key:
Содержит 32 байта маски ключа в формате Asn1, зашифрованного на ключе хранения pwd_key. Далее 12 байт «затравочной» информации для генерации ключа хранения pwd_key, если криптоконтейнер защищен паролем, то пароль также участвует в генерации ключа хранения.
Далее контрольная сумма (имитозащита) 4 байта. Контрольной информацией для простоты мы пользоваться не будем, общий контроль будет осуществляться путем генерации открытого ключа и сравнения первых 8 байт полученного ключа с соответствующим полем из файла header.key:
- GostR3410_2001_CryptoPro_A_ParamSet — 1.2.643.2.2.35.1
- GostR3410_2001_CryptoPro_B_ParamSet — 1.2.643.2.2.35.2
- GostR3410_2001_CryptoPro_C_ParamSet — 1.2.643.2.2.35.3
- GostR3410_2001_CryptoPro_XchA_ParamSet — 1.2.643.2.2.36.0
- GostR3410_2001_CryptoPro_XchB_ParamSet — 1.2.643.2.2.36.1
Основную работу выполняют следующие 3 функции:
1. Создаем ключ хранения исходя из 12-ти байтовой «соли» и пароля.
2. Расшифровываем основной ключ на ключе хранения.
3. Делим ключ с маской на маску.
Но так как в библиотеке OpenSLL операция деления по модулю традиционно отсутствует, пользуемся операцией взятия обратного числа и умножением.
Далее сборка исходников описана для Linux версии.
Версию для Windows можно скачать отсюда там же есть сертификаты и закрытый ключ для тестирования, для сборки потребуется бесплатный компилятор Borland C++ 5.5
Что такое файл хранилища закрытых ключей (Keystore) Ethereum?
Барьеры для входа в хранилище ключей для управления закрытыми ключами Ethereum очень велики, в основном потому, что клиент Ethereum скрывает большую часть сложности пароля в прямой командной строке или графическом интерфейсе.
Например, с geth:
Мне нужно ввести всего 3 слова, чтобы создать новую учетную запись. Затем введите пароль дважды, это так просто! Мой файл хранилища ключей Ethereum создан.
Вам необходимо создать резервную копию и сохранить эти очень ценные файлы хранилища ключей в одном или нескольких секретных местах, чтобы только вы могли получить доступ к этим файлам и снять средства.
По опыту, когда я не до конца понимаю тонкости новой концепции и слишком сильно полагаюсь на слои абстракции и существующие инструменты, чтобы облегчить себе жизнь, я, вероятно, что-то забуду, воспользуюсь ненужными ярлыками и выберу ненужные ярлыки. Испортить его. Когда это случится, мой с трудом заработанный Эфир может быть заблокирован навсегда (к счастью, этого еще не произошло!).
К счастью, как пользователь Ethereum, есть не так уж много способов сделать ошибку:
1. Вы потеряли файл хранилища ключей.
2. Вы забыли пароль, связанный с файлом.
3. Или вы оба напутали.
В этой статье мы познакомим вас с тем, как вычисляется закрытый ключ Ethereum из файла хранилища ключей. Мы обсудим функции шифрования (симметричное шифрование, функции генерации ключей, алгоритм хеширования SHA3), но мы постараемся максимально кратко и прямо объяснить вышеуказанные проблемы.
Что такое файл хранилища ключей?
Файл хранилища ключей Ethereum (хранящийся в ~ / .ethereum / keystore в системе Linux или C: \ Users \ Appdata / Roaming / Ethereum / keystore в системе Windows) - это ваш уникальный закрытый ключ Ethereum, используемый для подписи транзакций. Зашифруйте файлы. Если вы потеряете этот файл, вы потеряете свой закрытый ключ, что означает, что вы потеряете возможность подписывать транзакции, а это означает, что ваши средства навсегда заблокированы в вашей учетной записи.
Конечно, вы можете напрямую хранить свой закрытый ключ Ethereum в зашифрованном файле, но ваш закрытый ключ уязвим для атак. Злоумышленник просто читает ваш файл, подписывает транзакцию вашим закрытым ключом и переводит деньги. На их счет. Ваши монеты будут потеряны незадолго до того, как вы поймете, что произошло.
Вот почему был создан файл хранилища ключей Ethereum: он позволяет хранить ключи в зашифрованном виде. Это идеальный баланс между безопасностью (злоумышленнику нужен файл хранилища ключей и ваш пароль, чтобы украсть ваши средства) и доступностью (вам нужны только файл хранилища ключей и пароль, чтобы использовать свои деньги).
Как выглядит файл хранилища ключей?
Если вы откроете файл своей учетной записи, он будет выглядеть так (взято отсюда):
ount’s file, it would look like this (taken from here):
Неуклюжий файл JSON со множеством волшебных параметров, похоже, связан со сложными операциями шифрования. Это отнюдь не привлекательно.
Если вы посмотрите на структуру этого файла хранилища ключей, вы увидите, что большая часть содержимого находится в «криптографии»:
Это включает в себя:
· Cipher: название симметричного алгоритма AES;
· Cipherparams: параметры, требуемые вышеуказанным алгоритмом шифрования;
· Шифрованный текст: ваш закрытый ключ Ethereum зашифрован с использованием вышеуказанного алгоритма шифрования;
· Kdf: функция генерации ключей, используемая для шифрования файла хранилища ключей паролем;
· Kdfparams: параметры, требуемые вышеуказанным алгоритмом kdf;
· Mac: код, используемый для проверки пароля.
Давайте посмотрим, как они работают вместе и как защитить файл хранилища ключей с помощью вашего пароля.
1. Зашифруйте свой закрытый ключ.
Как упоминалось ранее, учетная запись Ethereum - это пара закрытый ключ-открытый ключ, используемая для шифрования и подписи транзакций. Чтобы гарантировать, что ваш закрытый ключ не хранится в открытом виде в файле (то есть любой может читать файл, если он может его получить), важно использовать надежный симметричный алгоритм (шифр) для его шифрования.
Эти симметричные алгоритмы используют ключи для шифрования данных. Зашифрованные данные можно расшифровать с использованием того же метода и того же ключа, поэтому алгоритм называется симметричным алгоритмом. В этой статье мы называем этот симметричный ключ ключом дешифрования, потому что он будет использоваться для дешифрования нашего закрытого ключа Ethereum.
Ниже приведены соответствующие концепции шифра, зашифрованных параметров и зашифрованного текста:
Итак, здесь у вас уже есть все необходимое для расшифровки вычислений закрытого ключа Ethereum . и т. Д. Сначала вам нужно получить ключ дешифрования.
-Симметричная расшифровка шифрованного зашифрованного текста-
2. Используйте свой пароль, чтобы защитить его.
Чтобы разблокировать учетную запись легко, вам не нужно запоминать каждый длинный, непонятный для пользователя ключ дешифрования зашифрованного текста для дешифрования. Напротив, разработчики Ethereum выбрали защиту на основе пароля, что означает, что вам нужно только ввести пароль, чтобы получить обратно ключ дешифрования.
Для этого Ethereum использует функцию генерации ключей. Введите пароль и ряд параметров для вычисления ключа дешифрования.
Это цель kdf и kdfparams:
· Kdf - это функция генерации ключей, которая вычисляет (или извлекает) ключ дешифрования в соответствии с вашим паролем. Здесь kdf использует алгоритм scrypt.
· Kdfparams - это параметр, необходимый для функции scrypt. Здесь, говоря простым языком, dklen, n, r, p и salt являются параметрами функции kdf. Более подробную информацию о функции scrypt можно найти здесь.
Здесь используйте параметр kdfparams для настройки функции scrypt, ответьте на него с нашим паролем, и вы получите ключ дешифрования, который является выходом функции генерации ключа.
-Сгенерировать ключ с паролем-
3. Убедитесь, что ваш пароль правильный.
Мы описали все необходимое для генерации закрытого ключа Ethereum с паролем и файлом хранилища ключей. Однако что произойдет, если пароль для разблокировки учетной записи неправильный?
Согласно тому, что мы видели до сих пор, все операции (получение пароля и расшифровка) будут успешными, но окончательный расчетный закрытый ключ Ethereum неверен, что, во-первых, нарушает первоначальное намерение использования файла ключа!
Нам нужно убедиться, что пароль, введенный для разблокировки учетной записи, правильный, такой же, как при первоначальном создании файла хранилища ключей (вспомните пароль, введенный дважды при создании новой учетной записи в geth).
Здесь работает значение mac в файле хранилища ключей. После выполнения функции генерации ключа ее вывод (ключ дешифрования) и зашифрованный текст обрабатываются [Примечание 1] и сравниваются с mac (как утвержденная печать). Если результат такой же, как у mac, значит, пароль правильный и можно начинать дешифрование.
[Примечание 1] Это немного кратко. Перед сравнением с Mac ключ дешифрования (16 байтов от второго байта слева) должен быть объединен с зашифрованным текстом и хеширован (с использованием метода SHA3-256). Для получения дополнительной информации посетите здесь.
Принять во внимание все
Эй! Если вы это сделали, поздравляем!
Давайте рассмотрим 3 описанные нами функции.
Сначала вы вводите пароль, который используется в качестве входных данных для функции генерации ключей kdf для вычисления ключа дешифрования. Затем только что вычисленный ключ дешифрования и зашифрованный текст подключаются и обрабатываются и сравниваются с Mac, чтобы убедиться, что пароль правильный. Наконец, зашифрованный текст дешифруется с помощью ключа дешифрования с помощью функции симметрии шифрования.
Смотри! Результатом расшифровки будет ваш закрытый ключ Ethereum. Здесь вы можете увидеть весь процесс:
Как видно из рисунка, весь процесс можно рассматривать как черный ящик (однако рисунок - серый ящик), ваш пароль является единственным входом, а ваш закрытый ключ Ethereum является единственным выходом. Другая необходимая информация может быть получена в файле хранилища ключей, созданном при создании вашей учетной записи Ethereum.
По этой причине убедитесь, что ваш пароль достаточно надежен (и вы все равно должны его запомнить!), Чтобы гарантировать, что даже если злоумышленник украдет ваш файл хранилища ключей, вы не сможете легко получить свой закрытый ключ.
Переключатель Kotlin
В Котлине нет оператора коммутатора, и это DESI. Способ Джавы: Котлин написание: .
Компиляция OpenSSL библиотеки
После скачивания и распаковки исходных текстов openssl в целевой директории выполняем команды:
Получаем готовую библиотеку libcrypto.a в текущей директории.
Также потребуются заголовочные файлы из директорий engines/ccgost и include.
Компиляция OpenSSL библиотеки
После скачивания и распаковки исходных текстов openssl в целевой директории выполняем команды:
Получаем готовую библиотеку libcrypto.a в текущей директории.
Также потребуются заголовочные файлы из директорий engines/ccgost и include.
Компиляция privkey.c
Сеть Внимания пирамиды для сегментации сегментации
Сеть Внимания пирамиды для сегментации сегментации Эта статья предлагает сковороду, предлагая функцию модуля привлечения пирамиды (FPA) и Global Module Atterty Upsample (GAU), вводящий очаговый ключ д.
LeetCode 595. Big Countries
LeetCode 595. Big Countries тема There is a table World A country is big if it has an area of bigger than 3 million square km or a population of more than 25 million. Write a SQL solution to output bi.
Практика работы с регулярными выражениями
Рекомендации по контролю безопасности
Для 4663 (S): была предпринята попытка доступа к объекту.
Для объектов ядра это событие и другие события аудита практически не имеют значения безопасности и трудно анализировать или анализировать. Нет рекомендаций для их аудита, если вы точно не знаете, что нужно отслеживать на уровне объектов ядра.
Для других типов объектов применяются следующие рекомендации.
Если у вас есть критически важные объекты файловой системы, для которых необходимо отслеживать все попытки доступа, отслеживайте это событие для объекта Name.
Если у вас есть критически важные объекты файловой системы, для которых необходимо **** отслеживать определенные попытки доступа (например, написание действий), отслеживайте это событие для имени объекта по отношению к сведениям о запросе доступа\Accesses.
Если у вас есть объекты файловой системы с определенными атрибутами, для которых необходимо отслеживать попытки доступа, отслеживайте это событие для атрибутов ресурсов.
Если Object Name — это конфиденциальный или критический ключ реестра, для которого необходимо отслеживать определенные попытки доступа (например, только записывать действия), отслеживайте все события 4663 с соответствующими сведениями о запросе доступа\Accesses.
Если у вас есть заранее определенное "Имяпроцесса" для процесса, о чем сообщалось в этом событии, отслеживайте все события с помощью "Имяпроцесса", не равного вашему определенному значению.
Вы можете отслеживать, не находится ли "Имяпроцесса" в стандартной папке (например, не в System32 или Program Files) или в ограниченной папке (например, **** Временные файлы Интернета).
Если у вас есть заранее определенный список ограниченных подстройок или слов в именах процессов (например,"mimikatz" или** "cain.exe"), **проверьте эти подстройки в "Имяпроцесса".
Для объектов файловой системы рекомендуется отслеживать эти права на доступ к данным запроса\Accesses:
Формирование файла закрытого ключа private.key
Тестовый закрытый ключ в криптоконтейнере lp-9a0fe.000, сертификат открытого ключа signer.cer и другие файлы для тестирования можно взять отсюда
-->
Описание события:
Это событие создается при экспорте или импорте криптографического ключа с помощью поставщика ключей служба хранилища (KSP). Это событие создается только в том случае, если был использован один из следующих KSP:
Поставщик ключа служба хранилища программного обеспечения
Microsoft Smart Card Key служба хранилища поставщик
Примечание. Рекомендации приведены в разделе Рекомендации по мониторингу безопасности для этого события.
XML события:
Необходимые роли сервера: нет.
Минимальная версия ОС: Windows Server 2008, Windows Vista.
Версии события: 0.
Описания полей:
Тема:
- Security ID [Type = SID]: SID учетной записи, запросив операцию миграции ключей. Средство просмотра событий автоматически пытается разрешить идентификатор безопасности SID и отобразить имя учетной записи. Если идентификатор безопасности разрешить не удается, в событии будут отображены исходные данные.
Примечание. . Идентификатор безопасности (SID) представляет собой строковое значение переменной длины, которое используется для идентификации доверенного лица (субъекта безопасности). Каждая учетная запись имеет уникальный идентификатор безопасности, выданный центром сертификации, таким как контроллер домена Active Directory, который хранится в базе данных безопасности. Каждый раз, когда пользователь входит в систему, система получает идентификатор безопасности этого пользователя из базы данных и помещает ее в маркер доступа этого пользователя. Система использует идентификатор безопасности в маркере доступа для идентификации пользователя во всех последующих операциях с Безопасностью Windows. Если идентификатор SID использовался как уникальный идентификатор для пользователя или группы, он не может использоваться повторно для идентификации другого пользователя или группы. Дополнительные сведения о SID см. в разделе Идентификаторы безопасности.
Имя учетной записи [Type = UnicodeString]: имя учетной записи, запрашиваемой операции миграции ключей.
Account Domain [Type = UnicodeString]: домен субъекта или имя компьютера. Форматы различаются и включают в себя следующее:
Пример имени домена NETBIOS: CONTOSO
Полное имя домена в нижнем регистре: contoso.local
Полное имя домена в верхнем регистре: CONTOSO.LOCAL
Для некоторых известных субъектов безопасности, таких как LOCAL SERVICE или ANONYMOUS LOGON, значение этого поля равно "NT AUTHORITY".
Для учетных записей локальных пользователей это поле будет содержать имя компьютера или устройства, к которым принадлежит эта учетная запись, например: "Win81".
Logon ID [Type = HexInt64]: шестнадцатеричное значение, которое может помочь сопоставить это событие с недавними событиями содержащими тот же идентификатор входа, например: “4624: Учетная запись успешно вошла в систему.”
Криптографические параметры:
Имя поставщика [Type = UnicodeString]: имя KSP, с помощью которого была выполнена операция. Может иметь одно из указанных ниже значений.
Поставщик ключа служба хранилища программного обеспечения
Microsoft Smart Card Key служба хранилища поставщик
Имя алгоритма [Type = UnicodeString]: имя криптографического алгоритма, с помощью которого использовался или был доступ к ключу. Для операции "Чтение сохраняемого ключа из файла" это обычно имеет значение "UNKNOWN". Может также иметь одно из следующих значений:
RSA — алгоритм, созданный Роном Ривестом, Ади Шамиром и Леонардом Адлеманом.
DSA — алгоритм цифровой подписи.
ECDH_P521 — Diffie-Hellman с длиной ключа 512-битных клавиш.
ECDH_P384 — Diffie-Hellman эллиптической кривой с длиной ключа 384 бита.
ECDH_P256 — Diffie-Hellman эллиптического Diffie-Hellman с длиной ключа 256-битного ключа.
ECDSA_P256 — алгоритм цифровой подписи эллиптической кривой с длиной ключа в 256 бит.
ECDSA_P384 — алгоритм цифровой подписи эллиптической кривой с 384-битной длиной ключа.
ECDSA_P521 — алгоритм цифровой подписи эллиптической кривой с 521-битной длиной ключа.
Имя ключа [Type = UnicodeString]: имя ключа (контейнер ключа), с которым выполнена операция. Например, чтобы получить список **** имен ключей для сертификатов для входа в пользователя, можно использовать "certutil-store-user my" command and check Key Container parameter in the output. Вот пример вывода:
Тип ключа [Type = UnicodeString]: может иметь одно из следующих значений:
"Ключ пользователя". — криптографический ключ пользователя.
"Ключ машины". — криптографический ключ машины.
Дополнительные сведения:
Операция [Type = UnicodeString]: выполненная операция. Примеры:
"Экспорт сохраняемого криптографического ключа." — обычно создается во время операций чтения ключей, что означает, что ключ был взят для целей чтения. Но он также создается во время реальных ключевых экспортных операций (например, экспортного сертификата с закрытым ключом).
"Импорт сохраняемого криптографического ключа." — выполнена операция по импорту ключей (например, сертификат импорта с закрытым ключом).
Код return [Type = HexInt32]: имеетзначение 0x0для событий успеха. Для событий сбоя предоставляется код кода гексадецимальной ошибки.
-->
Описание события:
Это событие создается при выполнении операции (чтение, запись, удаление и т. п.) в файле, содержашем ключ KSP с помощью поставщика ключей служба хранилища (KSP). Это событие создается только в том случае, если был использован один из следующих KSP:
Поставщик ключа служба хранилища программного обеспечения
Microsoft Smart Card Key служба хранилища поставщик
Эти события можно увидеть, например, во время обновления сертификатов или операций экспорта с помощью KSP.
Примечание. Рекомендации приведены в разделе Рекомендации по мониторингу безопасности для этого события.
XML события:
Необходимые роли сервера: нет.
Минимальная версия ОС: Windows Server 2008, Windows Vista.
Версии события: 0.
Описания полей:
Тема:
- Security ID [Type = SID]: SID учетной записи, запрашиваемой операцией файла ключей. Средство просмотра событий автоматически пытается разрешить идентификатор безопасности SID и отобразить имя учетной записи. Если идентификатор безопасности разрешить не удается, в событии будут отображены исходные данные.
Примечание. . Идентификатор безопасности (SID) представляет собой строковое значение переменной длины, которое используется для идентификации доверенного лица (субъекта безопасности). Каждая учетная запись имеет уникальный идентификатор безопасности, выданный центром сертификации, таким как контроллер домена Active Directory, который хранится в базе данных безопасности. Каждый раз, когда пользователь входит в систему, система получает идентификатор безопасности этого пользователя из базы данных и помещает ее в маркер доступа этого пользователя. Система использует идентификатор безопасности в маркере доступа для идентификации пользователя во всех последующих операциях с Безопасностью Windows. Если идентификатор SID использовался как уникальный идентификатор для пользователя или группы, он не может использоваться повторно для идентификации другого пользователя или группы. Дополнительные сведения о SID см. в разделе Идентификаторы безопасности.
Имя учетной записи [Type = UnicodeString]: имя учетной записи, запрашиваемой операцией файла ключа.
Account Domain [Type = UnicodeString]: домен субъекта или имя компьютера. Форматы различаются и включают в себя следующее:
Пример имени домена NETBIOS: CONTOSO
Полное имя домена в нижнем регистре: contoso.local
Полное имя домена в верхнем регистре: CONTOSO.LOCAL
Для некоторых известных субъектов безопасности, таких как LOCAL SERVICE или ANONYMOUS LOGON, значение этого поля равно "NT AUTHORITY".
Для учетных записей локальных пользователей это поле будет содержать имя компьютера или устройства, к которым принадлежит эта учетная запись, например: "Win81".
Logon ID [Type = HexInt64]: шестнадцатеричное значение, которое может помочь сопоставить это событие с недавними событиями содержащими тот же идентификатор входа, например: “4624: Учетная запись успешно вошла в систему.”
Криптографические параметры:
Имя поставщика [Type = UnicodeString]: имя KSP, с помощью которого была выполнена операция. Может иметь одно из указанных ниже значений.
Поставщик ключа служба хранилища программного обеспечения
Microsoft Smart Card Key служба хранилища поставщик
Имя алгоритма [Type = UnicodeString]: имя криптографического алгоритма, с помощью которого использовался или был доступ к ключу. Для операции "Чтение сохраняемого ключа из файла" это обычно имеет значение "UNKNOWN". Может также иметь одно из следующих значений:
RSA — алгоритм, созданный Роном Ривестом, Ади Шамиром и Леонардом Адлеманом.
DSA — алгоритм цифровой подписи.
ECDH_P521 — Diffie-Hellman с длиной ключа 512-битных клавиш.
ECDH_P384 — Diffie-Hellman эллиптической кривой с длиной ключа 384 бита.
ECDH_P256 — Diffie-Hellman эллиптического Diffie-Hellman с длиной ключа 256-битного ключа.
ECDSA_P256 — алгоритм цифровой подписи эллиптической кривой с длиной ключа в 256 бит.
ECDSA_P384 — алгоритм цифровой подписи эллиптической кривой с 384-битной длиной ключа.
ECDSA_P521 — алгоритм цифровой подписи эллиптической кривой с 521-битной длиной ключа.
Имя ключа [Type = UnicodeString]: имя ключа (контейнер ключа), с которым выполнена операция. Например, чтобы получить список **** имен ключей для сертификатов для входа в пользователя, можно использовать "certutil-store-user my" command and check Key Container parameter in the output. Вот пример вывода:
Тип ключа [Type = UnicodeString]: может иметь одно из следующих значений:
"Ключ пользователя". — криптографический ключ пользователя.
"Ключ машины". — криптографический ключ машины.
Сведения о операции с ключами:
Путь файла [Тип = UnicodeString]: полный путь и имя файла ключевого файла, на котором была выполнена операция.
Операция [Type = UnicodeString]: выполненная операция. Примеры:
Записывной ключ для файла.
Чтение сохраняемой клавиши из файла.
Удаление файла ключа.
Код return [Type = HexInt32]: имеетзначение 0x0для событий успеха. Для событий сбоя предоставляется код кода гексадецимальной ошибки.
-->
Подкатегории: Файловая системааудита, объект ядра аудита, реестраудита и съемные служба хранилища
Описание события:
Это событие указывает на то, что на объекте была выполнена определенная операция. Объект может быть объектом файловой системы, ядра или реестра или объектом файловой системы на съемных хранилищах или устройстве.
Это событие создается только в том случае, если saCL объекта требует ACE для обработки определенного использования права доступа.
Основное отличие от"4656:запрашивалась ручка объекта". событие состоит в том, что 4663 показывает, что право доступа использовалось вместо просто запрашиваемого, а в 4663 нет событий отказа.
Примечание. Рекомендации приведены в разделе Рекомендации по мониторингу безопасности для этого события.
XML события:
Необходимые роли сервера: нет.
Минимальная версия ОС: Windows Server 2008, Windows Vista.
Версии события:
0 — Windows Server 2008, Windows Vista.
1 — Windows Server 2012, Windows 8.
Описания полей:
Тема:
- Security ID [Type = SID]: SID учетной записи, которая предприняла попытку доступа к объекту. Средство просмотра событий автоматически пытается разрешить идентификатор безопасности SID и отобразить имя учетной записи. Если идентификатор безопасности разрешить не удается, в событии будут отображены исходные данные.
Примечание. . Идентификатор безопасности (SID) представляет собой строковое значение переменной длины, которое используется для идентификации доверенного лица (субъекта безопасности). Каждая учетная запись имеет уникальный идентификатор безопасности, выданный центром сертификации, таким как контроллер домена Active Directory, который хранится в базе данных безопасности. Каждый раз, когда пользователь входит в систему, система получает идентификатор безопасности этого пользователя из базы данных и помещает ее в маркер доступа этого пользователя. Система использует идентификатор безопасности в маркере доступа для идентификации пользователя во всех последующих операциях с Безопасностью Windows. Если идентификатор SID использовался как уникальный идентификатор для пользователя или группы, он не может использоваться повторно для идентификации другого пользователя или группы. Дополнительные сведения о SID см. в разделе Идентификаторы безопасности.
Имя учетной записи [Type = UnicodeString]: имя учетной записи, которая предприняла попытку доступа к объекту.
Account Domain [Type = UnicodeString]: домен субъекта или имя компьютера. Форматы различаются и включают в себя следующее:
Пример имени домена NETBIOS: CONTOSO
Полное имя домена в нижнем регистре: contoso.local
Полное имя домена в верхнем регистре: CONTOSO.LOCAL
Для некоторых известных субъектов безопасности, таких как LOCAL SERVICE или ANONYMOUS LOGON, значение этого поля равно "NT AUTHORITY".
Для учетных записей локальных пользователей это поле будет содержать имя компьютера или устройства, к которым принадлежит эта учетная запись, например: "Win81".
Logon ID [Type = HexInt64]: шестнадцатеричное значение, которое может помочь сопоставить это событие с недавними событиями содержащими тот же идентификатор входа, например: “4624: Учетная запись успешно вошла в систему.”
Объект:
Object Server [Type = UnicodeString]: имеет значение "Безопасность" для этого события.
Тип объекта [Type = UnicodeString]: тип объекта, который был доступ во время операции.
В следующей таблице содержится список наиболее распространенных типов объектов:
Имя объекта [Тип = UnicodeString]: имя и другие идентифицирующие сведения для объекта, для которого запрашивался доступ. Например, для файла будет включен путь.
Handle ID [Type = Pointer]: hexadecimal value of a handle to Object Name. Это поле можно использовать для корреляции с другими событиями, например с полем Handle ID в"4656(S, F): запрашивалась ручка объекта". Этот параметр может не быть захвачен в событии, и в этом случае отображается как "0x0".
Атрибуты ресурса [Type = UnicodeString] [Версия 1]: атрибуты, связанные с объектом. Для некоторых объектов поле не применяется и отображается "-".
Например, для файла может отображаться следующее: S:AI (RA;ID;;;; WD;("Impact_MS", TI,0x10020,3000))
Impact_MS: ID свойства ресурса.
Сведения о процессе:
Process ID [Type = Pointer]: hexadecimal Process ID процесса, который получил доступ к объекту. ИД процесса (PID) — это число, которое операционная система использует для идентификации активного процесса уникальным образом. Узнать значение PID для определенного процесса можно, например, в диспетчере задач (вкладка "Подробности", столбец "ИД процесса"):
Если преобразовать шестнадцатеричное значение в десятичное, можно сравнить его со значениями в диспетчере задач.
Кроме того, можно сопоставить этот ИД процесса с ИД процесса в других событиях, например в событии "4688: создан процесс" Информация о процессе\ ИД нового процесса.
Имя процесса [Type = UnicodeString]: полный путь и имя исполняемого для процесса.
Сведения о запросе на доступ:
- Доступ [Тип = UnicodeString]: список прав доступа, которые были использованы subject\Security ID. Эти права доступа зависят от типа объекта. В следующей таблице содержатся сведения о наиболее распространенных правах доступа для объектов файловой системы. Права доступа для объектов реестра часто похожи на объекты файловой системы, но в таблице содержится несколько заметок о том, как они различаются.
Таблица 15. Права доступа к объектам файловой системы.
- Access Mask [Type = HexInt32]: hexadecimal mask for the requested or performed operation. Дополнительные сведения см. в предыдущей таблице.
TIDB Двоичного Источник чтение Чтение статья (7) Drainer сервер Введение
Автор: Хуан Jiahao В предыдущей статье вводится насос сервер, давайте познакомимся реализация Drainer сервера, главная роль Drainer сервера, чтобы получить Двоичный от каждого сервера насоса, и анализ.
Интеллектуальная рекомендация
Читайте также: