Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di PaoDJ
    Registrato dal
    Oct 2001
    Messaggi
    273

    [PHP] Sessioni e sicurezza

    Ciao a tutti,

    sul mio sito utilizzo le sessioni per gestire i login e le autenticazioni.

    Avrei da fare una domanda: php passa l'id di sessione via cookie e, in caso non ci riesca, via GET. Se io per esempio creo una sessione con l'id "PHPSESSID=XXX" e poi vado su un altro pc e inserisco lo stesso id di sessione, riesco ad accedere alle pagine con la stessa sessione usata dal primo computer.

    Per farla breve: se io ho un computer che non accetta i cookie, php passerà l'id di sessione sempre via get. Ammettiamo che io mi loggo sul sito e visito l'homepage. Avrò un url come questo:

    http://www.miosito.com/index.php?PHPSESSIOD=MIOID

    Se io visito quest'url da un altro pc, php attribuirà anche a questo pc lo stesso id di sessione con un notevole problema di sicurezza.

    Come si può ovviare a questo problema?

  2. #2
    Utente di HTML.it L'avatar di PaoDJ
    Registrato dal
    Oct 2001
    Messaggi
    273
    Nessuno sa trovare una soluzione a questo problema??

  3. #3
    Utente di HTML.it L'avatar di mark2x
    Registrato dal
    Nov 2005
    Messaggi
    1,940
    Certo / non si può..
    Anzi tale problema si può evitare... usando i biscottini....

    [.:: JaguarXF ::.]
    __________________

  4. #4
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    L'unica soluzione è non usare la trasmissione del sid via url

  5. #5
    Utente di HTML.it L'avatar di PaoDJ
    Registrato dal
    Oct 2001
    Messaggi
    273
    Questo va bene ma... su alcuni internet explorer se si aprono delle popup non legge i cookie se vengono rilasciati dal dominio.

    Esempio: io rilascio i cookie con php con il dominio: .dominio.it
    Internet explorer, aperta una popup da subdominio.dominio.it non legge i cookie dell'id di sessione.

    NB: non succede con TUTTE le versioni di internet explorer ma solo con qualcuna...

    Per questo stavo pensando di passare l'sid per get...

  6. #6
    si chiama session hijacking, quando utilizzato per ciulare l'account altrui.

    Esistono metodi semplici per limitarne le probabilità di successo. Associare alla sessione l'indirizzo IP e lo User Agent nel momento in cui si crea la sessione, riduce il rischio (teoricamente non lo elimina ma le probabilità diventano più favorevoli).

    Inoltre, quando si tratta di accesso ad aree riservate, non bisogna MAI creare la sessione e quindi fornirne l'ID prima che il login sia avvenuto, cioè mai fare un login su una sessione già inizializzata.


    Se poi l'utente che accede ad un'area a lui riservata è così pirla da passare l'URL con la sua sessione ad un altro utente che abbia il suo stesso IP, sistema operativo e browser, beh, tanto vale che gli dia la password, non è che puoi evitare il darwinismo sociale via software

  7. #7
    ah, per il mio punto di vista ripudiare in toto l'SID su URL non è un'ottima scelta. L'utente può avere le sue ragioni per non poter usare i cookie in quel momento, io gli offro comunque un servizio funzionante in ogni caso (oltre al fatto che non tutte le problematiche sono risolvibili con cookie, ad esempio sessioni condivise tra domini diversi).

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.