Pokaż wyniki 1 do 9 z 9

Temat: Obsługa iptables/tc za pomocą WWW

  1. #1

    Question Obsługa iptables/tc za pomocą WWW

    Witam

    Mam potrzebę stworzenia panelu do zarządzania iptables i tc z poziomu przeglądarki (serwer WWW pracuje tylko na potrzeby tego panelu)

    Na chwile obecną udało mi się częściowo rozgryźć Webmina- dość popularny panel tego typu.

    Na moje amatorskie oko i to co da sie doczytać w necie to wygląda to tak:
    Podczas instalacji jest uruchamiany na kompie z Linuksem dodatkowy serwer WWW napisany w perlu działające domyślnie na porcie 10000 , który obsługuje skrypty CGI również napisane w Perlu.

    Wynik "ps aux" na mojej maszynie :
    root (...) /usr/bin/perl /root/webmin-1.490/miniserv.pl /etc/webmin/miniserv.conf

    właścicielem wszystkich plików związanych z serwerem jest root, a grupą bin.

    W skryptach cgi polecenia tyczące się firewall'a (iptables) są wydawane bez żadnych kombinacji.
    ------------------------------------
    Reasumując to chyba działa tak, że serwer WWW ma uprawnienia roota i wykonuje skrypty CGI ingerujące w pliki systemowe do których dostęp ma tylko root.

    Na ile to jest niebezpieczne zakładając, że serwer ten ma tylko za zadanie hostować panel?


    Czy może uruchomić Apache'a jako root by wykonywał CGI z uprawnieniami root'a ?

    Czy może użyć w jakiś sposób dobrodziejstwa o nazwie SUDO ?

    Myślałem również o skryptach CGI(własność -root:apache) uruchamianych przez Apache'a z ustawionym bitem SUID ? (to według mnie najbezpieczniejsze rozwiązanie)


    Proszę o pomoc w wyborze albo chociaż odrzucenie najgorszych z podanych rozwiązań ?

    Z góry bardzo dziękuję i pozdrawiam licząc na jakąkolwiek pomoc

  2. #2
    Zarejestrowany
    Jun 2006
    Skąd
    rand(.eu)
    Postów
    8,748

    Domyślnie

    1. apache za suid-root cgi to porazka :-) az sie prosi o rozpirzenie w pyl
    2. sudo iptables (nopassword) i cgi z uprawnieniami apache - tak, to bedzie dzialac i tylko iptables da sie odpalic z uprawnieniami root'a
    3. dlaczego chcesz przepisywac webmina (bo to efektywnie zrobisz)?

    piszac panel www pomysl o potwierdzaniu regul - jesli user nie potwierdzi ze regula dziala (w ciagu 30 sekund) to regula jest wycofywana bo najprawdopodobniej user zmieniajac konfiguracje odcial sobie dostep :P
    ctrl-alt-del.cc - soft reset site for IT admins and other staff :-)

  3. #3

    Domyślnie

    To ma być na uczelnie praca więc nie bede korzystał z gotowych rozwiązań takich jak webmin-popraostu ciekawiło mnie jak w nim jest to rozwiązane.

    "sudo iptables (nopassword) i cgi z uprawnieniami apache - tak, to bedzie dzialac i tylko iptables da sie odpalic z uprawnieniami root'a"

    Jak dokładnie byś to widział ?


    Pozdrawiam
    i dziekuję bardzo za kontakt

  4. #4
    Zarejestrowany
    Jun 2006
    Skąd
    rand(.eu)
    Postów
    8,748

    Domyślnie

    dokladnie tak jak napisalem... CGI bez uprawnien roota, wykonywanie normalnie przez apacza jako apache czy jakis tam inny user... i odpowiednia konfiguracja sudo - man sudoers

    ot cala sztuczka... tylko proponuje z CGI generowac konfiguracje i caly konfig odpalac jednym strzalem - cos jak przycisk 'zastosuj' i przeladowanie calosci robic... ale to zalezy od tego jak budujesz i co potrzebujesz
    ctrl-alt-del.cc - soft reset site for IT admins and other staff :-)

  5. #5

    Domyślnie

    Dzieki. Na innym forum podsunęli mi mniej więcej taki plan.:

    Komponenty:
    Apache + PHP
    MySQL
    Demon (wdrażający zmiany)

    Zasada działania:
    User na stronce (PHP) przy użyciu formularzy i innych gadżetów ustala konfiguracje np firewalla i w odpowiedniej formie trafia to do bazy danych ( i dodawany jest status tego zlecenia np "do wykonania"). Gdy zostanie wydane przez Usera polecenie [zastosuj] apache tylko powiadomi demona. że "jest robota do wykonania" .
    Demon wejdzie sobie do bazy i zobaczy co czeka ze statusem "do wykonania". Zmieni status na "w realizacji" przetworzy to i utworzy z tego plik z poleceniami dla iptables (np rc.firewall) po czym przeładuje ten plik i ustawi status w bazie na "wykonane" (albo usunie).

    To jak powiedziałem bardzo ogólnikowy wstępny plan, jednak pomysł sprzedała mi osoba, która taki panel napisała i działa u niej dla bardzo wielu użytkowników od jakiegoś czasu.

    Czy to dobry pomysł ?
    (szczególnie pytam o bezpieczeństwo i złożoność realizacji)

    Dziekuje za kontakt i licze na kolejne slowa krytyki
    pozdrawiam

  6. #6
    Zarejestrowany
    Jun 2006
    Skąd
    rand(.eu)
    Postów
    8,748

    Domyślnie

    jakkolwiek to ugryzc bedzie tak bezpieczne jak najslabsze ogniwo...
    jesli robisz proces w tle albo z crona odpalasz skrypt przeladowujacy firewall to czekasz miedzy kliknieciem zastosuj a faktycznym zastosowaniem co nie zawsze jest dopuszczalne, choc moze bezpieczniejsze niz uzycie sudo...

    ... ale to lekko zludne, bo jak ktos wstawi cos ciekawego przez jakis blad w aplikacji to masz w bazie cos czego tam byc nie powinno a i tak zaladujesz to jako root! :-)

    tak wiec milej zabawy z SQL incection, command injection i podobnymi
    ctrl-alt-del.cc - soft reset site for IT admins and other staff :-)

  7. #7

    Domyślnie

    Tak czy owak nie idzie zrobić chyba nawet średnio bezpiecznej łączności strona WWW-iptables. Pytanie tylko czy jeżeli by założyć że demon i strona będą uważnie pisane to bezpieczeństwo będzie na akceptowalnym poziomie ?



    Dziękuje

  8. #8
    Zarejestrowany
    Jun 2006
    Skąd
    rand(.eu)
    Postów
    8,748

    Domyślnie

    Aplikacja sama w sobie musi byc bezpiecznie napisana i to nie jest trywialne... dalej poprawna konfiguracja - autoryzacja w aplikacji, moze SSL (choc to calkiem osobna sprawa), na pewno poprawna konfiguracja serwera www...

    Bezpieczenstwo to nie sprawa tylko samej aplikacji - musi byc bezpiecznie na wszystkich warstwach - od warstwy sieciowej na warstwie aplikacji i logiki siedzacej za plecami konczac... a co najwazniejsze - end-user musi wiedziec co moze zrobic a co nie :-)
    ctrl-alt-del.cc - soft reset site for IT admins and other staff :-)

  9. #9

    Domyślnie

    Ostatnio edytowane przez bor1904 : 10-24-2009 - 16:39

Podobne wątki

  1. iptables
    By rax666 in forum TCP/IP/Analiza/Badanie
    Odpowiedzi: 11
    Autor: 10-12-2009, 20:33
  2. Łącznik: obsługa www z programu poprzez inny program(?:D)
    By marmon in forum Newbie - dla początkujących!
    Odpowiedzi: 4
    Autor: 07-21-2008, 20:18
  3. Hakuj za pomocą Google [Pomoc]
    By mafiozo1510 in forum Google hacks
    Odpowiedzi: 6
    Autor: 05-28-2008, 20:16
  4. Namierzanie za pomocą IP
    By cebab in forum Newbie - dla początkujących!
    Odpowiedzi: 6
    Autor: 04-22-2007, 16:11
  5. LMS + IPTables
    By szpuni in forum Linux
    Odpowiedzi: 1
    Autor: 10-10-2006, 13:59

Zasady Postowania

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •  
Subskrybuj