tis-audit-bitlocker
Veröffentlicht: 27. Januar 2026 - 10:31 Uhr
Hallo,
ich habe ein Problem mit der Audit-Funktion dieses Pakets.
Auf einigen unserer Rechner gibt die PowerShell-Funktion "(Get-BitLockerVolume).MountPoint" ungewöhnliche Laufwerksbuchstaben wie \\?\Volume{2d8e1378-6a0d-4197-49d0-fe4e2f18cd72} zurück.
Im weiteren Verlauf des Paketcodes ermöglicht eine for-Schleife (for mountpoint in mountpoint_list:) das Ignorieren dieser Laufwerke mithilfe der is_ignored.
Wenn die Bedingung "?" in mountpoint erfüllt ist (wenn "?" in mountpoint:), wird die is_ignored auf True gesetzt, und das Laufwerk wird für den Rest der Audit-Funktion ignoriert. Das funktioniert soweit.
Mein Problem liegt in den weiteren Bedingungen, die anschließend in derselben Schleife geprüft werden. Es handelt sich dabei um zusätzliche if-Anweisungen, die auch dann geprüft werden, wenn die erste Bedingung bereits erfüllt ist. Beispielsweise löst die Funktion „Get-Volume -DriveLetter %s | Where-Object DriveType -EQ Removable“ in der zweiten Bedingung einen Fehler im Paket aus. Die Fehlermeldung lautet: „Get-Volume: Es wurde kein Positionsparameter gefunden, der 2d8e1378-6a0d-4197-49d0-fe4e2f18cd72 akzeptiert“ usw.
Offensichtlich akzeptiert das Argument „DriveLetter“ den ungewöhnlichen Datenträgernamen nicht. Möglicherweise verursachen die geschweiften Klammern {} einen Syntaxfehler.
Ich habe das Problem umgangen, indem ich die Bedingungen mit „if not is_ignored and“ begonnen habe. Beim Schreiben dieser Nachricht ist mir jedoch klar geworden, dass ich mit „elif“-Anweisungen wahrscheinlich dasselbe Ergebnis erzielen würde.
Mit dieser Änderung funktioniert das Paket etwas besser. Der BitLocker-Schlüssel wird aus Active Directory und der WAPT-Konsole abgerufen. Die Überwachung bleibt jedoch fehlerhaft, da anschließend ein neuer Fehler auftritt. Diesmal bei der PowerShell-Funktion „Get-BitLockerVolume“. (Get-BitLockerVolume: Es konnte kein Positionsargument gefunden werden, das das angegebene Argument akzeptiert...)
Ich habe noch nicht herausgefunden, in welcher Zeile des Audit-Skripts dieser neue Fehler auftritt. Auch die Ursache ist mir noch unklar, da ungewöhnliche Volume-Namen logischerweise nicht mehr verwendet werden sollten. Ich hielt es aber für sinnvoll, die Fehler in dieser ersten Schleife zu melden.
Sobald ich die Ursache für diesen neuen Fehler gefunden habe, werde ich sie hier ergänzen.
Schönen Tag noch.
Vincent
ich habe ein Problem mit der Audit-Funktion dieses Pakets.
Auf einigen unserer Rechner gibt die PowerShell-Funktion "(Get-BitLockerVolume).MountPoint" ungewöhnliche Laufwerksbuchstaben wie \\?\Volume{2d8e1378-6a0d-4197-49d0-fe4e2f18cd72} zurück.
Im weiteren Verlauf des Paketcodes ermöglicht eine for-Schleife (for mountpoint in mountpoint_list:) das Ignorieren dieser Laufwerke mithilfe der is_ignored.
Wenn die Bedingung "?" in mountpoint erfüllt ist (wenn "?" in mountpoint:), wird die is_ignored auf True gesetzt, und das Laufwerk wird für den Rest der Audit-Funktion ignoriert. Das funktioniert soweit.
Mein Problem liegt in den weiteren Bedingungen, die anschließend in derselben Schleife geprüft werden. Es handelt sich dabei um zusätzliche if-Anweisungen, die auch dann geprüft werden, wenn die erste Bedingung bereits erfüllt ist. Beispielsweise löst die Funktion „Get-Volume -DriveLetter %s | Where-Object DriveType -EQ Removable“ in der zweiten Bedingung einen Fehler im Paket aus. Die Fehlermeldung lautet: „Get-Volume: Es wurde kein Positionsparameter gefunden, der 2d8e1378-6a0d-4197-49d0-fe4e2f18cd72 akzeptiert“ usw.
Offensichtlich akzeptiert das Argument „DriveLetter“ den ungewöhnlichen Datenträgernamen nicht. Möglicherweise verursachen die geschweiften Klammern {} einen Syntaxfehler.
Ich habe das Problem umgangen, indem ich die Bedingungen mit „if not is_ignored and“ begonnen habe. Beim Schreiben dieser Nachricht ist mir jedoch klar geworden, dass ich mit „elif“-Anweisungen wahrscheinlich dasselbe Ergebnis erzielen würde.
Mit dieser Änderung funktioniert das Paket etwas besser. Der BitLocker-Schlüssel wird aus Active Directory und der WAPT-Konsole abgerufen. Die Überwachung bleibt jedoch fehlerhaft, da anschließend ein neuer Fehler auftritt. Diesmal bei der PowerShell-Funktion „Get-BitLockerVolume“. (Get-BitLockerVolume: Es konnte kein Positionsargument gefunden werden, das das angegebene Argument akzeptiert...)
Ich habe noch nicht herausgefunden, in welcher Zeile des Audit-Skripts dieser neue Fehler auftritt. Auch die Ursache ist mir noch unklar, da ungewöhnliche Volume-Namen logischerweise nicht mehr verwendet werden sollten. Ich hielt es aber für sinnvoll, die Fehler in dieser ersten Schleife zu melden.
Sobald ich die Ursache für diesen neuen Fehler gefunden habe, werde ich sie hier ergänzen.
Schönen Tag noch.
Vincent