Nutzer Befehl über PHP-SCript ausführen

Nutzer Befehl über PHP-SCript ausführen

am 28.09.2006 15:46:30 von aliyealiye

Guten Tag,

ich habe folgendes Problem. Ich möchte innerhalb eines PHP Scripts
eine Synchronisation mit einem Pocket PC aufbauen. Diese Befehle sind
allerdings keine Root Befehle , sondern Befehle von Nutzer. Hierfür
hatte ich in der Datei /etc/apache2/uid.conf


User wwwrun
Group www
User benutzer
Group root

eingegeben.

In den Linux Rechner ist man als Benutzer eigelogt.
Dadurch kann der Benutzer Root Befehle ausführen.
Jetzt soll im PHP-Script das pcp Befehl für das kopieren von Dateien
aus dem PPC auf den Rechner ausgeführt werden.

Sobald ich in die uid.conf

User benutzer
Group root

kommt folgende Meldung in einem anderem Script:

Warning: Unknown():
open(/var/lib/php/sess_d32f386a9e620c0f7b1f28a6c49f2815, O_RDWR)
failed: Permission denied (13) in Unknown on line 0

Warning: Unknown(): Failed to write session data (files). Please verify
that the current setting of session.save_path is correct (/var/lib/php)
in Unknown on line 0

Vielen Dank.

Re: Nutzer Befehl über PHP-SCript ausführen

am 09.02.2007 07:43:34 von Roman Hecht

Hallo,

das was du vorhast ist so ziemlich das schlimmste Sicherheitsvergehen
das man begehen kann.
Mach es am besten so:

erstelle ein Shellscript, welches alle deine Befehle beinhaltet, die zur
Synchronisation mit dem pocketpc notwendig sind. Dieses Script versiehst
du mit den Rechten: 700 und der Besitzer, sowie die Gruppe bleiben root.
Dann fügst du die Zeile

"wwwrun ALL=NOPASSWD:/pfad/zu/deinem/script/deinscript.sh"

(ohne die Anführungszeichen) in die /etc/sudoers ein und rufst das
script dann aus PHP heraus mit einem exec("/sbin/sudo
/pfad/zu/deinem/script/deinscript.sh") oder passthru("/sbin/sudo
/pfad/zu/deinem/script/deinscript.sh") auf.

So braucht keiner ausser root root-Rechte :).

MfG

Roman


P.S.: NIEMALS einem Benutzer root-Rechte geben !!!

Saladin schrieb:
> Guten Tag,
>
> ich habe folgendes Problem. Ich möchte innerhalb eines PHP Scripts
> eine Synchronisation mit einem Pocket PC aufbauen. Diese Befehle sind
> allerdings keine Root Befehle , sondern Befehle von Nutzer. Hierfür
> hatte ich in der Datei /etc/apache2/uid.conf
>
>
> User wwwrun
> Group www
> User benutzer
> Group root
>
> eingegeben.
>
> In den Linux Rechner ist man als Benutzer eigelogt.
> Dadurch kann der Benutzer Root Befehle ausführen.
> Jetzt soll im PHP-Script das pcp Befehl für das kopieren von Dateien
> aus dem PPC auf den Rechner ausgeführt werden.
>
> Sobald ich in die uid.conf
>
> User benutzer
> Group root
>
> kommt folgende Meldung in einem anderem Script:
>
> Warning: Unknown():
> open(/var/lib/php/sess_d32f386a9e620c0f7b1f28a6c49f2815, O_RDWR)
> failed: Permission denied (13) in Unknown on line 0
>
> Warning: Unknown(): Failed to write session data (files). Please verify
> that the current setting of session.save_path is correct (/var/lib/php)
> in Unknown on line 0
>
> Vielen Dank.
>

Re: Nutzer Befehl über PHP-SCript ausführen

am 09.02.2007 07:46:27 von Roman Hecht

Ups, habe nicht gesehen, dass dieser Beitrag schon so alt ist. Mein
Newsreader hat zicken beim sortieren gemacht.
Evtl. interessiert es ja jemanden :-).

MfG Roman

Saladin schrieb:
> Guten Tag,
>
> ich habe folgendes Problem. Ich möchte innerhalb eines PHP Scripts
> eine Synchronisation mit einem Pocket PC aufbauen. Diese Befehle sind
> allerdings keine Root Befehle , sondern Befehle von Nutzer. Hierfür
> hatte ich in der Datei /etc/apache2/uid.conf
>
>
> User wwwrun
> Group www
> User benutzer
> Group root
>
> eingegeben.
>
> In den Linux Rechner ist man als Benutzer eigelogt.
> Dadurch kann der Benutzer Root Befehle ausführen.
> Jetzt soll im PHP-Script das pcp Befehl für das kopieren von Dateien
> aus dem PPC auf den Rechner ausgeführt werden.
>
> Sobald ich in die uid.conf
>
> User benutzer
> Group root
>
> kommt folgende Meldung in einem anderem Script:
>
> Warning: Unknown():
> open(/var/lib/php/sess_d32f386a9e620c0f7b1f28a6c49f2815, O_RDWR)
> failed: Permission denied (13) in Unknown on line 0
>
> Warning: Unknown(): Failed to write session data (files). Please verify
> that the current setting of session.save_path is correct (/var/lib/php)
> in Unknown on line 0
>
> Vielen Dank.
>

Re: Nutzer Befehl über PHP-SCript ausführen

am 09.02.2007 14:32:07 von Claus Reibenstein

Roman Hecht schrieb:

> Ups, habe nicht gesehen, dass dieser Beitrag schon so alt ist.

Und deshalb hast Du ihn - sicherheitshalber - gleich 2x vollständig
gequotet.

Lies , Stichwort TOFU.

Gruß. Claus
--
,~°O O
O ,´ / |/|\
/ |¯`. Das neue Hochzeits-Branchenbuch im Internet ,´ / | |\
/__| `~...............................................~´ /___|/ /