Pokaż wyniki 1 do 10 z 10

Temat: Zabezpieczanie PHP

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1

    Domyślnie Zabezpieczanie PHP

    Witam, zastanawiam się co jeszcze wyłączyć w php/ tudzież zabezpieczyć go aby nie dało się nic zrobić w popularnych "shellach php" typu c99 r57 itp etc póki co wygooglowałem aby takie zmiany w php.ini wprowadzić:

    Kod:
    safe_mode = On
    disable_functions =  system, exec, passthru, shell_exec, sockopen, proc_open, popen, set_time_limit, php_uname, phpinfo, symlink
    mysqli.allow_local_infile = Off
    allow_url_fopen = Off
    expose_php = Off
    może macie jeszcze jakieś pomysły ?

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

    Domyślnie

    To powyzej to rozsadny poczatek ale temat mozna ciagnac dalej, poza PHP.

    Jak nie chcesz aby nakombinowali za wiele, to jesli ta maszyna jest serwerem WWW tylko to traktuj ja jako serwer WWW - ustaw firewall aby tylko odpowiadal na zapytania a sam nie mogl nawiazywac polaczen.

    Egress Filtering to sie nazywa, podalem przyklad konfiguracji tutaj - to jest to czego sam uzywam (nieco bardziej rozbudowanego) na swoich serwerach - mialem proby wlamania, mialem shell'e wrzucone przez gowniane aplikacje w PHP itd - wyobraz sobie frustracje atakujacych jak nie mogli nic zrobic bo polaczenia wychodzace sa zablokowane!

    Oczywiscie taki serwer nie moze nawet gadac z innymi hostami w tej samej sieci LAN wiec pole manewru jest minimalne.
    ctrl-alt-del.cc - soft reset site for IT admins and other staff :-)

  3. #3

    Domyślnie

    Hhm w sumie takie coś rozwiązało by sprawę gdyby nie serwer pocztowy który się tam znajduje A poza tym jak to dokładnie działa ? Blokuje wszystkie połączenia z serwera i wpuszcza tylko te do serwera ? Nie blokuje to zatem przeglądania stron, wgrywania plików na ftp itp etc ?

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

    Domyślnie

    Nie, nie blokuje...
    Egress blokuje polaczenia wychodzace - jak masz serwer SMTP tam to zezwalasz tez na wychodzace na port 25 i po sprawie.
    Ingress blokuje to co przyjmujesz... tam wiec otwierasz 80 i 25 jesli to potrzebujesz. Jesli ktos wgra jakiegos php-shell'a to i tak za wiele nie zdziala poza dostepem do systemu ale w koncu taki firewall to tylko jedna z warstw zabezpieczen.
    ctrl-alt-del.cc - soft reset site for IT admins and other staff :-)

  5. #5

    Domyślnie

    Dobrze jest systematyzować.
    Wektory ataków kiedy już uda się coś zarzucić na PHP widzę tak:

    Level 1:
    - buffer overflow w jądrze php
    Level 2:
    - niskopoziomowy dostęp do sieci (RAW Packet)
    Level 3:
    - wysokopoziomowy dostęp do sieci (socketLisiner, UDP, SPAM)
    - modyfikowanie dowolnych plików w systemie i plików innych użytkowników
    NeverLevel:
    - zabezpiecznie przed uruchomieniem X ilości procesów (Fork bomb)

    Zostaje też dużo drobnostek, np. wspólny katalog na pliki tymczasowe dla wszystkich użytkowników, co pozwala na odczytanie sesji, lub błąd umożliwiający podgląd listy użytkowników systemu przez zwykłe glob('../../*'), widziałem też wiele failów w samej instalacji panelu zarządzania, np, możesz innemu użytkownikowi skasować domenkę, zmienić DNSY czy zbackupować bazę danych :-}

    Trudno udzielić odpowiedzi 'klucz', która wywoła u słuchacza okrzyk 'eureka!'
    Niby pytasz o 'shelle' typu c99 czy r57, tylko że z tego niewiele wynika, bo skoro moge uruchomić dowonych kod php, to co mi po takim 'shellu'..

    Osobiście nie bawię się w zabezpiecznie czegokolwiek, kupuje względnie zabezpieczony hosting www (h9,hg,e2,itp) tylko backupuje po swojemu bo u nich to nigdy nie wiadomo ^_^.
    Niestety nie jest najłatwiej wybrać taki hosting wśród tańszych i jednocześnie polskich.
    Hack.pl stoi na Home.pl i jakoś nie widać zbyt wielu włamań, home ma wiele promocji, czesto możesz się u nich zaparkować np. na pół roku za 50zł (potem 300/rok), może tędy droga?
    Ostatnio edytowane przez lame : 10-19-2011 - 20:45
    światło mądrości oświetla drogę z nikąd do nikąd

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

    Domyślnie

    Jesli stawiasz serwer samodzielnie to mozesz o wiele wiecej niz na wspoldzielonym hostingu... stara zasada

    Ok, wiec raw socket i uzycie gniazd na wyzszym poziomie jest zalatwione calkowicie za pomoca firewall'a wyjsciowego (egress) bo co z tego ze masz shell'a albo inny kod skoro nie mozesz nic zrobic?
    Zabezpieczenie PHP - ladnie i pieknie wylaczyc pewne funkcje (ja blokuje duzo wiecej ale nie mam akurat listy pod reka) ale to lubi zepsuc wiele aplikacji ktore sa gowniano napisane, wiec... cos za cos.
    Fork-bomb i spolka - /etc/security/* i podobne...

    BTW. Wlasnie analizuje kawalek kodu PHP ktory odpowiada za drive-by malware... wstawione na serwer ciagnacy wordpress'a, nikt nie wie do tej pory jak i kto to zaladowal bo jeden czlowiek zatarl wszystkie slady 'probujac pomoc' choc mial powiedziane ze ma nie dotykac...
    Kod strasznie zamieszany ale pierwsze co robi to reset zmiennych php wiec zero logowania, zero bledow, ignorowanie sygnalow itd... fajne - bocik jak znalazl!
    ctrl-alt-del.cc - soft reset site for IT admins and other staff :-)

  7. #7

    Domyślnie

    Cytat Napisał TQM Zobacz post
    Fork-bomb i spolka - /etc/security/* i podobne...
    Hah, ciekawe jakim sposobem chcesz odróżnić 'fork bomb' od 'traffic spikes'? Jestem bardzo ciekaw.

    Na masowych zagranicznych hostingach jest to rozwiązane w taki sposób, że możesz korzystać z wszystkich zasobów serwera, jeśli przesadzisz dostajesz chińskie ostrzeżenie, potem już tylko: 'here is your backup and Goodbye'

    Nastomiast w polsce panuje moda żeby poustawiać limity i modlić się żeby usługi nie kupił ktoś z forum więcej niż 100 odwiedzin dziennie, bo zobaczy Error 500, WSoD albo 30 sekundowy lag.

    Mówie oczywiście o Shared-Hosting, czyli usłudze gdzie nie musisz zadbać by wszystko działało, siedzisz (a właściwie leżysz) i wymagasz.
    Takie rozwiązanie podchodzi mi lepiej niż VPS.

    Nie uruchomie darmowego forum czy czegoś podobnego na dziko konfigurowanym VPSie, to proszenie się o kłopoty...
    Ostatnio edytowane przez lame : 10-19-2011 - 22:16
    światło mądrości oświetla drogę z nikąd do nikąd

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

    Domyślnie

    Z tego co wiem to da sie to zrobic ustawiajac limity... Shared hosting uzywaja najczesciej suphp lub podobnego - limity sa na usera. Dobranie wlasciwego hostingu do potrzeb to polowa sukcesu :-)

    BTW - dla mnie takie cos jak shared hosting na VPSie to porazka. Dziwne ze ludzie tak robia zarobkowo :-P rozumiem maly VPS i dla rodziny jakies malenkie stronki czy cos ale nie zarobkowo jako firma. To juz nawet nie proszenie sie o klopoty - to jak gra w rosyjska ruletke uzywajac pistoletu zamiast rewolweru.
    ctrl-alt-del.cc - soft reset site for IT admins and other staff :-)

  9. #9

    Domyślnie

    Zabezpieczenie PHP - ladnie i pieknie wylaczyc pewne funkcje (ja blokuje duzo wiecej ale nie mam akurat listy pod reka) ale to lubi zepsuc wiele aplikacji ktore sa gowniano napisane, wiec... cos za cos.
    Fork-bomb i spolka - /etc/security/* i podobne...
    Mógłbyś dać tą listę co Ty blokujesz na swoich serwerach w php.ini ?
    i co oznacza "Fork-bomb i spolka - /etc/security/* i podobne"

    Pozdrawiam

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