phpinfo - welche Lücken gibts ?

Hallo Nation,

ich wurde mit der Betreuung eines Forums beauftragt, da in letzter Zeit öffters Probleme auftraten und einige User sich beschwert hatten, dass einige Beiträge und scheibar auch Userinformationen missbraucht wurden waren, wollte ich erstmal die Sicherheit überprüfen. ich habe mir die phpinfo angeschaut, leider bin ich kein profi für diese Dinge - vielleicht könnt ihr mir helfen, die gröbsten Schnitzer zu beseitigen.
was ich schon im Forum herausgesucht habe, ist dass zum Beispiel die display_errors nicht auf on stehen sollte, aber bei den anderen Einstellungen brauche ich eben hilfe. Danke



hier die phpinfo:

System Linux infong 2.4 #1 SMP Thu Jan 13 08:59:31 CET 2005 i686 unknown
Build Date May 31 2007 15:14:07
Configure Command ../configure --with-pear --with-mysql=/usr --with-zlib --enable-debug=no --enable-safe-mode=no --enable-discard-path=no --with-gd --with-png-dir=/usr/lib --enable-track-vars --with-db --with-gdbm --enable-force-cgi-redirect --with-ttf=/usr/ --enable-ftp --with-mcrypt --enable-dbase --enable-memory-limit --enable-calendar --enable-wddx --with-jpeg-dir=/usr/src/kundenserver/jpeg-6b --enable-bcmath --enable-gd-imgstrttf --enable-shmop --enable-mhash --with-mhash=/usr/src/kundenserver/mhash-0.8.9/ --with-openssl --enable-xslt --with-xslt-sablot --with-dom --with-dom-xslt --with-dom-exslt --with-imap --with-curl --with-iconv=/usr/local --with-freetype-dir=/usr/include/freetype2 --with-bz2 --with-gettext --enable-exif --with-idn --enable-mbstring=all --with-sqlite
Server API CGI
Virtual Directory Support disabled
Configuration File (php.ini) Path /usr/local/lib/php.ini
PHP API 20020918
PHP Extension 20020429
Zend Extension 20050606
Debug Build no
Zend Memory Manager enabled
Thread Safety disabled
Registered PHP Streams php, http, ftp, https, ftps, compress.bzip2, compress.zlib

This program makes use of the Zend Scripting Language Engine:
Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies


--------------------------------------------------------------------------------

PHP Credits

--------------------------------------------------------------------------------

Configuration
PHP Core
Directive Local Value Master Value
allow_call_time_pass_reference On On
allow_url_fopen On On
always_populate_raw_post_data Off Off
arg_separator.input & &
arg_separator.output & &
asp_tags Off Off
auto_append_file no value no value
auto_prepend_file no value no value
browscap /usr/local/lib/browscap.ini /usr/local/lib/browscap.ini
default_charset no value no value
default_mimetype text/html text/html
define_syslog_variables Off Off
disable_classes no value no value
disable_functions no value no value
display_errors On On
display_startup_errors Off Off
doc_root no value no value
docref_ext no value no value
docref_root no value no value
enable_dl On On
error_append_string no value no value
error_log no value no value
error_prepend_string no value no value
error_reporting 2037 2037
expose_php On On
extension_dir /usr/local/lib/php/extensions/no-debug-non-zts-20020429 /usr/local/lib/php/extensions/no-debug-non-zts-20020429
file_uploads On On
gpc_order GPC GPC
highlight.bg #FFFFFF #FFFFFF
highlight.comment #FF8000 #FF8000
highlight.default #0000BB #0000BB
highlight.html #000000 #000000
highlight.keyword #007700 #007700
highlight.string #DD0000 #DD0000
html_errors On On
ignore_repeated_errors Off Off
ignore_repeated_source Off Off
ignore_user_abort Off Off
implicit_flush Off Off
include_path .:/usr/local/lib/php .:/usr/local/lib/php
log_errors Off Off
log_errors_max_len 1024 1024
magic_quotes_gpc On On
magic_quotes_runtime Off Off
magic_quotes_sybase Off Off
max_execution_time 50000 50000
max_input_time -1 -1
memory_limit 40M 40M
open_basedir no value no value
output_buffering 0 0
output_handler no value no value
post_max_size 8M 8M
precision 14 14
register_argc_argv On On
register_globals On On
report_memleaks On On
safe_mode Off Off
safe_mode_exec_dir /usr/local/php/bin /usr/local/php/bin
safe_mode_gid Off Off
safe_mode_include_dir no value no value
sendmail_from no value no value
sendmail_path /usr/sbin/sendmail -t -i /usr/sbin/sendmail -t -i
serialize_precision 100 100
short_open_tag On On
SMTP localhost localhost
smtp_port 25 25
sql.safe_mode Off Off
track_errors Off Off
unserialize_callback_func no value no value
upload_max_filesize 20M 20M
upload_tmp_dir no value no value
user_dir no value no value
variables_order no value no value
xmlrpc_error_number 0 0
xmlrpc_errors Off Off
y2k_compliance On On


