[bash/cgi] Uprawnienia do wykonywania polecen systemowych

 
Napisz nowy tematOdpowiedz do tematu    Forum programistyczne Programmers Zone Strona Główna -> Python, Perl, Bash
Autor Wiadomość
rogi
~user




Dołączył: 29 Sie 2009
Posty: 1


PostWysłany: 29-08-09 19:55 Zacytuj zaznaczone Odpowiedz z cytatem

Witam wszystkich uzytkownikow forum Smile

Zarejestrowalem sie tu gdyz licze na pomoc w rozwiazaniu pewnego problemu. Do rzeczy - zaczalem bawic sie ostatnio w tworzenie systemu zarzadzania uzytkownikami systemu linuksowego z poziomu strony www. Z zalozenia ma on umozliwiac tworzenie kont na serwerze ludziom bez rozleglej wiedzy informatycznej w prosty i nieinwazyjny sposob. Serwer stoi na linuksie i korzysta z apacha.
Problem: Dodanie uzytkownika odbywa sie poprzez podanie odpowiednio spreparowanych danych uzyskanych z formularza na stronie do polecenia useradd. Do wykonania tego polecenia potrzebne sa uprawnienia roota, skrypty cgi wykonywane sa jednak jako uzytkownik wskazany w /etc/httpd/conf/httpd.conf standardowo 'apache' (badz 'nobody' - w zaleznosci od systemu). Ja poradzilem sobie z tym w nastepujacy sposob: dodalem usera apache do /etc/sudoers i pozwolilem wykonywac mu useradd bez autoryzacji wlasnym haslem, a nastepnie (poniewaz w logach apache wciaz wyskakiwal blad mowiacy ze nie mozna wykonac sudo bez posrednictwa tty) skomentowalem w tym samym pliku linie 'Defaults requiretty'. Od tego czasu skrypt dziala, a w logu apacha brak bledow. Zastanawia mnie jednak czy nie naraze w ten sposob bezpieczenstwa systemu, czy nie ma jakiejs innej metody na wykonywanie polecen systemowych z poziomu cgi... Byc moze powinienem patrzec raczej w strone perla czy czegokolwiek innego niz bash?
Bede bardzo wdzieczny za wszelkie uwagi i wskazowki.

Pozdrawiam
Igor
Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość
Kokos
~user




Dołączył: 07 Lut 2009
Posty: 609
Skąd: z Bajtocji
Pomógł: 54

PostWysłany: 29-08-09 20:10 Zacytuj zaznaczone Odpowiedz z cytatem

jeżeli zabezpieczysz się przed wszelkiego typu injectionami typu

pass z formularza = pass;rm *.*

To moim zdaniem nie powinno być problemu. Być może w połączeniu z innymi błędami zwiększysz ryzyko. Ale pewne ryzyko w Internecie zawsze jest
Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość Odwiedź stronę autora Numer GG
Wyświetl posty z ostatnich:   
Napisz nowy tematOdpowiedz do tematu    Forum programistyczne Programmers Zone Strona Główna -> Python, Perl, Bash Wszystkie czasy w strefie EET (Europa)
Strona 1 z 1

 
Skocz do:  
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach

Mapa
Powered by phpBB © 2001, 2005 phpBB Group

 Polecane strony