Ho impostato una connessione basata su certificato con socat utilizzando questo tutorial: link
La mia connessione socat funziona come segue (solo le parti rilevanti del comando):
ssl:<server-ip>:<port>,cert=/path/to/client.pem,cafile=/path/to/server.crt
ssl-l:<port>,cert=/path/to/server.pem,cafile=/path/to/client.crt,fork
Lo sto facendo per un corso universitario e c'è un'ulteriore domanda che chiede quali potrebbero essere i problemi di sicurezza a causa della linea
NOTE: The server certificate is only checked for validity against cafile or capath, but not for match with the server’s name or its IP address.
Ora non sono sicuro se lo capisco o no correttamente, il modo in cui lo faccio è:
Il file server.pem
del server ( .key
e .crt
combinati) viene verificato indipendentemente dal fatto che corrisponda al server.crt
del client, tuttavia non controlla il CN del certificato ( server.crt
) per una corrispondenza sul dominio del server / IP / qualunque cosa.
Se ciò è corretto, non riesco a trovare alcun problema critico di sicurezza senza dover rubare la chiave privata del server (nel qual caso l'hai già perso comunque).