bcmath
BCMath support enabled


bz2
BZip2 Support Enabled
BZip2 Version 1.0.2, 30-Dec-2001


calendar
Calendar support enabled


ctype
ctype functions enabled


curl
CURL support enabled
CURL Information libcurl/7.10.3 OpenSSL/0.9.6g ipv6 zlib/1.2.1


db
This is GDBM version 1.7.3, as of May 19, 1994.


dba
DBA support enabled
Supported handlers gdbm cdb cdb_make inifile flatfile


domxml
DOM/XML enabled
DOM/XML API Version 20020815
libxml Version 20609
HTML Support enabled
XPath Support enabled
XPointer Support enabled
DOM/XSLT enabled
libxslt Version 1.0.33
libxslt compiled against libxml Version 2.6.2
DOM/EXSLT enabled
libexslt Version 1.0.33


exif
EXIF Support enabled
EXIF Version 1.4 $Id: exif.c,v 1.118.2.37.2.7 2007/01/09 11:38:04 tony2001 Exp $
Supported EXIF Version 0220
Supported filetypes JPEG,TIFF


ftp
FTP support enabled


gd
GD Support enabled
GD Version bundled (2.0.28 compatible)
FreeType Support enabled
FreeType Linkage with freetype
GIF Read Support enabled
GIF Create Support enabled
JPG Support enabled
PNG Support enabled
WBMP Support enabled
XBM Support enabled


gettext
GetText Support enabled


iconv
iconv support enabled
iconv implementation libiconv
iconv library version 1.8

Directive Local Value Master Value
iconv.input_encoding ISO-8859-1 ISO-8859-1
iconv.internal_encoding ISO-8859-1 ISO-8859-1
iconv.output_encoding ISO-8859-1 ISO-8859-1


idn
IDN support enabled
RCS Version $Id: idn.c,v 0.31 2004/12/18 15:38:43 turbo Exp $
LibIDN version 0.4.1

Directive Local Value Master Value
idn.allow_unassigned_chars 0 0
idn.default_charset ISO-8859-1 ISO-8859-1
idn.use_std_3_ascii_rules 0 0


imap
IMAP c-Client Version 2001


mbstring
Multibyte Support enabled
Japanese support enabled
Simplified chinese support enabled
Traditional chinese support enabled
Korean support enabled
Russian support enabled
Multibyte (japanese) regex support enabled

mbstring extension makes use of "streamable kanji code filter and converter", which is distributed under the GNU Lesser General Public License version 2.1.

Directive Local Value Master Value
mbstring.detect_order no value no value
mbstring.encoding_translation Off Off
mbstring.func_overload 0 0
mbstring.http_input pass pass
mbstring.http_output pass pass
mbstring.internal_encoding ISO-8859-1 no value
mbstring.language neutral neutral
mbstring.substitute_character no value no value


mcrypt
mcrypt support enabled
version >= 2.4.x
Supported ciphers twofish rijndael-128 rijndael-192 rijndael-256 saferplus rc2 xtea serpent safer-sk64 safer-sk128 cast-256 loki97 gost threeway cast-128 blowfish des blowfish-compat tripledes enigma arcfour panama wake
Supported modes ofb cfb nofb cbc ecb stream ncfb ctr

Directive Local Value Master Value
mcrypt.algorithms_dir no value no value
mcrypt.modes_dir no value no value


mhash
MHASH support Enabled
MHASH API Version 20011020


mysql
MySQL Support enabled
Active Persistent Links 0
Active Links 0
Client API version 4.0.25
MYSQL_MODULE_TYPE external
MYSQL_SOCKET /var/run/mysqld/mysqld.sock
MYSQL_INCLUDE -I/usr/include/mysql
MYSQL_LIBS -L/usr/lib -lmysqlclient

Directive Local Value Master Value
mysql.allow_persistent On On
mysql.connect_timeout 60 60
mysql.default_host no value no value
mysql.default_password no value no value
mysql.default_port no value no value
mysql.default_socket no value no value
mysql.default_user no value no value
mysql.max_links Unlimited Unlimited
mysql.max_persistent Unlimited Unlimited
mysql.trace_mode Off Off


openssl
OpenSSL support enabled
OpenSSL Version OpenSSL 0.9.6g 9 Aug 2002


overload
User-Space Object Overloading Support enabled


pcre
PCRE (Perl Compatible Regular Expressions) Support enabled
PCRE Library Version 6.6 06-Feb-2006


posix
Revision $Revision: 1.51.2.4.2.3 $


session
Session Support enabled
Registered save handlers files user

Directive Local Value Master Value
session.auto_start Off Off
session.bug_compat_42 On On
session.bug_compat_warn On On
session.cache_expire 180 180
session.cache_limiter nocache nocache
session.cookie_domain no value no value
session.cookie_lifetime 0 0
session.cookie_path / /
session.cookie_secure Off Off
session.entropy_file no value no value
session.entropy_length 0 0
session.gc_divisor 100 100
session.gc_maxlifetime 1440 1440
session.gc_probability 1 1
session.name PHPSESSID PHPSESSID
session.referer_check no value no value
session.save_handler files files
session.save_path /tmp /tmp
session.serialize_handler php php
session.use_cookies On On
session.use_only_cookies Off Off
session.use_trans_sid Off Off


shmop
shmop support enabled


sqlite
SQLite support enabled
PECL Module version 1.0.3 $Id: sqlite.c,v 1.62.2.25 2004/07/10 12:25:33 wez Exp $
SQLite Library 2.8.14
SQLite Encoding iso8859

Directive Local Value Master Value
sqlite.assoc_case 0 0


standard
Regex Library Bundled library enabled
Dynamic Library Support enabled
Path to sendmail /usr/sbin/sendmail -t -i

Directive Local Value Master Value
assert.active 1 1
assert.bail 0 0
assert.callback no value no value
assert.quiet_eval 0 0
assert.warning 1 1
auto_detect_line_endings 0 0
default_socket_timeout 60 60
safe_mode_allowed_env_vars PHP_ PHP_
safe_mode_protected_env_vars LD_LIBRARY_PATH LD_LIBRARY_PATH
url_rewriter.tags a=href,area=href,frame=src,form=fakeentry,fieldset= a=href,area=href,frame=src,form=fakeentry,fieldset=
user_agent no value no value


tokenizer
Tokenizer Support enabled


wddx
WDDX Support enabled
WDDX Session Serializer enabled


xml
XML Support active
XML Namespace Support active
EXPAT Version 1.95.6


xslt
XSLT support enabled
Backend Sablotron
Sablotron Version 1.0
Sablotron Information Cflags: -lstdc++ -O2 -D_REENTRANT Libs: -L/usr/lib -lexpat Prefix: /usr


zlib
ZLib Support enabled
Compiled Version 1.2.1
Linked Version 1.2.1

Directive Local Value Master Value
zlib.output_compression Off Off
zlib.output_compression_level -1 -1
zlib.output_handler no value no value


Additional Modules
Module Name
dbase


