Questo codice è vulnerabile? [chiuso]

0

Ho sviluppato un codice php di seguito. Mi piacerebbe sapere quali sono le vulnerabilità di sicurezza presenti all'interno di questo codice php?

<?php
        if(isset($_SESSION['id'])){
        // get data from mysql table where id = $_SESSION['id'];
        // shows data

        }else{
        echo "pls login";
        }

     ?>
    
posta messi fan 03.01.2013 - 07:15
fonte

2 risposte

8

Questo snippet di per sé non è realmente un controllo di sicurezza, ma controlla solo che esista un valore prima di usarlo (buona pratica, ma non correlata alla sicurezza). La carne del tuo codice sarà in:

from mysql table where id = $_SESSION['id'];

E tutto dipende da come i dati sono arrivati a $ _SESSION ['id']. Prima di inserirla o prima di usarla, è necessario eseguire i controlli di sicurezza appropriati, in base a cosa si intende utilizzare per il valore. Nel tuo caso, controlla SQL injection E stai meglio usando le query parametrizzate.

Se il tuo in realtà in realtà assomiglia un po 'a quello che hai scritto, cioè una concatenazione di stringhe con $ _SESSION [' id '] non specificato come valore numerico, quindi yes , questo è MOLTO vulnerabile.

    
risposta data 03.01.2013 - 18:29
fonte
0

Finché cancelli correttamente le variabili di sessione dopo che l'utente si è disconnesso, questo dovrebbe andare bene. Anche se questa particolare variabile di sessione non è iniettabile, assicurati di utilizzare query parametrizzate in tutto il tuo codice.

    
risposta data 03.01.2013 - 07:52
fonte

Leggi altre domande sui tag