<sub class="descriptionSection">03-06-2025 08:35:am // #Tag // [[BA]]</sub>
____
<pre>
- TODO Lernen BA [[2025-06-05]] Kaptitel 5 bis 12
- Windows Benutzer und Gruppen
- MMC (Microsoft Management Console)
- Besteht aus Modulen (Snapins)
- Standardgruppen vs Spezielle Identitätsgruppen
- Benutzer können NUR zu Standardgruppen hinzugefügt werden
- Spezielle Identitätsgruppen sind z. B. Jeder oder Besitzer. Es sind Gruppen die Automatisch von Windows erstellt und verwaltet
- Spezielle Identitätsgruppen können Mitglied von Standardgruppen sein
- Lokale Gruppen können **nicht** verschachtelt werden
- Powershell Befehle verstehen
- Lokale Benutzerprofile
- C:\Users\username
- Werden kopiert aus C:\Users\default
- Benutzerrechte / Systemprivilegien
- Systemprivilegien sind im Access-Token gespeichert (wird beim anmelden erstellt)
- **WICHTIG**: Anzeigen der aktuellen Privilegien`whoami /priv`
- Privilegien ändern mit MMC in Gruppenrichtlinien
- Tools
- Windows
- Datenträgerverwaltung (GUI)
- Linux
- gParted Partitionsmanager (mit GUI) bzw. Linux-Distribution
- Partitionierung
- Paritionstabelle: MBR (**Master Boot Record**) vs GPT (**GUID Partition Table**)
- MBR
- max. 4 Partitionen
- Ab 4 erweiterte
- Max. 4TB Festplatte
- kann kein UEFI
- GPT
- 128 Partitionen
- Max. fast unbegrenzt
- Kann UEFI
- Volume vs Partition
- Partition ist ein fixer Teil einer Festplatte, ohne Dateisystem
- Volume ist ein abstrackter logischer Bereich MIT Dateisystem. Kann sich auch über mehrere Festplatten erstrecken.
- Linux Festplatten: `/dev/sdX`
Paritionen: `/dev/sdXY`
- Mountpoints sind in `/etc/fstab`
- `/mnt` als wird oft als Mountpoint verwendet `sudo mount /dev/sda1 /mnt`
- Dateisysteme
- siehe Tabelle Kapitel 9.1 (2 Beispiele und Unterschiede zwischen ihnen)
- Windows Standard Attribute
- schreibgeschützt
- versteckt (wird nicht im Explorer nicht angezeigt)
- archiv (Kann von einem Backupsystem ausgelesen werden)
- System (geht nur über die Konsole) (Systemdateien werden nicht Standardmäßig angezeigt)
- Zusätzliche Attribute
- Komprimierung von Ordner
- Verschlüsseln von Dateien und Ordnern
- Bitlocker
- Verschlüsselt die gesamte Partition
- RAID (Redundant Array of Idependent Disks)
- RAID ersetzt **kein** Backup
- RAID 0 (Stripset)
- keine redundant
- min. 2 Disks
- RAID 1 (Mirror)
- Redundanz
- min. 2 Disks
- RAID 5 (Parität)
- Redundanz
- min. 3 Disks
- evtl. Geschwindigkeitsvorteile
- Berechnen der Nettospeicherkapazität
- Authentifizierung
- Windows: Access-Token
- da stehen drinn
- gruppen
- sid
- systemprivilegien
- Linux: uid
- Authorisierung
- Windows: Security Descriptor auf sicherungsfähigen Objekten (Ordner Laufwerke, ...)
- SID des Besitzers
- DACL (Discretinary Access Control List)
- SACL (System Access Control List)
- ACE (Access Control Entry)
- Trustee
- ACEType (allow / deny)
- Konsolentools für NTFS-Berechtigungen
- icalcs
- DACLs lesen oder ändern
</pre>
## Kapitel 5 Benutzer und Gruppen
Einstellungen -> Konten:
- Konfiguration eigener Account, andere Accounts erstellen / löschen
Systemsteuerung -> Benutzerkonten:
- Vorhandene Benutzer löschen, **keine** neuen Benutzer erstellen
MMC:
- Benutzer und Gruppen erstellen, bearbeiten und löschen
CMD:
```cmd
# Anzeigen
net user
net localgroup
```
Powershell:
```powershell
New-LocalUser
New-LocalGroup
Get-LocalUser
Get-LocalGroup
Set-LocalUser
Set-LocalGroup
Remove-LocalUser
Remove-LocalGroup
```
### Eigenschaft Benutzerkontos
- SID
- Name
- Passwort
- Profilpfad: %userprofile% (Stanard: C:\Users\BENUTZERNAME)
- Anmeldeskript (Logon Script)
- Basisordner (Home Directory): %HOMEDRIVE\%%HOMEPATH%
Datenbank mit lokalen Benutzerkonten: Security Accounts Manager: %WINDIR%\System32\config\SAM
### Standardgruppen
Diese Gruppen können Benutzerkonten und spezielle Identitätsgruppen beinhalten. Standardgruppen können nicht verschachtelt werden und sind gruppen wie:
- \BUILTINS\Administrators
- \BUILTINS\Users
- etc.
Liste anzeigen:
```powershell
# cmd
net localgroup
# powershell
Get-LocalGroup | Sort-Object -Property SID | Format-Table Name, SID, Description
```
### Spezielle Identitätsgruppen
Sind Gruppen denen User nicht automatisch zugewiesen werden und auch nicht manuell zugewiesen sind. Diese Gruppen können NTFS-Berechtigungen erhalten und diese Gruppen können Mitglieder von Standardgruppen sein.
Beispiel:
- \Everyone
- \CONSOLE LOGON
## 6. Lokale Benutzerprofile
Lokale Benutzerprofile werden initialisiert beim ersten anmelden, das beinhaltet erstellen des user verzeichnisses als Kopie von `C:\Users\Default` und das anlegen von NTUSER.DAT das Registry Einstellungen des Kontos enthält.
Der User Folder darf nicht einfach so gelöscht werden. Zuerst muss das Benutzerkonto gelöscht werden sonst existiert noch ein Registry Eintrag für den User und beim nächsten Anmelden wird ein Temporäres Profil unter `C:\Users\TEMP` erstellt.
## 7. Systemprivilegien / Benutzerrechte
Bei der Anmeldung bekommt jeder User ein Access-Token, da stehen die SID und Gruppen drinnen in denen der User ist und es stehen drinnen welche Privilegien der User hat (z.B SeSystemtimePrivilege).
Anzeigen der Privilegien:
```cmd
whoami /priv
```
Ändern kann man privilegien unter Gruppenrichtlinien -> Computerkonfiguration -> Windows-Einstellungen -> Sicherheitsheinstellungen -> Lokale Richtlinien -> Zuweisen von Benutzerrechten
## 8. Datenträgerverwaltung
Windows nutzt mmc-Snap-Ins zur Datenträgerverwaltung oder Powershell:
```powershell
Get-Disk
Get-Partition -DiskNumber 0
```
Oder mit diskpart:
```cmd
diskpart
list disk
select disk 0
# Disk 0 ist jetzt gewählt
list partition
# Liefert alle partitions von disk 0 zurück
# Volumes anzeigen
detail disk
```
### 8.2 Linux Tools
Linux hat verschiedene partitions tools (und distros). gParted ist ein Grafisches Partitions Programm und wird auch als distro zum live-boot angeboten.
Ich würd aber weiter fdisk hernehmen, weil schneller und einfacher
### Partitionstabelle
Jede Platte hat eine Partitionstabelle. In dieser Partitionstabelle steht welche partitionen eine Festplatte hat und von wo bis wo (physisch) eine partitions geht. Es gibt zwei arten von Partitionstabellen:
- MBR (Master Boot Record aka the old shit)
- Unterstützt nur BIOS
- Partitionstabelle liegt in den ersten 512 Byte (erster Block) der Festplatte
- maximale Festplattengröße: 4TiB
- maximale Partitionsgröße: 2TiB
- maximal 4 primäre Partitionen
- oder 4 primäre und 1 erweiterte Partition mit logischen Laufwerken
- GPT (GUID Partition Table)
- Unterstützt nur UEFI
- UEFI unterstützt auch MBR im csm compatibility mode (afaik)
- Der UEFI Bootloader liegt auf der ESP (EFI System Partition) auf einer GPT Festplatte
- bis zu 128 Partitionen
- maximale Platten und Partitionsgröße: Quasi unbegrenzt
### Unterschied Volume und Partition
- Partion: Fester physischer Bereich bestehend aus **aufeinanderfolgenden** Speicherblöcken bzw Sektoren **einer** Festplatte
- Volume: Abstraker logischer Bereich mit einem Dateisystem, auf dem das Betriebssystem Daten speichern kann. Kann auch auf mehreren Festplatten liegen
### Linux Partionen
Linux Festplatten liegen in /dev/sdx partitionen unter /dev/sdxn und partitionen werden meistens unter /mnt gehängt. Die Mountpoints sind definiert in /etc/fstab
## 9. Dateisysteme
Basically:
- NTFS, ReFS nur für Windows
- APFS für Apple
- Alles andere für alles
- FAT 16, und 32 nur für kleinere partitionen (z.B UEFI) ohne viel schreibvorgänge
- exFAT fucking stupid
- ext4, NTFS, ReFS für OS partitionen mit viel schreibvorgängen
### Dateiattribute:
- schreibgeschützt
- versteckt
- Archiv
- System
#### Zusätzliche NTFS Attribute
- Komprimierung von Ordnern
- Verschlüsselung einzelner Ordner mit EFS (Encrypting Filesystem) und können nur vom jeweiligen Benutzer entschlüsselt werden
- Zertifikat management: mmc-Snap-In Zertifikate
### Bitlocker
Bitlocker verschlüsselt komplette partitionen (ach der Systempartition). Kann unter Systemsteuerung -> Bitlocker eingerichtet werden
## 10. RAID
Yoa halt raid
## 11. NTFS-Berechtigungen
Zwei große Bereiche:
- Authentifizierung (Wer greift zu?)
- Autorisierung (Zuweisung von Zugriffsrechten)
### Authentifizierung
Access Token wird beim Einloggen eines Benutzers erstellt und jeder Prozess bekommt eine Kopie von diesem Access Token
In einem Access-Token steht drinnen:
- SID des Benutzers
- SIDs der Gruppen, in denen der Benutzer Mitglied ist
- Liste von Systemprivilegien des Benutzers und der Gruppen
- logon SID der Session
- SID des Besitzers
- SID der primary group
- etc.
```cmd
whoami
whoami /groups
whoami /priv
whoami /all
```
### Autorisierung
Jedes sicherungsfähige Object (also Laufwerk, Ordner, Datei, etc.) kann, muss aber nicht, einen Security Descriptor haben. Der legt fest wer wie auf das Object zugreifen darf.
In einem SD (Security Descriptor) steht:
- SID des Besitzers
- DACL (discretionary Access Control List): Array \<ACE>
- DACL_PROTECTED (erben von oben?):boolean
- SACL (System Access Control List): Array \<ACE>
- SACL_PROTECTED (erben von oben?): boolean
Ein ACE (Access Control Entry) eintrag besteht aus:
- Trustee (Benutzer oder Gruppe)
- ACEType (Allow / Deny)
- ACEFlags (vererben an)
- Diesen Ordern
- Unterordner
- Dateien
- ACEMask (Rechte)
- lese
- schreiben
## 12. Konsolentools für NTFS-Berechtigungen
1. icacls
DACLs lesen oder ändern. Es gibt folgende Symbole für folgende Berechtigungen:
| Symbol | Grundlegende Berechtigung | Symbol bei Konvention |
| ------ | ---------------------------------------- | --------------------- |
| F | Vollzugriff | V |
| M | Ändern | LS |
| RX | Lesen, Ausführen (Ordnerinhalt anzeigen) | L |
| R | Lesen | |
| W | Schreiben | |
Dann gibt es noch das erben von oben:
| Symbol | Vererbung |
| ------ | ------------------------------------- |
| (I) | geerbt vom übergeordneten Verzeichnis |
Es gibt noch folgende andere Methoden zur vererbung:
| Symbol | Berechtigungen gelten für |
| ------ | ---------------------------------------------------------------------------------------- |
| (OI) | Dateien |
| (CI) | Unterodner |
| (IO) | diesen Ordner nicht (erbt nu von oben) |
| (NP) | nur für Ordner und Dateien in diesem Ordner, werden aber nicht weiter nach unten vererbt |
Ausgeben kann man DACLs mit dem command `icacls`:
```powershell
icacls Desktop\Test
```
![[../../Assets/Pasted image 20250604142838.png]]
Um zu setzen:
```cmd
icacls Desktop\Test /grant Anna:(OI)(CI)(RX)
```
In der Powershell
```powershell
Get-ACL .\Desktop\Testordner | Format-List
```