Was macht die Registrierungseinstellung EnableLinkedConnections auf technischer Ebene?

15

Hinweis: Das Hauptproblem besteht für mich darin, auf eine Netzwerkfreigabe zuzugreifen, die ich (Win 7-Administrator) eingerichtet habe, wenn ich ein erweitertes Programm ausführe. Normalerweise hat das erhöhte Programm keinen Zugriff auf meine nicht erhöhten Netzwerkfreigaben.

Laut Microsoft ermöglicht die Registrierungseinstellung EnableLinkedConnections erhöhten Prozessen den Zugriff auf die Netzwerkfreigabe des derzeit angemeldeten (nicht erhöhten) Explorer-Prozesses.

Diese Erklärung macht Sinn:

[...] Wenn Sie Mitglied der Administratorengruppe sind und sich anmelden, wird Ihr Konto von der Benutzerkontensteuerung an einen nicht privilegierten Benutzer gesperrt. Dieser ausgeführte Kontext ist völlig unabhängig von dem Kontext, den Sie erhalten, wenn Sie mit der rechten Maustaste auf Eingabeaufforderung klicken und als Administrator starten. Wie Sie wahrscheinlich bemerkt haben, sind Netzwerklaufwerke, die in einem Kontext verbunden sind, in dem anderen nicht sichtbar. [...]

Dieser Forenthread fragt nach den Sicherheitslücken, die durch diese Einstellung geöffnet wurden. Die Antwort enthält Links zu einem Artikel zum Deaktivieren von UAC-Eingabeaufforderungen (oder so, wie ich es verstehe).

Die Frage ist nun, was hat die Registrierungseinstellung EnableLinkedConnections tun oder lassen auf einem Windows - 7 - System, da wir nicht in einer Domäne - Umgebung ausgeführt wird .


Bearbeiten: Eine Sache, die mich besonders interessiert, ist, ob diese Einstellung nur die (Sichtbarkeit von) Netzwerklaufwerken beeinflusst oder ob es irgendwelche anderen Auswirkungen hat.

Martin
quelle
Im Zusammenhang steht diese andere Frage zu ELC, die in einigen Fällen nicht funktioniert: serverfault.com/questions/780639/…
DaveInCaz

Antworten:

17

Ohne Quellenzugriff auf Windows ist es schwierig, etwas zu sagen, das keine Spekulation ist. Abgesehen von diesem Haftungsausschluss konnte ich Folgendes nachlesen:

Die Benutzerkontensteuerung erstellt bei der Anmeldung zwei Sicherheitstoken: das erweiterte Token , das die vollständigen Gruppenmitgliedschaften des Benutzers enthält, und das eingeschränkte Token, bei dem die Mitgliedschaft in der Gruppe "Administratoren" entfernt wurde. Jedes Token enthält eine eindeutige, lokal eindeutige ID (LUID), die die Anmeldesitzung identifiziert. Es handelt sich um zwei separate und unterschiedliche Anmeldesitzungen.

