# Основные понятия ОС Windows
Операционная система Windows — это семейство операционных систем, разработанных корпорацией Microsoft, которые находят широкое применение в персональных компьютерах и серверах. В данной статье мы рассмотрим основные понятия операционной системы Windows и ответим на ряд вопросов, связанных с её функциональностью и аспектами безопасности.
## Уровни контекста безопасности
В операционной системе Windows используются уровни контекста безопасности: Low, Medium, High и System. Эти уровни определяют уровень доступа процессов к ресурсам системы и различаются по правам.
## Создание служб в системе
Для создания служб в системе Windows используется уровень контекста безопасности System. Этот уровень обладает максимальными привилегиями и позволяет осуществлять создание и управление службами.
## Редактирование ключей в реестре
Минимальный уровень контекста безопасности, позволяющий осуществлять редактирование ключей в реестре, — это Medium. Этот уровень предоставляет достаточные права для внесения изменений в реестр.
## Служба wininit
Служба wininit запускается с уровнем контекста безопасности System и выполняет различные задачи при старте системы, такие как запуск автозагрузки и исправление системных ошибок.
## Аутентификация пользователя
Аутентификацию пользователя в системе Windows выполняет служба lsass (Local Security Authority Subsystem Service). Она отвечает за проверку учетных данных пользователя и выдачу соответствующих разрешений.
## Создание/удаление служб
**Создание службы с использованием утилиты `sc` в командной строке:**
```bash
sc create MyService binPath= "C:\Path\To\Your\Service.exe" start= auto
```
Эта команда создаст новую службу с именем "MyService". `binPath` указывает на путь к исполняемому файлу службы, который будет запущен при старте службы. Опция `start= auto` устанавливает автоматический запуск службы при старте системы.
**Удаление службы с использованием утилиты `sc` в командной строке:**
```bash
sc delete MyService
```
Эта команда удалит службу с именем "MyService". Перед удалением службы убедитесь, что служба остановлена, иначе процесс удаления может завершиться ошибкой.
Обратите внимание, что в команде `sc create` вы должны указать правильный путь к исполняемому файлу вашей службы, а в команде `sc delete` укажите имя службы, которую вы хотите удалить.
## Реестр Windows
Реестр Windows представляет собой централизованное хранилище конфигурационной информации и настроек операционной системы. В нем хранятся параметры приложений, настройки системы, информация о учетных записях и другие данные.
## Изменение реестра
Для внесения изменений в реестр Windows используется команда `reg`. Эта команда предоставляет доступ к редактированию записей реестра.
## Автозапуск
В операционной системе Windows существует несколько мест, где могут находиться записи для автозапуска приложений. Вот некоторые из них:
1. **Папка "Startup" в меню "Пуск":**
- Путь: `C:\Users\{Пользователь}\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup`
- Запускаемые программы в этой папке будут автоматически запускаться при входе в систему для конкретного пользователя.
2. **Папка "Common Startup" в меню "Пуск":**
- Путь: `C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup`
- Программы, размещенные здесь, будут запускаться при входе в систему для всех пользователей.
3. **Реестр Windows:**
- Ветка для текущего пользователя: `HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run`
- Ветка для всех пользователей: `HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run`
- В этих ветках содержатся записи, указывающие на программы, которые будут автоматически запускаться при старте системы.
4. **Планировщик задач (Task Scheduler):**
- Задачи, запланированные для выполнения при старте системы, могут быть созданы в Планировщике задач.
5. **Групповая политика (Group Policy):**
- Настройки автозапуска могут быть определены через групповые политики в среде домена.
6. **Сервисы Windows:**
- Некоторые программы устанавливают себя в качестве служб Windows и запускаются автоматически.
7. **Различные ключи реестра:**
- Некоторые приложения могут создавать свои собственные ключи в реестре для автозапуска.
При администрировании системы важно регулярно проверять эти места, чтобы контролировать, какие программы запускаются при старте системы, и управлять этим процессом для обеспечения безопасности и оптимизации производительности.
## Командная строка процесса
Командная строка процесса в Windows определяет параметры, с которыми был запущен процесс. Она содержит информацию о пути к исполняемому файлу, а также о переданных ему параметрах.
## Отличие PID от GUID процесса
PID (Process ID) — это уникальный идентификатор процесса в рамках пользовательской сессии. В отличие от PID, GUID (Globally Unique Identifier) — это глобальный идентификатор процесса, который не зависит от конкретной сессии пользователя.
## Взаимодействие с службой lsass
Процесс может обращаться к службе lsass для получения данных о других учетных записях, аутентификации пользователя в системе и обеспечения корректной работы механизма Single Sign-On (SSO).
## Учетная запись krbtgt
Учетная запись krbtgt является ключевой для системы аутентификации Kerberos. Она обладает уникальным SID на всех контроллерах домена, используется для подписи билетов и не может быть изменена.
## TGT, TGS, KRBTGT, KDC
- TGT (Ticket Granting Ticket) — билет, выданный при успешной аутентификации, который используется для получения других билетов.
- TGS (Ticket Granting Service) — служба выдачи билетов, отвечающая за предоставление билетов для доступа к конкретным службам.
- KRBTGT — учетная запись, используемая для шифрования ключей аутентификации в системе Kerberos.
- KDC (Key Distribution Center) — центр распределения ключей, обеспечивающий выдачу билетов и управление ключами.
## SPN (Service Principal Name)
SPN — это уникальное имя, привязанное к службе, предоставляемой сервером в сети. Он используется для однозначной идентификации службы и предоставления ей возможности аутентификации.
## Права администратора домена
Учетная запись администратора домена обладает правами администратора на всех хостах того же домена. Это позволяет выполнять различные административные задачи в пределах всей доменной сети.
## Хранение пароля доменного администратора
Пароль доменного администратора не хранится в открытом виде. Хеш пароля сохраняется на контроллере домена, обеспечивая безопасность учетных данных.
## Обозначение учетной записи хоста в домене
Учетная запись хоста в домене обозначается в формате `hostname$`. Это уникальное имя, которое предоставляет идентификацию хоста в рамках доменной сети.
## Неменяющийся параметр при переименовании доменной учетной записи
При переименовании доменной учетной записи SID (Security Identifier) остается неизменным. Этот параметр определяет уникальность учетной записи в домене.
## Типы входов
Событие 4624 в журнале Security операционной системы Windows соответствует успешному входу пользователя в систему. Это событие содержит различные атрибуты и информацию о входе. В частности, типы входов (Logon Type) определяют способ, которым пользователь вошел в систему. Вот некоторые типы входов, которые могут быть указаны в событии 4624:
1. **Interactive (Тип 2):** Вход в систему через локальную консоль, например, физическую клавиатуру и монитор.
2. **Network (Тип 3):** Вход в систему через сетевую аутентификацию, такую как при обмене файлами или печати по сети.
3. **Batch (Тип 4):** Вход в систему, выполненный в рамках планировщика задач (batch job), например, по расписанию.
4. **Service (Тип 5):** Вход в систему, выполненный службой. Например, служба может входить в систему, чтобы выполнить какую-то задачу.
5. **Unlock (Тип 7):** Вход в систему после разблокировки экрана. Обычно связан с сеансом работы пользователя.
6. **RemoteInteractive (Тип 10):** Удаленный вход в систему, осуществленный через Remote Desktop или другие средства удаленного управления.
Эти типы входов предоставляют информацию об обстоятельствах успешного входа пользователя в систему и могут быть полезными при анализе безопасности и мониторинге активности пользователей.
## Системные процессы
- `services.exe` — процесс, отвечающий за управление службами в системе.
- `schtasks.exe` — утилита для управления планировщиком задач.
- `explorer.exe` — оболочка системы, отвечающая за отображение рабочего стола и управление файлами.
- `winlogon.exe` — процесс, связанный с входом и выходом из системы.
- `svchost.exe` — процесс, который загружает службы Windows в общий процесс для оптимизации ресурсов.
- `lsass.exe` — Local Security Authority Subsystem Service, обеспечивает безопасность локальной системы.
- `rundll32.exe` — процесс, позволяющий выполнять функции в виде динамических библиотек (DLL).
- `regsvr32.exe` — утилита для регистрации и отмены регистрации DLL-файлов в системном реестре.
- `mstsc.exe` — клиент удаленного рабочего стола, предоставляющий доступ к удаленным компьютерам.
## Потенциальные места для закрепления в системе
Автозапуск приложений в Windows может осуществляться через различные места, такие как записи в реестре, ярлыки в директории автозапуска, службы, планировщик задач и другие.
## Хранение учетных данных пользователей
Учетные данные пользователей могут быть сохранены в зашифрованном виде в системных файлах, хранилищах паролей, в реестре, а также в специальных ключах системы.
## Создание пользователя через командную строку
Команда `net user` в командной строке Windows используется для управления учетными записями пользователей. Для создания нового пользователя выполните следующую команду:
```bash
net user ИмяПользователя Пароль /add
```
Где:
- `ИмяПользователя` - имя нового пользователя, которое вы хотите создать.
- `Пароль` - пароль для новой учетной записи.
Пример создания пользователя с именем "John" и паролем "Password123":
```bash
net user John Password123 /add
```
После выполнения этой команды будет создан новый пользователь "John" с указанным паролем. Обратите внимание, что при создании пользователя через `net user` пароль учетной записи будет установлен в виде, который вы указали в команде.
## Заключение
Эта статья предоставляет обзор основных понятий операционной системы Windows, включая уровни контекста безопасности, процессы, службы, реестр, аутентификацию и другие ключевые аспекты. Понимание этих основных понятий является важным для администраторов систем и разработчиков, работающих с платформой Windows.