Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   BitLocker-Laufwerk mit Delphi öffnen (https://www.delphipraxis.net/207644-bitlocker-laufwerk-mit-delphi-oeffnen.html)

DieDolly 18. Apr 2021 10:30

BitLocker-Laufwerk mit Delphi öffnen
 
Ist es möglich ein mit BitLocker verschlüsseltes und passwortgeschütztes Laufwerk mit Delphi zu öffnen und dabei die Passwordabfrage einzublenden?
Ohne Passwortabfrage ist auch ok, wenn man das Passwort übergeben könnte.

KodeZwerg 18. Apr 2021 10:56

AW: BitLocker-Laufwerk mit Delphi öffnen
 
Ich habe leider kein BitLocker aktiv, aber eine Idee für einen Ansatz:
Delphi-Quellcode:
ShellExecute(Handle, 'explore', PChar('_das_bitlocker_laufwerk_)', nil, nil, SW_SHOW);
Damit überlässt Du Windows das öffnen (in einem Explorer Fenster)

jaenicke 18. Apr 2021 11:30

AW: BitLocker-Laufwerk mit Delphi öffnen
 
Du könntest ein Powershell Skript starten, das das Passwort abfragt (oder du übergibst es an das Skript) und dann das Laufwerk mit Unlock-Bitlocker entsperrt. Bedenke dabei, dass es ein SecureString sein muss, du das Passwort also entweder in der Powershell direkt mit AsSecureString abfragen oder mit ConvertTo-SecureString umwandeln musst.

DieDolly 18. Apr 2021 16:18

AW: BitLocker-Laufwerk mit Delphi öffnen
 
Kann man vorher herausfinden, ob es sich um ein BitLocker-Laufwerk handelt? Mit Delphi, nicht PowerShell.

mmw 18. Apr 2021 16:39

AW: BitLocker-Laufwerk mit Delphi öffnen
 
hallo,

das sollte über WMI funktionieren.

https://docs.microsoft.com/de-de/win...ryptablevolume

bzw. in Englisch

https://docs.microsoft.com/en-us/win...ryptablevolume

https://github.com/RRUZ/wmi-delphi-code-creator

KodeZwerg 18. Apr 2021 17:02

AW: BitLocker-Laufwerk mit Delphi öffnen
 
Zitat:

Zitat von mmw (Beitrag 1487366)
das sollte über WMI funktionieren

passend dazu hier wmi abfragen zum thema bitlocker :-)

mmw 18. Apr 2021 17:17

AW: BitLocker-Laufwerk mit Delphi öffnen
 
wenn man den wmi-delphi-code- creator benutzt sieht's so aus. für Laufwerk C:


Delphi-Quellcode:
uses ActiveX,ComObj;
Delphi-Quellcode:
const
  WbemUser = '';
  WbemPassword = '';
  WbemComputer = 'localhost';
  wbemFlagForwardOnly = $00000020;
var
  FSWbemLocator,
  FWMIService,
  FWbemObjectSet,
  FWbemObject: OLEVariant;
  oEnum: IEnumvariant;
  iValue: LongWord;
begin;
  FSWbemLocator := CreateOleObject('WbemScripting.SWbemLocator');
  FWMIService := FSWbemLocator.ConnectServer(WbemComputer, 'root\CIMV2\Security\MicrosoftVolumeEncryption', WbemUser, WbemPassword);
  FWbemObjectSet := FWMIService.ExecQuery('SELECT * FROM Win32_EncryptableVolume where DRIVELETTER=''C:''', 'WQL', wbemFlagForwardOnly);

 oEnum := IUnknown(FWbemObjectSet._NewEnum) as IEnumVariant;

while oEnum.Next(1, FWbemObject, iValue) = 0 do
  begin
    memo1.lines.add(Format('ConversionStatus                   %d',[Integer(FWbemObject.ConversionStatus)]));
    memo1.lines.add(Format('DriveLetter                        %s',[String(FWbemObject.DriveLetter)]));
    memo1.lines.add(Format('EncryptionMethod                   %d',[Integer(FWbemObject.EncryptionMethod)]));
    memo1.lines.add(Format('IsVolumeInitializedForProtection   %s',[String(FWbemObject.IsVolumeInitializedForProtection)]));
    memo1.lines.add(Format('PersistentVolumeID                 %s',[String(FWbemObject.PersistentVolumeID)]));
    memo1.lines.add(Format('ProtectionStatus                   %d',[Integer(FWbemObject.ProtectionStatus)]));
    memo1.lines.add(Format('VolumeType                         %d',[Integer(FWbemObject.VolumeType)]));

    FWbemObject:=Unassigned;
  end;
PRG muss man mit ADMIN Rechten ausführen.

DieDolly 18. Apr 2021 17:25

AW: BitLocker-Laufwerk mit Delphi öffnen
 
WMi ohne Admin geht nicht? Dann ist das leider nicht brauchbar für mich, weil man unter anderem nicht auf Netzlaufwerke zugreifen kann. Egal es war einen Versuch wert danke.


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:01 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz