[PHP] Sicherheit

Dieses Thema im Forum "Webentwicklung" wurde erstellt von Terrorbeat, 18. März 2008 .

Schlagworte:
Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  1. #1 18. März 2008
    Sicherheit

    Hallo

    Ich habe ein Frage undzwar geht es um diesen Code:
    PHP:
    <? php
    require ( "server1/config/sql.php" );
    require (
    "server1/config/function.php" );

    if (isset(
    $_POST [ 'user' ]) AND isset( $_POST [ 'passwort' ])) {
        if (
    trim ( $_POST [ 'user' ]) !=  ""  AND  trim ( $_POST [ 'passwort' ]) !=  "" ) {
            
    $user  security ( $_POST [ 'user' ],  TRUE TRUE );
            
    $passwort  security ( $_POST [ 'passwort' ],  TRUE TRUE );
            
    //weiterer Code
        
    } else {
        echo 
    "<span style=\"color:#FF0000;\">Formulare wurden nicht vollständig ausgefüllt!</span>" ;
        }
    } else {
    echo 
    "<span style=\"color:#FF0000;\">Formulardaten wurden nicht empfangen!</span>" ;
    }
    ?>
    Wie ihr euch sicher denken könnt, führt meine selbstgeschrieben Funktion "security" sicherheitsrelevante Dinge aus wie das escapen oder strip_tags() von variablen.
    Doch bevor dies geschiet, muss ich ja erstmal wissen ob es diese Variablen überhaupt gibt.
    Dadurch werden sie im Script bereits erwähnt also könnte man theroretisch schon dort fremden Code einführen, oder nicht?
     

  2. Anzeige
    Heute: Deals & Sale mit stark reduzierten Angeboten finden.
  3. #2 18. März 2008
    AW: Sicherheit

    solange du nicht vor der prüfung eval benutzt, die variablen ausgibts oder z.b. die php funktionen selbst ne sicherheitslücke aufweisen bist du sicher
     
  4. #3 18. März 2008
    AW: Sicherheit

    PHP:
    function  security ( $string $use_strip_tags $use_trim ) {
    //die von get_magic_quotes_gpc escapung zurück setzen
        
    if( get_magic_quotes_gpc ()) {
        
    $string stripslashes ( $string );
        }
    //die Funktion "mysql_real_escape_string" nutzen
        
    $string  mysql_real_escape_string ( $string );
    //bei use_strip_tags "strip_tags" benutzen
    if ( $use_strip_tags ){ $string = strip_tags ( $string );}
    //bei use_trim "trim" benutzen
    if ( $use_trim ){ $string = trim ( $string );}
    return 
    $string ;
    }
    also bin ich abgesichert? ein klares ja würde mir alle sorgen von der seele nehmen :)
     
  5. #4 18. März 2008
    AW: Sicherheit

    sieht für mich ziemlich sicher aus :)
    aber bei zahlen gibts die 100% sichere variante: intval()
    bei strings bleibt immer ein gewisses restrisiko, aber damit muss man leben
     
  6. #5 18. März 2008
    AW: Sicherheit

    Also ich habe mir folgendes Angewöhnt:

    Immer wenn ich etwas mit SQL mache, validiere ich erst im SQL Statement. Hierbei reicht ein mysql_real_escape_string() und intval().

    Ich empfehle dir auf jedenfall den Suhosin Patch für PHP. Wenn du keinen Einfluss hast auf den PHP-Core wegen Webhosting, dann schlage das mal deinem Provider vor.

    Ist ganz einfach zu installieren und hilft unheimlich z.b. gegen remote include vulns.
     
  7. #6 20. März 2008
    AW: Sicherheit

    Okay vielen dank leute und den PHP Suhosin Patch werde ich mir mal anschauen.
     

  8. Videos zum Thema
Die Seite wird geladen...
  • Annonce

  • Annonce