Environment
Variable Value
DBENTRY /kunden/homepages/26/d27105443/htdocs/news:d0000#CPU 6 #MEM 10240 #CGI 350 #NPROC 12 #TAID 7640437 #WERB 0 #LANG 0 #STAT 1 #PARKING 1
DOCUMENT_ROOT /kunden/homepages/26/d27105443/htdocs/news
HTTP_ACCEPT image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-icq, */*
HTTP_ACCEPT_ENCODING gzip, deflate
HTTP_ACCEPT_LANGUAGE de-ch
HTTP_CONNECTION Keep-Alive
HTTP_COOKIE __utma=85925376.674679932.1182322443.1193032090.1193034977.242; __utmz=85925376.1182322443.1.1.utmccn=(direct)|utmcsr=(direct)|utmcmd=(none); ***=e301b25c4e907dfe16ea0796f1e51be6; __utmc=85925376; __utmb=85925376; PHPSESSID=e7abc429d75644fc0cedc0e63c699b4a
HTTP_HOST www.***.de
HTTP_UA_CPU x86
HTTP_USER_AGENT Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 1.1.4322)
PATH /bin:/usr/bin
REDIRECT_DBENTRY /kunden/homepages/26/d27105443/htdocs/news:d0000#CPU 6 #MEM 10240 #CGI 350 #NPROC 12 #TAID 7640437 #WERB 0 #LANG 0 #STAT 1 #PARKING 1
REDIRECT_SCRIPT_URI http://www.***.de/phpinfo.php
REDIRECT_SCRIPT_URL /phpinfo.php
REDIRECT_STATUS 200
REDIRECT_UNIQUE_ID RxxQudTjdg4AABUNgMM
REDIRECT_URL /phpinfo.php
REMOTE_ADDR ***
REMOTE_PORT 61473
SCRIPT_FILENAME /kunden/homepages/26/d27105443/htdocs/news/phpinfo.php
SCRIPT_URI http://www.***.de/phpinfo.php
SCRIPT_URL /phpinfo.php
SERVER_ADDR ***
SERVER_ADMIN webmaster@***.de
SERVER_NAME ***.de
SERVER_PORT 80
SERVER_SIGNATURE no value
SERVER_SOFTWARE Apache/1.3.33 (Unix)
UNIQUE_ID RxxQudTjdg4AABUNgMM
GATEWAY_INTERFACE CGI/1.1
SERVER_PROTOCOL HTTP/1.1
REQUEST_METHOD GET
QUERY_STRING no value
REQUEST_URI /phpinfo.php
SCRIPT_NAME /phpinfo.php
PATH_INFO /phpinfo.php
PATH_TRANSLATED /kunden/homepages/26/d27105443/htdocs/news/phpinfo.php
STATUS 200


PHP Variables
Variable Value
PHP_SELF /phpinfo.php
_REQUEST["__utma"] 85925376.674679932.1182322443.1193032090.1193034977.242
_REQUEST["__utmz"] 85925376.1182322443.1.1.utmccn=(direct)|utmcsr=(direct)|utmcmd=(none)
_REQUEST["***"] e301b25c4e907dfe16ea0796f1e51be6
_REQUEST["__utmc"] 85925376
_REQUEST["__utmb"] 85925376
_REQUEST["PHPSESSID"] e7abc429d75644fc0cedc0e63c699b4a
_COOKIE["__utma"] 85925376.674679932.1182322443.1193032090.1193034977.242
_COOKIE["__utmz"] 85925376.1182322443.1.1.utmccn=(direct)|utmcsr=(direct)|utmcmd=(none)
_COOKIE["***"] e301b25c4e907dfe16ea0796f1e51be6
_COOKIE["__utmc"] 85925376
_COOKIE["__utmb"] 85925376
_COOKIE["PHPSESSID"] e7abc429d75644fc0cedc0e63c699b4a
_SERVER["DBENTRY"] /kunden/homepages/26/d27105443/htdocs/news:d0000#CPU 6 #MEM 10240 #CGI 350 #NPROC 12 #TAID 7640437 #WERB 0 #LANG 0 #STAT 1 #PARKING 1
_SERVER["DOCUMENT_ROOT"] /kunden/homepages/26/d27105443/htdocs/news
_SERVER["HTTP_ACCEPT"] image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-icq, */*
_SERVER["HTTP_ACCEPT_ENCODING"] gzip, deflate
_SERVER["HTTP_ACCEPT_LANGUAGE"] de-ch
_SERVER["HTTP_CONNECTION"] Keep-Alive
_SERVER["HTTP_COOKIE"] __utma=85925376.674679932.1182322443.1193032090.1193034977.242; __utmz=85925376.1182322443.1.1.utmccn=(direct)|utmcsr=(direct)|utmcmd=(none); ***=e301b25c4e907dfe16ea0796f1e51be6; __utmc=85925376; __utmb=85925376; PHPSESSID=e7abc429d75644fc0cedc0e63c699b4a
_SERVER["HTTP_HOST"] www.***.de
_SERVER["HTTP_UA_CPU"] x86
_SERVER["HTTP_USER_AGENT"] Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 1.1.4322)
_SERVER["PATH"] /bin:/usr/bin
_SERVER["REDIRECT_DBENTRY"] /kunden/homepages/26/d27105443/htdocs/news:d0000#CPU 6 #MEM 10240 #CGI 350 #NPROC 12 #TAID 7640437 #WERB 0 #LANG 0 #STAT 1 #PARKING 1
_SERVER["REDIRECT_SCRIPT_URI"] http://www.***.de/phpinfo.php
_SERVER["REDIRECT_SCRIPT_URL"] /phpinfo.php
_SERVER["REDIRECT_STATUS"] 200
_SERVER["REDIRECT_UNIQUE_ID"] RxxQudTjdg4AABUNgMM
_SERVER["REDIRECT_URL"] /phpinfo.php
_SERVER["REMOTE_ADDR"] ***
_SERVER["REMOTE_PORT"] 61473
_SERVER["SCRIPT_FILENAME"] /kunden/homepages/26/d27105443/htdocs/news/phpinfo.php
_SERVER["SCRIPT_URI"] http://www.***.de/phpinfo.php
_SERVER["SCRIPT_URL"] /phpinfo.php
_SERVER["SERVER_ADDR"] ***
_SERVER["SERVER_ADMIN"] webmaster@***.de
_SERVER["SERVER_NAME"] ***.de
_SERVER["SERVER_PORT"] 80
_SERVER["SERVER_SIGNATURE"] no value
_SERVER["SERVER_SOFTWARE"] Apache/1.3.33 (Unix)
_SERVER["UNIQUE_ID"] RxxQudTjdg4AABUNgMM
_SERVER["GATEWAY_INTERFACE"] CGI/1.1
_SERVER["SERVER_PROTOCOL"] HTTP/1.1
_SERVER["REQUEST_METHOD"] GET
_SERVER["QUERY_STRING"] no value
_SERVER["REQUEST_URI"] /phpinfo.php
_SERVER["SCRIPT_NAME"] /phpinfo.php
_SERVER["PATH_INFO"] /phpinfo.php
_SERVER["PATH_TRANSLATED"] /kunden/homepages/26/d27105443/htdocs/news/phpinfo.php
_SERVER["STATUS"] 200
_SERVER["PHP_SELF"] /phpinfo.php
_SERVER["argv"] Array
(
)

