Manipulowanie

Konfiguracja serwerów, usług, itp.
Awatar użytkownika
shyte
Beginner
Posty: 165
Rejestracja: 04 grudnia 2009, 00:06

Manipulowanie ścieżkami na serwerze

Post autor: shyte »

Jak wyłączyć manipulowanie ścieżkami, tak żeby nikt nie przeglądał z poziomu skryptu żadnego katalogu na serwerze? Chodzi mi o to, że np. jak ktoś by mi wgrał powłokę php na ftp przez np. dziurę w skrypcie forum to po wgraniu php powłoki żeby i tak nic mu to nie dało.
Ustawiłem sobie tak linijkę:

Kod: Zaznacz cały

disable_functions = phpinfo, readdir, opendir, dir, posix_getpwuid, posix_getgrgid, disk_free_space, disk_total_space, diskfreespace, disktotalspace
Co jeszcze mogę zrobić?
db
Beginner
Posty: 185
Rejestracja: 25 czerwca 2006, 15:23

Post autor: db »

Ustaw open_basedir dla vhosta oraz zainteresuj pakietem apache2-mpm-itk.

PHP ma również mechanizm, który nazywa się safe_mode. Koszmarny ideowo, ale czasami pomaga (zablokować działanie poprawnie napisanych, nikomu nieszkodzących skryptów ;-) ).

Oprócz tego -- suhosin, analiza logów i analiza do czego użytkownik ma mieć dostęp. Resztę wyciąć.
Awatar użytkownika
shyte
Beginner
Posty: 165
Rejestracja: 04 grudnia 2009, 00:06

Post autor: shyte »

open_basedir i suhosin zainstalowane oraz ustawione już dawno.

A safe_mod mieć warto włączone dla bezpieczeństwa, bo mam aktualnie włączone, ale czytałem gdzieś, że nie za bardzo bo są komplikacje czasami różne.
Awatar użytkownika
timor
Beginner
Posty: 111
Rejestracja: 18 sierpnia 2009, 23:40

Post autor: timor »

Jeżeli bardzo Ci zależy na izolacji to możesz spróbować postawić apache w chroocie.
mod_security z backportów też może się przydać aby wyłapać typowe ataki.
Awatar użytkownika
shyte
Beginner
Posty: 165
Rejestracja: 04 grudnia 2009, 00:06

Post autor: shyte »

Zainstalowałem apache2-mpm-itk, ale nie wiem czemu nie działa tutajznalazłem jak zainstalować.
Nadal mogę przeglądać pliki z poziomu przeglądarki.

mój plik 000-default

Kod: Zaznacz cały

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    
    DocumentRoot /var/www/
    <Directory />
        Options FollowSymLinks
        AllowOverride all
    </Directory>
    <Directory /var/www/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride all
        Order allow,deny
        allow from all
    </Directory>

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
        AllowOverride None
        Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
        Order allow,deny
        Allow from all
    </Directory>

    ErrorLog /var/log/apache2/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog /var/log/apache2/access.log combined

    Alias /doc/ "/usr/share/doc/"
    <Directory "/usr/share/doc/">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128
    </Directory>

</VirtualHost>

 <VirtualHost *:80>
    DocumentRoot /home/erobb
    ServerName erobb.eu
    </VirtualHost>

<Directory "/home/erobb">
php_admin_value open_basedir "/home/erobb"
</Directory>

<VirtualHost *:80>
<IfModule mpm_itk_module>
AssignUserId erobb web1
</IfModule>
</VirtualHost>
ODPOWIEDZ