USBSecure Paket

Post Reply
User avatar
Hendrik_Ambrosius
Moderator
Moderator
Posts: 7962
Joined: 13. Dec 2004, 23:10
Location: Adendorf/Lüneburg

USBSecure Paket

Post by Hendrik_Ambrosius » 26. Nov 2005, 13:01

An dieser Stelle möchte ich gern Werbung machen für ein neues Paket, das wir in das KnowHowCenter gestellt haben.

Es blockiert nicht gewünschte USB Geräte und bietet die Möglichkeit, für einzelne PCs oder Gruppen Geräte wieder zu erlauben.

Für eine solche Funktionalität zahlt man sonst viel Geld!

Die Doku ist innerhalb der ZIP-Datei auch in deutsch vorhanden.
Feedback/Ideen sind willkommen.

----

Produkt : Configurator
Kurzbeschreibung : Empirum USBSecure - Disable and allow USB devices
Beschreibung :
The attached installation routine automatically creates 2 additional Empirum packages in the swdepot:

USBSecure:
Disables all USB devices (like memory sticks) by default.

USBDevices:
Reads the IDs of devices attached to a computer and writes it to the configurator\log-folder.
Via "external tools" the admin can access the list of attached devices and add the ones he wants to enable to the ALLOWED_USB_DEVICES-variable.
Reinstallation of USBSecure activates the changes.

Additional documentation can be found in the ZIP-file.

Operating systems supported: Windows XP only
Author: mdistefano@matrix42.de
Hendrik Ambrosius / Senior Presales Consultant
Mobile: +49 172 408 4447 | hendrik.ambrosius@matrix42.com
Matrix42 GmbH | Elbinger Straße 7 | 60487 Frankfurt am Main | Germany | www.matrix42.com

Disclaimer: I participate in this forum on a voluntary basis. Views expressed are not necessarily those of Matrix42 or of the support team.

Holoubek
Posts: 9
Joined: 28. Aug 2005, 22:02
Contact:

Post by Holoubek » 17. Jan 2006, 16:44

Hallo,

hat schon jemand Erfahrungen mit diesem Paket?

Bei meinen Tests, werden alle USB-Geräte (auch die Erlaubten) ausgeworfen. USBSecure.CFG wird korrekt gefüllt. Wir nutzen XP/SP2.

H. Holoubek

User avatar
jockisch
Posts: 236
Joined: 14. Dec 2004, 11:18
Location: Hessen
Contact:

Post by jockisch » 17. Jan 2006, 18:44

Hallo,

mit dieser speziellen Version nicht.