_SERVER["argc"] 0
_ENV["DBENTRY"] /kunden/homepages/26/d27105443/htdocs/news:d0000#CPU 6 #MEM 10240 #CGI 350 #NPROC 12 #TAID 7640437 #WERB 0 #LANG 0 #STAT 1 #PARKING 1
_ENV["DOCUMENT_ROOT"] /kunden/homepages/26/d27105443/htdocs/news
_ENV["HTTP_ACCEPT"] image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-icq, */*
_ENV["HTTP_ACCEPT_ENCODING"] gzip, deflate
_ENV["HTTP_ACCEPT_LANGUAGE"] de-ch
_ENV["HTTP_CONNECTION"] Keep-Alive
_ENV["HTTP_COOKIE"] __utma=85925376.674679932.1182322443.1193032090.1193034977.242; __utmz=85925376.1182322443.1.1.utmccn=(direct)|utmcsr=(direct)|utmcmd=(none); ***=e301b25c4e907dfe16ea0796f1e51be6; __utmc=85925376; __utmb=85925376; PHPSESSID=e7abc429d75644fc0cedc0e63c699b4a
_ENV["HTTP_HOST"] www.***.de
_ENV["HTTP_UA_CPU"] x86
_ENV["HTTP_USER_AGENT"] Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 1.1.4322)
_ENV["PATH"] /bin:/usr/bin
_ENV["REDIRECT_DBENTRY"] /kunden/homepages/26/d27105443/htdocs/news:d0000#CPU 6 #MEM 10240 #CGI 350 #NPROC 12 #TAID 7640437 #WERB 0 #LANG 0 #STAT 1 #PARKING 1
_ENV["REDIRECT_SCRIPT_URI"] http://www.***.de/phpinfo.php
_ENV["REDIRECT_SCRIPT_URL"] /phpinfo.php
_ENV["REDIRECT_STATUS"] 200
_ENV["REDIRECT_UNIQUE_ID"] RxxQudTjdg4AABUNgMM
_ENV["REDIRECT_URL"] /phpinfo.php
_ENV["REMOTE_ADDR"] ***
_ENV["REMOTE_PORT"] 61473
_ENV["SCRIPT_FILENAME"] /kunden/homepages/26/d27105443/htdocs/news/phpinfo.php
_ENV["SCRIPT_URI"] http://www.***.de/phpinfo.php
_ENV["SCRIPT_URL"] /phpinfo.php
_ENV["SERVER_ADDR"] ***
_ENV["SERVER_ADMIN"] webmaster@***.de
_ENV["SERVER_NAME"] ***.de
_ENV["SERVER_PORT"] 80
_ENV["SERVER_SIGNATURE"] no value
_ENV["SERVER_SOFTWARE"] Apache/1.3.33 (Unix)
_ENV["UNIQUE_ID"] RxxQudTjdg4AABUNgMM
_ENV["GATEWAY_INTERFACE"] CGI/1.1
_ENV["SERVER_PROTOCOL"] HTTP/1.1
_ENV["REQUEST_METHOD"] GET
_ENV["QUERY_STRING"] no value
_ENV["REQUEST_URI"] /phpinfo.php
_ENV["SCRIPT_NAME"] /phpinfo.php
_ENV["PATH_INFO"] /phpinfo.php
_ENV["PATH_TRANSLATED"] /kunden/homepages/26/d27105443/htdocs/news/phpinfo.php
_ENV["STATUS"] 200
 
also ich konnte jetzt nur ganz kurz das ganze überfliegen, da ich grad in ner vorlesung sitze, aber register_globals ist mir direkt aufgefallen. wenn möglich stelle dies auf off. die meisten foren sollten damit umgehen können, aber teste dann trotzdem mal gründlich ob noch alles geht
 
Abgesehen von den register_globals würde ich die Sicherheitsprobleme erstmal in der Forensoftware suchen anstatt im PHP. Allerdings dürften seit Mai auch schon einige Updates für PHP selbst erschienen sein. Eine aktuellere PHP-Version wäre daher vermutlich auch angebracht.
 
Weitere Sicherheitsrelevante Punkte wären
z.B.
magic_quotes_gpc <-- macht z.B. aus " dann ein \" wenn du ein " via URL Übergibst (hilft gegen so manche SQL-Injection ;))

disable_functions <-- damit kannst nicht benötigte/sicherheitsbedenkliche funktionen ausschalten. Schmeiß mal google an. Da findest du genug...

safe_mode <-- macht es dem angreifer doch ein gutes stück schwerer, allerdings läuft damit nicht unbedingt jede software. Also: Gründlich testen!
 
Hallo,
mit einer guten PHP Konfig kann man viele Lücken in den darauf laufenden Anwendungen entschärfen:
PHP-Grundsicherung

Das gute ist, selbst wenn man keine root Rechte hat, kann man bei fast allen shared hostern diese Einstellungen vornehmen, da PHP meistens als CGI eingebunden ist.
 
Angriffsfläche...

Frage Dich ruhig mal, ob Du sämtliche Erweiterungs-Module, die Du zugelassen hast, benötigst.

Da Du schon solche Lapidarien wie register_globals eingeschaltet hast, vermute ich, daß das System erst ganz frisch als XAMP oder ähnlich aufgesetzt ist. Mit SOWAS würde ich mich nicht trauen, ein Netzwerkkabel zu versteckern.

Die einzelnen Problemstellen für sich sind NIE gefährlich, solange sie nicht durch anfängermäßig brutal fehler- und stümperhaft zusammengefrickelte PHP-Programme zu lauffähigen Einfallstoren verbunden werden.

GENAU DAS ist allerdings bei etwa 99% ALLER PHP-Brocken, die mir in meiner Arbeit täglich begegnen, der Fall. Von den PHP-Bastlern machen sich vielleicht 10% tatsächlich ernsthafte Gedanken über Sicherheit. Davon begreifen nur 10% tatsächlich Zusammenhänge. Und davon unternimmt dann wieder nur ein prozentualer Anteil tatsächlich wirkungsvolle Schritte, um die eigenen Programme sicher zu machen. BEVOR sie im Internet für zweifelhaften Ruhm sorgen.

Hier mal eine Liste der Sachen, mit denen ich mich nicht ans Netz trauen würde, weil jeweils zwei davon ein perfektes Einfallstor ergeben, das nur in einigen Fällen durch mehrere andere Maßnahmen (die Du jeweils immer gleichzeitig korrigiert haben müßtest) in der Waage gehalten werden könnten:

(ALLES bezieht sich auf die von DIR berichteten Standardzustände...)

allow_url_fopen - Du gestattest Deinen Angreifern bereitwillig, PHP-Code von ihren eigenen Rechnern AUF DEINEM auszuführen.

display_errors - Du zeigst Deinen Angreifern bereitwillig, was sie noch verändern müssen, um endlich bei Dir einzubrechen.

doc_root - Du gestattest Deinen Angreifern, sich auf Deinem gesamten Rechner auszutoben. - Laß mich raten: Der Apache Webserver läuft bei Dir mit root-Rechten oder als "System"-Dienst, richtig?

enable_dl - Du gestattest Deinen Angreifern, falls sie mal endlich einen Fuß in die bei Dir sperrangelweit offen stehenden Scheunentore gesetzt haben, binäre Bibliotheken nach Belieben nachzuladen.

error_log - Du verzichtest für Deinen Teil darauf, daß irgendwas über irgendwelche Aktivitäten auf Deinem anfängermäßig trivial zu knackenden Rechner über eben jene Aktionen protokolliert wird, so daß Du NIEMALS auch nur die Chance erhälst, IRGENDETWAS davon zu lernen!

expose_php - Du zeigst bereitwillig jedem Angreifer, daß Du Deine Scheunentore sperrangelweit geöffnet hast.

Dies hier würde ich (nein: tue ich täglich auf mehreren Servern) benutzen, um Schwachstellen durch extrem schlecht programmierte Module (also fast alles, was es gibt) zusätzlich zu begrenzen - und zwar unter Verfolgung eines oder mehrerer gut besuchter Foren, in denen täglich über genau sowas wie solcherart verursachte Lücken berichtet wird:

disable_classes
disable_functions - Beide zum globalen Sperren aller Funktionen, die als gefährlich und gern genutzt bekannt geworden sind bzw. die Du unmittelbar aus den Angriffs-Zeichenketten Deines ERROR-LOGS(!) herausliest

auto_prepend_file - Vorbeugende Behandlung aller PHP-Anfragen auf globaler Ebene, um zum Beispiel im Falle einsetzender Scans die betreffenden IPs zu blacklisten und jede weitere Kommunikation mit denen zu blocken und nebenbei die Angriffsvektoren sauber getrennt und bequem auszuwerten mitprotokollieren zu können


So, das waren jetzt die ersten 25 (!) Zeilen.
Ich sehe darin 8 Elemente, mit denen ich mich NIEMALS ins Netz stellen würde.
HONIGTÖPFE stattet man solchermaßen aus!

Hochgerechnet ergäbe das auf rund 400 Konfigurationszeilen bezogen eine zu erwartende Menge von Schwachstellen in Höhe von über 100.
 
Zurück
Oben