PDA

View Full Version : [PHP] Login sicuro al web Service SOAP


race2
11-05-2018, 14:55
Salve,
Potreste dirmi cosa si intende per "login sicuro" tra Client e Server dove gira un web service soap in php??

Mi hanno chiesto se il mio client in php esegue una autenticazione sicura all'arrivo nel server...!!

Come è progettata la logica/dinamica di un login sicuro ???

iezzetto
23-05-2018, 13:35
Sinceramente non saprei.

Probabilmente volevano sapere se la tua pagina di login sa difendersi bene da attacchi (sql injections per esempio).

E' possibile?

Nuke987
23-05-2018, 17:06
Senza entrare troppo nel merito di SOAP, potrei fare un esempio curioso che avevo trovato anni fa in qualche forum di programmatori che spiega cosa si intende per login sicuro.

C'è un motociclista che per andare da un punto A ad un punto B deve attraversare una galleria:

Il motocilista è l'informazione (username, password...). Se il motociclista è nudo l'informazione è in chiaro. Se è vestito è protetta da cifratura
Il punto A di partenza è la pagina dove si effettua il login (il form)
Il punto B di uscita è il server che procede si occupa dell'autenticazione


1. Tutto in chiaro

Il motociclista è nudo per tutto il tragitto e passa all'interno di una galleria in vetro dal quale chiunque può continuare a vederlo. Ciò significa che l'informazione (la password ad esempio) viaggia in chiaro (http e non https) dall'inizio alla fine e le vergogne del nostro motociclista sono visibili anche quando è in galleria. La protezione in questo caso è pari a zero perché è possibile compiere un attacco in qualsiasi momento.

2. Protezione parziale

Il motociclista è ancora nudo ma quanto meno il tunnel è in cemento quindi nessuno può vederlo se non all'ingresso e all'uscita. Ciò significa che la password viaggia su una connessione sicura (https) ma è comunque in chiaro quindi la si può attaccare alle estremità ovverosia bucando il sito dove si fa il login o il sever che autentica.

3. Protezione da punto a punto

Il motociclista è vestito e passa in un tunnel in cemento. Non è mai possibile vedere le sue nudità in altre parole non solo la password è cifrata ma viaggia anche attraverso una connessione sicura. Questo è un login sicuro perché l'informazione è sempre cifrata e viaggia solo attraverso una connessione sicura.

race2
23-05-2018, 17:42
Ho portato avanti altre discussioni quasi identiche nel forum e su altri forum, giusto per confrontare le risposte e poter sapere quali sono i pareri maggiori,

con che metodo fareste un login e un passaggio di una semplice stringa "Hello World" dal Client al Server?

io direi cosi:
---
https +
scambio di chiavi simmetriche mediante protocollo asimmetrico +
criptatura dati inviati in base 64 oppure AES
---

voi cosa ne pensate?

iezzetto
24-05-2018, 10:21
Si penso sia una buona soluzione quella della doppia chiave.

Visto che hai parlato di PHP dai uno sguardo alla libreria libsodium. E' veramente ben fata!

Ciao

race2
24-05-2018, 14:02
Si penso sia una buona soluzione quella della doppia chiave.

Visto che hai parlato di PHP dai uno sguardo alla libreria libsodium. E' veramente ben fata!

Ciao

ok, ci guardo, grazie molte.