2016-06-07 13 views
0

Kürzlich haben wir eine Funktion implementiert, die dynamisch eine LESS-Datei in unserem App_Themes-Ordner generiert. Dies geschieht beim Start der Anwendung.Ist es (in) sicher, dem ApplicationPoolIdentity Schreibzugriff auf einen Ordner in Ihrem Webanwendungsordner zu geben?

Dazu müssen wir dem @ ApplicationPoolIdentity @ Schreibzugriff auf den App_Themes-Ordner erteilen.

Unser Systemadministrator möchte jedoch nicht, dass @ @ ApplicationPoolIdentity @ Schreibzugriff erhält. Aus Sicherheitsgründen.

Ist es unsicher, das zu tun? Was sind die Sicherheitsrisiken?

Antwort

1

Wenn Sicherheitsanfälligkeiten in Ihrer Anwendung oder in ASP.NET oder IIS selbst vorhanden waren, wird wahrscheinlich jeder, der Ihr System über die Anwendung oder den Webserver kompromittiert, eine Befehlsshell erhalten und als z. DefaultAppPool auf Ihrem Server.

Wenn Schreibzugriff auf einen Ordner besteht, kann der Angreifer selbst in diesen Ordner schreiben.

Zum Beispiel könnten sie ihren eigenen Inhalt auf Ihrer Website unter example.com/App_Themes/index.html hosten, oder sie könnten einen Exploit hochladen, der eine Privelege-Eskalation zu der des Administrators erlaubt. Im letzteren Fall würden sie wahrscheinlich auch ausführbare Berechtigungen benötigen, es sei denn, sie könnten den Webserver dazu veranlassen, sie auszuführen, beispielsweise indem sie die URL des abgeworfenen Exploits anfordern.

Natürlich muss die Sicherheitsanfälligkeit an erster Stelle stehen, damit dies geschieht. Das Verhindern des Schreibzugriffs kann auch als "Tiefenverteidigung" betrachtet werden. Wenn dies jedoch von Ihrer Anwendung benötigt wird, kann dies ein akzeptables Risiko darstellen. Eine Alternative besteht darin, einen anderen Weg zu finden, die gewünschte Funktionalität zu implementieren.

+0

Vielen Dank für die Antwort. Am Ende haben wir einen anderen Weg gefunden, das zu implementieren, was wir brauchten. Es dauerte nur eine Weile, bis es funktionierte und ich war mir nicht sicher, ob es das wert war. – TweeZz