Windows 11 per GPO maximal einschränken
Hallo zusammen,
wie im Titel beschrieben möchte ich die Userrechte auf einem bestimmten PC maximal einschränken.
Der Hintergrund.
Ich möchte einen zweiten Standort per Site-to-Site anbinden. Dieser Standort soll sich per Remote (Linux - FreeRDP) auf einem Windows Rechner aufschalten. Dieser ist in einem eigenen per Firewall abgetrennten Netz. Per Firewall öffne ich nur notwendige Ports die vom Remoterechnernetz B in mein Hauptnetz-A führen.
Die offenen Ports sollen nur von diesem Remoteserver-B erreichbar sein. Per Firewall wird zusätzlich auf IPs(RemoteServer-B) und MAC-Adressen(Der NIC des Remoteservers-B) beschränkt werden.
Siehe Grafik Network-Map zur Verdeutlichung.
Dieser Remoteserver-B soll per GPOs maximal eingeschränkt werden. z.B. keine Taskbar kein CMD keine Shell usw. Im Grunde darf der User maximal eine ACCESS Runtime ausführen. Das Access-Programm ist per ODBC mit SQL-Server mit dem Hauptnetz verbunden.
Ebenfalls soll Firefox (im Kiosk-Modus) ausführbar sein. Der Desktop muss blank sein und darf nur diese zwei Icons haben.
Vom Desktop darf es auch nicht möglich sein per Shortcuts irgendwelche Einstellungen zu öffnen.
Es soll verhindert werden, falls der zweite Standort kompromittiert wurde irgendwelche Schadsoftware oder Fremdzugriff aus diesen Netzwerk ins Hauptnetz gelangt. Deshalb die maximale Einschränkung. Die Firewall dropt alles was nicht von der RemoteServeradresse-B kommt. Da dort nichts installiert oder ausgeführt werden kann, kann somit auch kein Angriff auf die offnen Ports über diesen Rechner stattfinden. So die Idee/theorie;)
Es wäre sehr hilfreich wenn Ihr mir bei diesem Projekt mit den GPOs unter die Arme greift. Leider habe ich hierzu zu wenig bis keine Ahnung.
Vielen Dank für Eure Hilfe.
MFG
Thomas
wie im Titel beschrieben möchte ich die Userrechte auf einem bestimmten PC maximal einschränken.
Der Hintergrund.
Ich möchte einen zweiten Standort per Site-to-Site anbinden. Dieser Standort soll sich per Remote (Linux - FreeRDP) auf einem Windows Rechner aufschalten. Dieser ist in einem eigenen per Firewall abgetrennten Netz. Per Firewall öffne ich nur notwendige Ports die vom Remoterechnernetz B in mein Hauptnetz-A führen.
Die offenen Ports sollen nur von diesem Remoteserver-B erreichbar sein. Per Firewall wird zusätzlich auf IPs(RemoteServer-B) und MAC-Adressen(Der NIC des Remoteservers-B) beschränkt werden.
Siehe Grafik Network-Map zur Verdeutlichung.
Dieser Remoteserver-B soll per GPOs maximal eingeschränkt werden. z.B. keine Taskbar kein CMD keine Shell usw. Im Grunde darf der User maximal eine ACCESS Runtime ausführen. Das Access-Programm ist per ODBC mit SQL-Server mit dem Hauptnetz verbunden.
Ebenfalls soll Firefox (im Kiosk-Modus) ausführbar sein. Der Desktop muss blank sein und darf nur diese zwei Icons haben.
Vom Desktop darf es auch nicht möglich sein per Shortcuts irgendwelche Einstellungen zu öffnen.
Es soll verhindert werden, falls der zweite Standort kompromittiert wurde irgendwelche Schadsoftware oder Fremdzugriff aus diesen Netzwerk ins Hauptnetz gelangt. Deshalb die maximale Einschränkung. Die Firewall dropt alles was nicht von der RemoteServeradresse-B kommt. Da dort nichts installiert oder ausgeführt werden kann, kann somit auch kein Angriff auf die offnen Ports über diesen Rechner stattfinden. So die Idee/theorie;)
Es wäre sehr hilfreich wenn Ihr mir bei diesem Projekt mit den GPOs unter die Arme greift. Leider habe ich hierzu zu wenig bis keine Ahnung.
Vielen Dank für Eure Hilfe.
MFG
Thomas
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 13309932881
Url: https://administrator.de/contentid/13309932881
Ausgedruckt am: 21.11.2024 um 17:11 Uhr
31 Kommentare
Neuester Kommentar
Hallo
Dieser Remoteserver-B soll per GPOs maximal eingeschränkt werden. z.B. keine Taskbar kein CMD keine Shell usw. Im Grunde darf der User maximal eine ACCESS Runtime ausführen. Das Access-Programm ist per ODBC mit SQL-Server mit dem Hauptnetz verbunden.
Ebenfalls soll Firefox (im Kiosk-Modus) ausführbar sein. Der Desktop muss blank sein und darf nur diese zwei Icons haben.
Warum dann keinen ThinClient mit Remote App und eben nur diesen Beiden ?Ebenfalls soll Firefox (im Kiosk-Modus) ausführbar sein. Der Desktop muss blank sein und darf nur diese zwei Icons haben.
kompromittiert wurde irgendwelche Schadsoftware oder Fremdzugriff aus diesen Netzwerk ins Hauptnetz gelangt. Deshalb die maximale Einschränkung.
Scahdsoftware kann sich auch über andere Software verteilen....und auf das interne Netzwerk zugreifen...Thomas
GrußZitat von @nickyblackmarket:
Was bedeutet Maximal eingeschränkt? Auch USB Sperre usw. umgesetzt? Login via MFA oder Smartcard?Warum dann keinen ThinClient mit Remote App und eben nur diesen Beiden ?
Am fremnden Standort sind nur ThinClients mit Remote FreeRDP im Einsatz. Hier handelt es sich um Thinclients die nur RDP ausführen dürfen. Sind auf Linuxbasis bereits maximal eingeschränkt.Was ist das für ein Fremdstandort? Ist das jemand externes? Oder sind das Mitarbeiter von euch?
Wenn es ich nur über um einen Thinclient handelt..warum wird dieser über Site2Site angebunden und nicht über ein RDP Gateway?
Bzgl Schadsoftware dachte ich, dass der Remoteserver keine installiert bekommen kann da maximal eingeschränkt. Falls doch soll die Firewall greifen die nur auf bestimmte Ports Durchgang gewährt.
Schadsoftware muss nicht zwingend installiert werden.Was macht denn die Firwall? Nur popliges Layer3 Routing oder macht die auch IDS/IPS/DPI?
Gruß
Gruß
Klingt irgendwie alles nach nichts halben und nicht ganzen.
Wenn es schon die eigenen MA sind, hast du ja vermutlich auch die Gewalt über die Thinclients.
Daher wäre auch Remote App eine Variante. Dies funktioniert mit mstsc oder xfreerdp
Klingt irgendwas alles nach ziemlichen Gebastel.
Ps.: wir haben auch Mitarbeiter in allen möglichen Ländern inkl China etc. und vertrauen den Mitarbeitern zu einem gewissen Maße. Den Rest regelt die Security bzw die Beschränkungen in der entsprechenden Anwendung
PPS.: der Knackpunkt ist vermutlich deine AccessAnwendung. Mit einer Webbasierten Anwendung wäre es bedeutend einfacher. Aber hätte hätte…
Wenn es schon die eigenen MA sind, hast du ja vermutlich auch die Gewalt über die Thinclients.
Daher wäre auch Remote App eine Variante. Dies funktioniert mit mstsc oder xfreerdp
Klingt irgendwas alles nach ziemlichen Gebastel.
Ps.: wir haben auch Mitarbeiter in allen möglichen Ländern inkl China etc. und vertrauen den Mitarbeitern zu einem gewissen Maße. Den Rest regelt die Security bzw die Beschränkungen in der entsprechenden Anwendung
PPS.: der Knackpunkt ist vermutlich deine AccessAnwendung. Mit einer Webbasierten Anwendung wäre es bedeutend einfacher. Aber hätte hätte…
Zitat von @nickyblackmarket:
Allerdings bin ich mir nicht sicher ob ich nur mit GPOs das Ziel erreiche.
Allerdings bin ich mir nicht sicher ob ich nur mit GPOs das Ziel erreiche.
Ganz so weit wird das mit GPOs nicht gehen. Im Ansatz nicht.
Ist ja nun mal so. Kann mich noch an die Kiosk-PC-Themen von Windows 7 erinnern, da musste auch unbedingt ein Windows PC in den Pausenräumen stehen. Es "lief" aber war kein rundes Konzept.
Früher gab es PCI-Karten, die hießen "Datenairbags". Das hatte gut funktioniert, aber vom Aufwand her schone eine Hausnummer. Alles Schnee von gestern.
Wir machen prinzipiell eine vergleichbare Thematik mit Horizon VDI.
Früher gab es PCI-Karten, die hießen "Datenairbags". Das hatte gut funktioniert, aber vom Aufwand her schone eine Hausnummer. Alles Schnee von gestern.
Wir machen prinzipiell eine vergleichbare Thematik mit Horizon VDI.
Hi
Orientiere dich daran:
https://www.microsoft.com/en-us/download/details.aspx?id=55319
Nutze Defender for Entpoints und Appblocker via GPO oder eine Alternative mit exe whitelisting.
Ggf kannst du die Maschine nachts auch wieder zurücksetzten z.B. Snapshot / Citrix golden image.
Mit freundlichen Grüßen Nemesis
Orientiere dich daran:
https://www.microsoft.com/en-us/download/details.aspx?id=55319
Nutze Defender for Entpoints und Appblocker via GPO oder eine Alternative mit exe whitelisting.
Ggf kannst du die Maschine nachts auch wieder zurücksetzten z.B. Snapshot / Citrix golden image.
Mit freundlichen Grüßen Nemesis
Zitat von @nEmEsIs:
Ggf kannst du die Maschine nachts auch wieder zurücksetzten z.B. Snapshot / Citrix golden image.
Ginge auch mit Bordmitteln des OS, sofern Enterprise/Edu Lic.Ggf kannst du die Maschine nachts auch wieder zurücksetzten z.B. Snapshot / Citrix golden image.
Vereinheitlichter Schreibfilter (Unified Write Filter, UWF)
Habe den Lockdown auch mal konfiguriert, die Liste wird aber seeeeeehr lang, das hier alles aufzulisten , da bist du noch nächste Woche dran. Applocker nimmt einem aber schon viel von der Angriffsfläche.
Außerdem hat jeder andere Voraussetzungen und Bedürfnisse und die müssen die GPOs natürlich berücksichtigen, und da gibt es ja diverse Abhängigkeiten. Da muss der TO selbst durch, dann lernt er auch was davon statt einfach nur blind abzutippen.
PJ.
Zitat von @nickyblackmarket:
Nun ich denke wir reden vom gleichen aber reden aneinander vorbei.
Es sind thinclients mit xfreerdp wie von dir geschrieben / vorgeschlagen. Ja sie sind unter meiner Kontrolle aber da nicht vor Ort (nenne es Paranoia) aus meiner Sicht nicht vertrauenswürdig. Deshalb bereits maximal eingeschränkt aber mit Restrisiko. Dieser Einschränkung traue ich. Da ich Windowssoftware(access usw) ausführen muss dient der Remoteserver als Benutzoberfläche für die TCs.
Nun ich denke wir reden vom gleichen aber reden aneinander vorbei.
Es sind thinclients mit xfreerdp wie von dir geschrieben / vorgeschlagen. Ja sie sind unter meiner Kontrolle aber da nicht vor Ort (nenne es Paranoia) aus meiner Sicht nicht vertrauenswürdig. Deshalb bereits maximal eingeschränkt aber mit Restrisiko. Dieser Einschränkung traue ich. Da ich Windowssoftware(access usw) ausführen muss dient der Remoteserver als Benutzoberfläche für die TCs.
Deswegen sagte ich ja RemoteApp statt Destkop RDP... Ich hoffe du kennst den Unterschied.
Remote App lassen sich nahtlos in xFreeRDP / IGELOS oder was auch immer integrieren.
Zitat von @nickyblackmarket:
Mit Applocker und Defender habe ich mich noch nicht beschäftigt. Muss dann Clientmäßig eingestellt werden? Sprich direkt am Client mit Adminrechten oder kann das auch Serverseitig als Rolle auf bestimmten Clients der Domäne ausgerollt werden? Sprich User und Computer Rollen Quasi GPO.
Nutze Defender for Entpoints und Appblocker via GPO oder eine Alternative mit exe whitelisting.
Mit Applocker und Defender habe ich mich noch nicht beschäftigt. Muss dann Clientmäßig eingestellt werden? Sprich direkt am Client mit Adminrechten oder kann das auch Serverseitig als Rolle auf bestimmten Clients der Domäne ausgerollt werden? Sprich User und Computer Rollen Quasi GPO.
Du brauchst für jeden User der die VM nutzt eine Intune oder MDE Lizenz.
Kann ich mit Applocker und Defender via GPO die Restriktion so weit ausweiten das quasi nichts mehr möglich ist?
Mich einzulesen stört mich nicht, allerdings wäre es sinnvoll zu wissen ob das auch die richtige Richtung ist.
Mich einzulesen stört mich nicht, allerdings wäre es sinnvoll zu wissen ob das auch die richtige Richtung ist.
grundsätzlich ja, aber es gibt auch andere Lösungen.
Zitat von @nickyblackmarket:
Korrigiere mich, falls ich falsch liege.
Ich kann damit eine Anwenung per RDP starten und diese wird dann im RDP Fenster ausgeführt. Zum Beispiel meine Access Anwendung. Damit wäre nur diese Ausführbar und die Remoteapp ikann nicht verlassen werden um an das darunter liegende Betriebssystem zu gelangen. Heist aber auch das ich für jedes angebotene RemoteAPP Programm eine neue Session öffnen muss oder. Oder kann ich in einer Session mehrere APPS anbieten und auf zwei Screens anzeigen?
Deswegen sagte ich ja RemoteApp statt Destkop RDP... Ich hoffe du kennst den Unterschied.
Um ehrlich zu sein, nein den kannte ich nicht. Nachdem ich etwas gelesen habe nach deinen Hinweis klingt es ebenfalls nach einer Lösung.Korrigiere mich, falls ich falsch liege.
Ich kann damit eine Anwenung per RDP starten und diese wird dann im RDP Fenster ausgeführt. Zum Beispiel meine Access Anwendung. Damit wäre nur diese Ausführbar und die Remoteapp ikann nicht verlassen werden um an das darunter liegende Betriebssystem zu gelangen. Heist aber auch das ich für jedes angebotene RemoteAPP Programm eine neue Session öffnen muss oder. Oder kann ich in einer Session mehrere APPS anbieten und auf zwei Screens anzeigen?
Ja genau…wie die App gehandhabt wird, komm etwas auf das darunter liegende thinclient OS an.
Ich kenne es von IGEL OS so, dass man 2 App (Beispiel Access und Firefox m) auf Zwei Monitoren starten kann
Zitat von @nickyblackmarket:
Das klingt sehr gut. Das bedeutet ich öffne in der VPN Verbindung nur den Port für die RemoteAPP. Damit wäre der Host save. Falls doch ein Durchbruch gelingt greift meine zweite Firewall die wiederum nur die Ports zu den anderen Diensten im Hauptnetz offen hat. Mehr kann ich auch aus Sicherheitstechnischer Sicht nicht unternehmen oder?
Ja genau…wie die App gehandhabt wird, komm etwas auf das darunter liegende thinclient OS an.
Ich kenne es von IGEL OS so, dass man 2 App (Beispiel Access und Firefox m) auf Zwei Monitoren starten kann
Das klingt sehr gut. Das bedeutet ich öffne in der VPN Verbindung nur den Port für die RemoteAPP. Damit wäre der Host save. Falls doch ein Durchbruch gelingt greift meine zweite Firewall die wiederum nur die Ports zu den anderen Diensten im Hauptnetz offen hat. Mehr kann ich auch aus Sicherheitstechnischer Sicht nicht unternehmen oder?
Doch...mehr geht immer...IDS / IPS als Beispiel.
Am Fremdstandort werden nur Devices anerkannt die per Mac in der dortigen Firewall bekannt sind. Sprich MAC-Adressen whitelisting.
Oder gibt es einen weiteren Ansatz um es noch unangenehmer zu gestalten?
Moin,
ich hab mal eine Anleitung geschrieben: Nativen Windows 10 als RDP-Client nutzen und absichern via GPO
Alles was du mit dem Rechner noch machen kannst ist mstsc.exe öffnen und die PowerShell-Console (wird benötigt und kann nicht deaktiviert werden). Allerdings: Wenn mehr als 1 PS-Console geöffnet wird, dann startet der Rechner sofort neu, daher ist Powershell eigentlich keine Gefahr. Theoretisch müsstest du aus der Anleitung lediglich mstsc.exe durch Access ersetzen und das dort abgebildete Skript dahingehend ändern, dass ebenfalls nur eine Access-Instanz ausgeführt werden darf. Es hilft dir vielleicht nicht in Gänze, aber du findest da die Gruppenrichtlinien um deinen Wunsch
Gruß
Doskias
ich hab mal eine Anleitung geschrieben: Nativen Windows 10 als RDP-Client nutzen und absichern via GPO
Alles was du mit dem Rechner noch machen kannst ist mstsc.exe öffnen und die PowerShell-Console (wird benötigt und kann nicht deaktiviert werden). Allerdings: Wenn mehr als 1 PS-Console geöffnet wird, dann startet der Rechner sofort neu, daher ist Powershell eigentlich keine Gefahr. Theoretisch müsstest du aus der Anleitung lediglich mstsc.exe durch Access ersetzen und das dort abgebildete Skript dahingehend ändern, dass ebenfalls nur eine Access-Instanz ausgeführt werden darf. Es hilft dir vielleicht nicht in Gänze, aber du findest da die Gruppenrichtlinien um deinen Wunsch
Dieser Remoteserver-B soll per GPOs maximal eingeschränkt werden. z.B. keine Taskbar kein CMD keine Shell usw.
umszusetzen.Gruß
Doskias
Zitat von @nickyblackmarket:
Keine Ursacheich hab mal eine Anleitung geschrieben: Nativen Windows 10 als RDP-Client nutzen und absichern via GPO
Vielen Dank für den Hinweis zu deiner Anleitung.Das werde ich mir demnächst mal ansehen. Bezüglich Powershell. Die Rechte sind doch so, dass selbst wenn es ausgeführt werden kann, die nötigen Rechte fehlen um etwas darin zu tun oder?
Das ist lediglich rein theoretisch möglich. PowerShell führt im Hintergrund ein Skript aus, welches auf Powershell-Instanzen prüft. Dadurch läuft permanent eine Instanz. Die Prüfung wird sekündlich ausgeführt. Wird eine zusätzliche Instanz gestartet, dann findet das Skript 2 Instanzen und führt den Befehl "restart-computer -force" aus. Dir bleibt also maximal eine Sekunde für das starten einer Powershell-Konsole und der Eingabe eines Powershell-Codes. Allerdings ist sowohl Ausführen, die CMD und der Taskmanager gesperrt, so dass das öffnen einer PowerShell-Konsole recht schwierig wird. Und selbst wenn du die Konsole öffnest, so hast du keine Möglichkeit im Vorfeld den Code vorzubereiten, da du weder einen Texteditor öffnen kannst, noch ein Skript aus dem Explorer aufrufen kannst (da der Explorer, so wie alle Wechselmedien) gesperrt sind.Also um deine Frage zu beantworten. Nein, dir würden nicht die Rechte fehlen um etwas mit Powershell zu tun. Dir fehlen nur schlichtweg die Möglichkeiten eine weitere Powershell-Konsole zu öffnen. Schaffst du das (bei uns hat es noch keiner geschafft), dann könntest du mit Powershell normal verwenden.
Man kann auch ein eigenes Programm (auch als Exe gewandelten Skripte etc.) als Windows-Shell in die Registry eintragen das anstatt des Explorers gestartet wird, damit sind dann die meisten Dinge aus der Standard-GUI schon nicht mehr vorhanden.
Wenn man dann noch mit Applocker auf die Apps beschränkt ist man schon ziemlich gut aufgestellt.
Ich habe mir dazu eine eigene Windows Shell mit c# programmiert, die dann die Windows Shell explorer.exe ersetzt.
Wenn man dann noch mit Applocker auf die Apps beschränkt ist man schon ziemlich gut aufgestellt.
Ich habe mir dazu eine eigene Windows Shell mit c# programmiert, die dann die Windows Shell explorer.exe ersetzt.
Du brauchst nur ein beliebiges Programm erstellen mit Fenster ohne Rand, drauf zwei Icons mir Click-Event, evt. noch einen Button zum Abmelden/Runterfahren, was du halt brauchst, das als Windows Shell in der Registry eintragen, fertig.
Shell = "Pfad zum Prog"
Wenn du die alteenative Shell nur für bestimmte User setzen willst gibt es denselben Pfad auch im User-Registry-Zweig.
Oder Variante MS:
https://learn.microsoft.com/en-us/windows/configuration/kiosk-shelllaunc ...
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
Wenn du die alteenative Shell nur für bestimmte User setzen willst gibt es denselben Pfad auch im User-Registry-Zweig.
Oder Variante MS:
https://learn.microsoft.com/en-us/windows/configuration/kiosk-shelllaunc ...
Zitat von @nickyblackmarket:
Wirklich? Ein ganz normales Prgramm im C# geschrieben ohne spezielle Anforderungen damit es per explorer.exe geht?
Klar, du kannst auch die CMD damit als Shell definieren, egal was Hauptsache das Programm schließt sich nicht von selbst nach dem Start ....Du brauchst nur ein beliebiges Programm erstellen mit Fenster ohne Rand, drauf zwei Icons mir Click-Event, evt. noch >einen Button zum Abmelden/Runterfahren, was du halt brauchst, das als Windows Shell in der Registry eintragen, >fertig.
Wirklich? Ein ganz normales Prgramm im C# geschrieben ohne spezielle Anforderungen damit es per explorer.exe geht?
Macht ein Windows PE und das Windows Setup auch nicht anders.
Man sollte nur immer bedenken: Schließt/Beendet man das Programm wird die Session ausgeloggt.
Die Close-Events wie ALT-F4 etc. sollte man also darin abfangen, wenn das nicht gewünscht ist und nur auf die Controls legen die dazu vom User genutzt werden sollen.
Die GPO will ich sehen.
Alternativ eine Wrapper.exd als Shell definieren und daraus die GUI neu starten falls der GUI-Prozess sich beendet.
oder ganz auf dem Frontend keine Funktion dafür einbaue sollte es auch nicht gehen das Programm zu schließen oder?
Das Programm muss die üblichen Tastenkombinationen wie ALT+F4 bzw. im Close-Event der Form abfangen.Alternativ eine Wrapper.exd als Shell definieren und daraus die GUI neu starten falls der GUI-Prozess sich beendet.