Autor Zpráva
Kockosaur
Profil *
Zdravím, potřeboval bych se z www-data dostat na roota, odešlu tedy přes exec "su root", ale pak je potřeba zadat heslo, jak ho mam odeslat? Děkuji
Davex
Profil
Z bezpečnostních důvodů nejde příkazu su předat heslo jinak než ručně z konzole. Šlo by to obejít příkazem sudo, ale nepovažuji za dobrý nápad uvádět heslo roota v jakémkoli veřejně přístupném souboru nebo v PHP skriptu.
Kockosaur
Profil *
A je možné nějak jinak spouštět nmap "-sU -p [PORT] [IP]"? Tento příkaz totiž vyžaduje root oprávnění.


*špatně umístěné uvozovky: "nmap -sU -p [PORT] [IP]"
juriad
Profil
hledej suid, umožní spustit program pod právy vlastníka
vytvoříš si skript, přivlastníš ho rootovi, nastavíš mu suid a zavoláš jako www-data, spustí se pod rootem

pořádně si problematiku prostuduj, je to jedena z častých velkých bezpečnostních děr
Kockosaur
Profil *
Stále se mi to nějak nedaří. Byl by někdo tak ochotný a napsal mi konkrétně jak mám SUID nastavit? Už jsem nastavil vlastníka i skupinu root, chmod jsem také zkoušel 7777 a stále nic.
Davex
Profil
juriad:
To pak bude ale fungovat všem uživatelům, což by mohlo být nežádoucí. Raději bych použil sudo a nastavil ho tak, aby mohl uživatel www-data spustit program nmap jako root bez zadání hesla.

/etc/sudoers:
www-data  hostname = (root)  NOPASSWD: /usr/bin/nmap

Jinak asi nejbezpečnější řešení je naznačeno na webu nmapu - nmap spouštěný privilegovaným démonem, který s aplikací komunikuje pomocí zpráv.
Kockosaur
Profil *
přidal jsem řádek do sudoers, ale nastal další problém. Při spouštění přes sudo to po mně chce heslo od www-data.


$ sudo nmap -sU
[sudo] password for www-data:
Davex
Profil
Mělo by fungovat

sudo -u root nmap -sU
Kockosaur
Profil *
$ sudo -u root nmap -sU
[sudo] password for www-data:
Davex
Profil
Nahradil jsi hostname skutečným jménem serveru? Na Debianu by to mělo fungovat.
Kockosaur
Profil *
Teď jsem nahradil i hostname z debian na vlastní a pořád nic, zkoušel jsem i /etc/init.d/sudo restart a pořád požaduje heslo od www-data.
Davex
Profil
Je nějaká chyba v logu?

# grep sudo /var/log/auth.log | tail

Vaše odpověď

Mohlo by se hodit

Odkud se sem odkazuje


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0