Wir hatten vor einiger Zeit (seit Win XP) die jetzt von matrix angebotene Programme auch laufen. (Ursprunglich von der c't)
Allerdings ohne DB Unterstützung.

Vor einigen Monaten haben wir jedoch festgestellt, dass es dabei Probleme gibt.
Sobald ein USB - Massenspeichergerät eingesteckt wurde, welches nicht erlaubt war und sein soll, werden danach alle USB Massenspeichergeräte ausgeworfen. :cry:
Egal ob erlaubt oder nicht.
Beheben lässt sich dies dann gar nicht mehr, weil der Wert des USB Gerätes in der Registry steht und immer wieder auftaucht.

Wir haben jetzt das VBS Script umgestellt und ein anderes Auswurfprogramm im Einsatz.
Damit haben wir bis jetzt bessere Erfahrungen.
(Allerdings erst bei ein paar Rechnern verteilt)


Viele Grüße
Stephan Jockisch
Last edited by jockisch on 17. Jan 2006, 19:00, edited 1 time in total.

User avatar
Hendrik_Ambrosius
Moderator
Moderator
Posts: 7962
Joined: 13. Dec 2004, 23:10
Location: Adendorf/Lüneburg

Post by Hendrik_Ambrosius » 17. Jan 2006, 18:49

Dieses Auswurfprogramm würde uns auch interessieren, vielleicht können wir es stattdessen in das o.a. Script integrieren.
Läuft es auch mit Windows 2000?
Hendrik Ambrosius / Senior Presales Consultant
Mobile: +49 172 408 4447 | hendrik.ambrosius@matrix42.com
Matrix42 GmbH | Elbinger Straße 7 | 60487 Frankfurt am Main | Germany | www.matrix42.com

Disclaimer: I participate in this forum on a voluntary basis. Views expressed are not necessarily those of Matrix42 or of the support team.

User avatar
jockisch
Posts: 236
Joined: 14. Dec 2004, 11:18
Location: Hessen
Contact:

Post by jockisch » 17. Jan 2006, 20:23

Hallo,

ups ich habe eben gesehen, dass matrix auch das Auswurfprogramm von c`t verwendet, da hatten wir immer ein andere Version ( wo die genau her war weiss ich gar nicht mehr :oops: )

Allerdings werfen wir das Gerät nicht nach Name sondern nach ID aus.
Deshalb sieht unser vb script etwas anders.

An der cfg- Datei ändert sich nichts.

Nicht wundern bei uns heisst das Auswurfprogramm deveject - ist aber das von der ct.

Zusätzlich überprüfen wir nur Massenspeicher und als unbekanntes Gerät erkannte Devices.
Der Aufwand für jeden Drucker Tastatur, Maus, Scanner etc. die Liste zu pflegen ist einfach zu hoch. :lol:


Viele Grüße
Stephan Jockisch

----
' Stephan Jockisch
' V. 2.0 29.09.2005

CfgFileName = "C:\Programme\USBSec\USBSecure.cfg"
TxtFileName = "C:\Programme\USBSec\UsbDevices.txt"

Set Reg = GetObject("winmgmts:root\Default:StdRegProv")
Set Shell = CreateObject("Wscript.Shell")

Const HKEY_LOCAL_MACHINE = &H80000002
Dim UsbDevices(255)
Dim UsbDeviceTypes(255)
Dim UsbDeviceDescription(255)
Dim UsbDeviceHW(255)
Dim AllowedUsbDevices(255)

Do

Key = "SYSTEM\CurrentControlSet\Enum\USB"
return = Reg.EnumKey(HKEY_LOCAL_MACHINE, Key, subkeys)
' Im Array subkeys befinden sich jetzt alle USB-Gerätetypen, d.h. alle Untereinträge
' von HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB

DeviceTypeCounter = 0
For Each subkey In subkeys
UsbDeviceTypes(DeviceTypeCounter) = subkey
DeviceTypeCounter = DeviceTypeCounter + 1
Next


' Jetzt werden alle Untereinträge von_ HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB
' ausgelesen, um an die eigentlichen Geräteeinträge zu gelangen
For DeviceCounter = 0 To DeviceTypeCounter - 1
Key = "SYSTEM\CurrentControlSet\Enum\USB" & "\" & UsbDeviceTypes(DeviceCounter)
return = Reg.EnumKey(HKEY_LOCAL_MACHINE, Key, subkeys)
i = 0
For Each subkey In subkeys
UsbDevices(i) = subkey
i = i + 1
Next
Key = "SYSTEM\CurrentControlSet\Enum\USB" & "\" & UsbDeviceTypes(DeviceCounter) & "\" & UsbDevices(0)
Name = "DeviceDesc"
return = Reg.GetStringValue(HKEY_LOCAL_MACHINE, Key, Name, Description)
UsbDeviceDescription(DeviceCounter) = Description
'Hardwarenamen für USBeject benötigt
UsbDeviceHW(DeviceCounter) = (Usbdevices(0))
Next

' UsbDevices.txt erzeugen, falls Parameter /c mitgegeben wurde
If WScript.Arguments.Count > 0 Then
If WScript.Arguments(0) = "/c" Then
Set fs = CreateObject("Scripting.FileSystemObject")
Set TxtFile = fs.OpenTextFile(TxtFileName, 2, True)
For j = 0 To DeviceTypeCounter - 1
TxtFile.Writeline UsbDeviceDescription(j) & ": " & UsbDeviceTypes(j)
Next
TxtFile.Close
Exit Do
End If
End If


' Einlesen der Datei USBSecure.cfg in das Array AllowedUsbDevices()
Set fs = CreateObject("Scripting.FileSystemObject")
Set CfgFile = fs.OpenTextFile(CfgFileName)
AllowedDeviceCounter = 0
Do Until CfgFile.AtEndOfStream
AllowedUsbDevices(AllowedDeviceCounter) = CfgFile.ReadLine
AllowedDeviceCounter = AllowedDeviceCounter + 1
Loop
CfgFile.Close


' Vergleich der beiden Arrays AllowedUsbDevices() und UsbDeviceDescription()
For x = 0 To DeviceTypeCounter - 1
OK = False
For y = 0 To AllowedDeviceCounter - 1
'Auswurf nur für unbekannte- und Massenspeichergeräte
If NOT UsbDeviceDescription(x) = "USB-Massenspeichergerät" XOR NOT UsbDeviceDescription(x) <> "Unbekanntes Gerät" Then OK = True
If UsbDeviceDescription(x) & ": " & UsbDeviceTypes(x) = AllowedUsbDevices(y) Then OK = True

Next
If OK = False Then ' Angeschlossenes Gerät steht nicht in USBSecure.cfg

' Parameter für das sichere Entfernen vorbereiten

Parameter = " -EjectId:" & "USB\" & UsbDeviceTypes(x) & "\" & UsbDeviceHW(x)

'USB Gerät auswerfen
return = shell.Run ("C:\Programme\USBSec\usbeject.exe" & Parameter,0,False)

'msgbox (" Ausgeworfen: " & parameter)
'return = MsgBox("Unzulässiges Gerät an der USB-Schnittstelle: " & UsbDeviceDescription(x), 4096, "USBSecure")
End If
Next

WScript.Sleep 30000

Loop

User avatar
Hendrik_Ambrosius
Moderator
Moderator
Posts: 7962
Joined: 13. Dec 2004, 23:10
Location: Adendorf/Lüneburg

Post by Hendrik_Ambrosius » 17. Jan 2006, 21:41

OK - werde ich mal an den Kollegen weiterleiten, der das schöne Script für das KHC gebaut hat.
Hendrik Ambrosius / Senior Presales Consultant
Mobile: +49 172 408 4447 | hendrik.ambrosius@matrix42.com
Matrix42 GmbH | Elbinger Straße 7 | 60487 Frankfurt am Main | Germany | www.matrix42.com

Disclaimer: I participate in this forum on a voluntary basis. Views expressed are not necessarily those of Matrix42 or of the support team.

Holoubek
Posts: 9
Joined: 28. Aug 2005, 22:02
Contact:

Post by Holoubek » 19. Jan 2006, 15:58

Hallo Zusammen,

habe heute einige Tests durchgeführt. Folgendes konnte ich feststellen:

Habe ich mehrere Geräte mit gleicher VID und PID, aber unterschiedlichen HW-ID´s wird nur das erste Gerät ausgeworfen. D.h. auf alle weiteren Geräte (obwoh lt. USBSecure.cfg nicht erlaubt) kann zugegriffen werden.

Schöne Grüße
H. Holoubek

User avatar
jockisch
Posts: 236
Joined: 14. Dec 2004, 11:18
Location: Hessen
Contact:

Post by jockisch » 19. Jan 2006, 19:05

Hallo,

ich werde das nochmal morgen in Ruhe testen.
Was ich allerdings schon jetzt direkt sagen kann, bei gleichen USB - Sticks
(Hersteller und Typ) werden diese natürlich nicht unterschieden und auch nicht ausgeworfen :roll:

Ciao
Stephan

User avatar
jockisch
Posts: 236
Joined: 14. Dec 2004, 11:18
Location: Hessen
Contact:

Post by jockisch » 03. May 2006, 10:30

Hallo,

ich muss gestehen, dass ich nicht mehr ans testen gedacht habe :oops:

(ist auch schwierig man braucht 2 identische USB Sticks)

Allerdings läuft unser Script nun seit einigen Monaten und es sind bisher keine Beschwerden aufgetreten.

In diesem Zusammenhang möchte ich aber noch auf eine Weiterentwicklung von Seiten der c't hinweisen (4/2006). Das darin aufgeführte Konzept macht einen guten Eindruck. Da wir jedoch mit unserer Variante sehr gut fahren werden wir die Änderungen vorerst nicht aktivieren.

Allerdings kann für andere Benutzer und auch matrix die Gechichte interessant sein. Neben einer Unterstützung für Win2000 können auch Disketten und CDrom deaktiviert werden.
Berechtigungen nach Benutzern vergeben werden und Logfiles angelegt werden.

Nähere Info's bei der c't Softlink "0604216".


Viele Grüße
Stephan Jockisch

Post Reply

Return to “Biete”

Who is online

Users browsing this forum: No registered users and 6 guests