Ab Windows 2000 Server SP2, zugeordnete Laufwerke (die als symbolische Links im Objekt - Manager - Namespace dargestellt sind) mit dem LUID des Token markiert , die sie erstellt hat (einige Microsoft Verweise auf dieses Verhalten findet in diesem KBase Artikel , und Sie können Weitere Informationen zur Funktionsweise des Features finden Sie in diesem Blog-Beitrag . Das Wesentliche dieser Funktion ist, dass zugeordnete Laufwerke, die von einer Anmeldesitzung erstellt wurden, nicht für eine andere Anmeldesitzung zugänglich sind.

Das Festlegen des EnableLinkedConnections- Werts löst ein Verhalten im LanmanWorkstation-Dienst und im LSA-Sicherheitssubsystem (LSASS.EXE) aus, sodass LSA die Laufwerke kopiert, die von einem der Benutzertoken in den Kontext des anderen Tokens zugeordnet wurden. Auf diese Weise können Laufwerke, die mit dem erhöhten Token verknüpft sind, für das eingeschränkte Token und das Gegenteil angezeigt werden. Es gibt keine Besonderheiten des Verhaltens dieser Funktion in Bezug auf eine Domäne im Vergleich zu einer Nichtdomänenumgebung. Wenn Ihre Benutzer mit "Administrator" -Konten in einer Nicht-Domain-Umgebung ausgeführt werden, verfügen ihre eingeschränkten Token und erhöhten Token standardmäßig über unabhängige Laufwerkszuordnungen.

In Bezug auf die Schwachstelle scheint die offizielle Dokumentation von Microsoft zu fehlen. Ich habe einen Kommentar und eine Antwort von einem Microsoft-Mitarbeiter gefunden , der nach den potenziellen Sicherheitslücken in einem Gespräch über UAC aus dem Jahr 2007 gefragt hat. Da die Antwort von Jon Schwartz stammt, der zu dieser Zeit den Titel "UAC Architect" trug, würde ich neigen dazu, seine Antwort als glaubwürdig zu betrachten. Hier ist der Kern seiner Antwort auf die folgende Anfrage: "... Ich habe keine Informationen gefunden, um zu beschreiben, was tatsächlich technisch geschieht oder ob dies irgendwelche Lücken in der Benutzerkontensteuerung öffnet. Können Sie dies kommentieren?"

Technisch gesehen öffnet sich eine kleine Lücke, da Malware ohne erhöhten Schutz nun einen Laufwerksbuchstaben + eine Zuordnung zum erhöhten Kontext "vorbereiten" kann - das sollte ein geringes Risiko sein, es sei denn, Sie haben etwas, das speziell auf Ihre Umgebung zugeschnitten ist.

Persönlich kann ich mir keine Möglichkeit vorstellen, diese Lücke auszunutzen, da das "Seeding" des erhöhten Tokens mit einer Laufwerkszuordnung immer noch erforderlich ist, dass der Benutzer tatsächlich etwas Schädliches aus dieser "Seeding" -Laufwerkszuordnung herausholt und ausführt. Ich bin jedoch kein Sicherheitsforscher, und ich gehe dies möglicherweise nicht mit einer guten Einstellung an, um potenzielle Exploits zu finden.

Ich bin der Verwendung des EnableLinkedConnections- Werts in meinen Kundenstandorten ausgewichen, indem ich den Trend fortgesetzt habe, den wir als Kunden begannen, Windows NT 4.0 bereitzustellen - Benutzer müssen sich mit eingeschränkten Benutzerkonten anmelden. Das hat uns jahrelang sehr geholfen und funktioniert auch in Windows 7.

Evan Anderson
quelle
RE: "Ich bin mit dem EnableLinkedConnections-Wert ausgewichen ... [indem] Benutzer mit eingeschränkten Benutzerkonten angemeldet sind." - Können eingeschränkte Benutzerkonten Anwendungen als Administrator ausführen? Ich dachte, sie könnten nicht. (Wenn sie das nicht können, verstehe ich nicht, wie dies dem Problem ausweicht. Ich meine, wenn ich mich bei einem Mechaniker beschwere, dass der Motor meines Autos quietscht, wenn ich 80 Meilen pro Stunde fahre, würde ich die Reparatur von ihm nicht akzeptieren Abflachen meiner Reifen (während es unmöglich machen würde, 80 Meilen pro Stunde zu fahren, würde es das eigentliche Problem nicht beheben.)
BrainSlugs83
1
@ BrainSlugs83 - Du fixierst einen Kommentar in einem winzigen Absatz einer langen Antwort. Die Antwort gab dem OP, was sie wollten (ich nehme an, da sie akzeptierten): eine Beschreibung dessen, was der Registrierungswert tut. Ich habe diesen spontanen Kommentar gemacht, um dem OP mitzuteilen, dass es eine Möglichkeit gibt, die Verwendung von EnableLinkedConnections zu vermeiden. Geben Sie den Benutzern einfach keine Administratorkonten, und die Notwendigkeit wird gemindert. Es ist 2013 - begrenzte Benutzerkonten sind seit fast 10 Jahren der Rat von Microsoft. Ihre Auto / Mechaniker-Analogie ist angespannt, IMO. Dies ist kein "Problem" mit dem Betriebssystem - es ist eine Sicherheitsfunktion.
Evan Anderson
Oh, ich fixiere absolut; Auch für den Fall, dass es Verwirrung gab: Ich behaupte nicht, dass Ihre Antwort falsch ist. Es war sehr gut, ich habe sogar dafür gestimmt! - Aber ich konzentriere mich auf ein sehr reales Problem, das ich habe - daher die Frage, die ich Ihnen gestellt habe, um festzustellen, ob diese alternative Lösung für mich funktioniert oder nicht: "Können eingeschränkte Benutzerkonten Anwendungen als Administrator ausführen?" ; Ich gehe von Ihrer Antwort aus, dass meine ursprüngliche Annahme richtig war.
BrainSlugs83
Ich bin auch nicht der Meinung, dass die Analogie eine Strecke ist. Die Möglichkeit, Apps als Administrator auszuführen, zu entfernen, ist fast so, als würde mein Computer eine Reifenpanne bekommen. Ich habe ein Microsoft Visual Studio-Projekt, das während der Codesignaturphase nicht kompiliert werden kann, wenn Visual Studio nicht mit "Als Administrator ausführen" gestartet wird. Ich habe versucht, dieses Problem zu beheben, aber weder bei Google noch in Blogs oder bei einem Stapelüberlauf eine Lösung gefunden (dies ist kein Einzelfall). Die Möglichkeit, Apps als Administrator auszuführen, ist für einige Benutzer ein Muss (auch wenn nur Microsoft-Software verwendet wird).
BrainSlugs83
2
Wenn Sie Apps als Administrator ausführen müssen, würde ich empfehlen, ein zweites Benutzerkonto zu haben und es zu verwenden, um die Anwendung mit erhöhten Rechten mit "Als Administrator ausführen" auszuführen. Das ist die einzige Wahl, die ich sehe. Wenn die Anwendung mit "Ausführen als" nicht ordnungsgemäß funktioniert, ist die Anwendung defekt. (Ich würde auch argumentieren, dass jede Anwendung, die Administratorrechte erfordert und keine Netzwerk- oder Computerverwaltungsanwendung ist, ebenfalls fehlerhaft ist - MSFT-Software oder nicht.) Ich finde fehlerhafte Software einer der frustrierendsten Aspekte meines Jobs, also bin ich kann auch deine Frustration verstehen. Ich wünschte, es gäbe eine gute Lösung.
Evan Anderson
1

Einfach ausgedrückt, werden Ihre Superuser-Anmeldeinformationen mit Ihren normalen Anmeldeinformationen verknüpft. Es ist natürlich komplexer, aber im Grunde ist sogar Ihr "Administrator" -Konto unter Windows 7 kein Administrator, sondern muss das Äquivalent von SUDO unter Linux ausführen, um eine Vielzahl von Vorgängen auszuführen. Wenn Sie ein Netzlaufwerk zuordnen, müssen Sie dies tun, aber das Netzlaufwerk wird nur für den Superuser zugeordnet, nicht für den normalen User. Diese Registrierungseinstellung verknüpft die Superuser-Anmeldeinformationen mit Ihren Standardanmeldeinformationen, um Laufwerke zuzuordnen. Auf diese Weise können beide auf das zugeordnete Laufwerk zugreifen, anstatt nur auf den Superuser.

MaQleod
quelle
Können Sie klären, ob diese Einstellung tatsächlich nur Netzlaufwerke betrifft? Oder hat es einen anderen Effekt? (siehe q bearbeiten)
Martin