Konfigurieren Sie die Zulassungsliste für die Apps, die LD_PRELOAD-Funktionen verwenden
Hinweis:
Die Konfiguration der Zulassungsliste mit der LD_PRELOAD-Funktion ist nur für die Citrix Workspace-App für Linux verfügbar.
Der App-Schutz blockiert den Start einer geschützten Sitzung, wenn andere laufende Apps LD_PRELOAD verwenden. Wenn es echte Apps gibt oder wenn sie vom Administrator genehmigt wurden, können Sie die Funktion „Zulassungsliste“ verwenden. Um die Verwendung anderer Apps zu ermöglichen, die LD_PRELOAD verwenden, müssen Sie die Zulassungsliste konfigurieren.
Der App-Schutz verhindert den Start einer geschützten Sitzung, wenn andere Apps, die LD_PRELOAD verwenden, ausgeführt werden. Wenn es jedoch legitime Apps gibt oder wenn der Administrator dies genehmigt, können Sie die Funktion „Zulassungsliste“ verwenden. Damit diese Apps ausgeführt werden können, müssen Sie die Zulassungsliste einrichten.
Mithilfe der folgenden Schritte können Sie Apps mit Preload-Funktionen zur Zulassungsliste hinzufügen:
- Identifizieren Sie den Prozess, der den Start der geschützten VDA-/App-Sitzung blockiert.
- Erstellen Sie eine Konfigurationsdatei für die Zulassungsliste und fügen Sie den identifizierten Prozess hinzu.
Identifizieren Sie den Prozess, der den Start des geschützten VDA verhindert
Wenn AppProtection den Start eines geschützten VDA aufgrund der Verwendung von LD_PRELOAD verhindert, überprüfen Sie Prozesse mithilfe von LD_PRELOAD. Echte Prozesse können zur Zulassungsliste hinzugefügt werden.
Verwenden Sie das folgende Skript, um Prozesse mit LD_PRELOAD
zu identifizieren. Speichere es mit der Erweiterung .sh
und führe es als sudo
in einem Terminalfenster aus:
#!/bin/bash
for pid in /proc/*/; do
pid=${pid%*/}
pid=${pid##*/}
environ_file="/proc/$pid/environ"
if [[ ! -f "$environ_file" ]]; then
continue
fi
ld_preload_entry=$(tr '\0' '\n' < "$environ_file" | grep -w "LD_PRELOAD")
if [[ -n "$ld_preload_entry" ]]; then
cmdline_file="/proc/$pid/cmdline"
cmdline=$(tr '\0' ' ' < "$cmdline_file" | awk '{print $1}')
echo "\"$ld_preload_entry\" : \"$cmdline\""
fi
done
<!--NeedCopy-->
Identifizieren Sie auf der Grundlage der Ausgabe des vorherigen Skripts die Prozesse, die dazu führen, dass der Start des geschützten VDA fehlschlägt, und fügen Sie diese Prozesse der Zulassungsliste hinzu.
Hier ist ein Beispielbild, das die Ausgabe mit einer Liste von Apps mit einer Preload-Liste zeigt.
Die Konfigurationsdatei für die Zulassungsliste erstellen
Die Konfigurationsdatei für die Prozesszulassungsliste ist aus Sicherheitsgründen standardmäßig nicht installiert. Sie müssen diese Konfigurationsdatei erstellen, wenn sie zum ersten Mal benötigt wird.
- Erstellen Sie eine leere Datei mit dem Namen AppProtection_Preload_AllowList.json im Ordner “$ICAROOT/config/”.
-
Fügen Sie die Prozessdetails im folgenden Format hinzu:
{ "LD_PRELOAD_PATH1" : "PROCESS_PATH1", "LD_PRELOAD_PATH2" : "PROCESS_PATH2" } <!--NeedCopy-->
Hier ist ein Beispielbild, das die neu hinzugefügte Konfiguration zeigt:
- Speichern Sie die Datei und legen Sie dann mithilfe des folgenden Befehls die Berechtigungen für die Datei AppProtection_Preload_AllowList.json fest.
sudo chmod 644 $ICAROOT/config/AppProtection_Preload_Allowlist.json
Hinweis:
Minimale Regex-Ausdrücke sind in Konfigurationseinträgen zulässig, um Redundanz zu verhindern. Regex-Sonderzeichen müssen geprüft und mit einem doppelten Backslash (\) maskiert werden.
- Stellen Sie sich zum Beispiel vor, dass die Skriptausgabe wie folgt aussieht:
LD_PRELOAD=:/snap/blue-recorder/126/$LIB/bindtextdomain.so" : "/snap/blue-recorder/126/blue-recorder
- Sie können sehen, dass die Ausgabe ‘enthält . ‘,’ $ ‘, das sind Sonderzeichen in Regex-Mustern. Sie müssen ihnen also mit einem Backslash wie folgt entkommen:
LD_PRELOAD=:/snap/blue-recorder/126/\\$LIB/bindtextdomain\\.so" : "/snap/blue-recorder/126/blue-recorder
- Um variable Elemente wie die Zahl 126 zu verwenden, können Regex-Ausdrücke für einen allgemeineren Eintrag in der Zulassungsliste verwendet werden:
LD_PRELOAD=:/snap/blue-recorder/\\d+/\\$LIB/bindtextdomain\\.so" : "/snap/blue-recorder/\\d+/blue-recorder