Seite 1 von 1

Sicherheit bei der Ausführung von python Scripten über php

Verfasst: Sonntag 26. Januar 2020, 16:41
von Carsten78
Hallo,

komme aus der php cgi Ecke und mache meine ersten Erfahrungen mit python. Jetzt soll man dem www-data User sudo Rechte geben damit man über ein PHP Script über python scripte aufrufen kann. Ist dies nicht ein großes Sicherheitsrisiko? Gibt es da keine elegantere Lösungen?

Gruß
Carsten

Re: Sicherheit bei der Ausführung von python Scripten über php

Verfasst: Sonntag 26. Januar 2020, 18:51
von __deets__
Doch. Jede Menge. Zb kannst du PHP loswerden und alles mit Python machen. Du kannst den Teil der mehr Privilegien braucht auch als Service schreiben, der nur Lokal erreichbar per IPC - Domain sockets oder auf localhost gebundener HTTP Server - redet. Etc.

Re: Sicherheit bei der Ausführung von python Scripten über php

Verfasst: Sonntag 26. Januar 2020, 21:11
von nezzcarth
Carsten78 hat geschrieben: Sonntag 26. Januar 2020, 16:41 Jetzt soll man dem www-data User sudo Rechte geben damit man über ein PHP Script über python scripte aufrufen kann.
Woher kommt diese Aussage denn? Das klingt so ohne weiteren Kontext erst einmal ungewöhnlich. Der 'www-data'-User unter Debian-artigen Systemen kann in der Standardkonfiguration natürlich den Python-Interpreter starten, also Python-Skripte ausführen. Wenn, dann besteht das Problem eher darin, dass das Python-Skript etwas tut, was erweiterte Rechte benötigt. Dann könnte man zunächst mal schauen, was das genau ist, und ob das wirklich nötig ist. Und wenn ja, dann wäre eine der von __deets__ angesprochenen Varianten die Lösung. Ansonsten kann man sudo für einzelne Benutzer notfalls übrigens auch so konfigurieren, dass es auf einzelne Befehle, also zum Beispiel das Python-Skript, eingeschränkt ist (was jetzt keine Empfehlung sein soll, da Hintertüren öffnen kann, wenn man z.B. mit den Permissions nicht aufpasst).

Re: Sicherheit bei der Ausführung von python Scripten über php

Verfasst: Sonntag 26. Januar 2020, 21:38
von Carsten78
nezzcarth hat geschrieben: Sonntag 26. Januar 2020, 21:11
Carsten78 hat geschrieben: Sonntag 26. Januar 2020, 16:41 Jetzt soll man dem www-data User sudo Rechte geben damit man über ein PHP Script python scripte aufrufen kann.
Woher kommt diese Aussage denn? Das klingt so ohne weiteren Kontext erst einmal ungewöhnlich. ...
Es geht hier speziell um ein python script welches die gpio Pins des raspberry anspricht. Dies wird über eine php Seite per shell_exec aufgerufen.

Re: Sicherheit bei der Ausführung von python Scripten über php

Verfasst: Sonntag 26. Januar 2020, 21:51
von __deets__
In den meisten Fällen muss das Skript eh dauerhaft laufen. Mit exec_file ist dann eh Essig. Lass es dauerhaft als Service laufen, und schick Kommandos per socket zb. Oder HTTP (worunter ja auch ein socket liegt).