Intervallo IP nel nome alternativo dell'oggetto SSL

9

È possibile creare un certificato SSL (autofirmato) specificando l'intervallo IP nella sezione SAN di OpenSSL conf come questo?

IP.1=192.168.0.0/24
    
posta James Selvakumar 11.06.2015 - 07:44
fonte

2 risposte

7

No

(EDIT: questo era un post molto più lungo, stavo speculando sui caratteri jolly. Si scopre: è molto più semplice.)

Non puoi farlo.

RFC 5280 dice :

When the subjectAltName extension contains an iPAddress, the address
MUST be stored in the octet string in "network byte order", as
specified in [RFC791].  The least significant bit (LSB) of each octet
is the LSB of the corresponding byte in the network address.  For IP
version 4, as specified in [RFC791], the octet string MUST contain
exactly four octets.  For IP version 6, as specified in
[RFC2460], the octet string MUST contain exactly sixteen octets.

Quindi non c'è spazio per alcun carattere jolly.

Nota:
Ora in passato c'era un modo per inserire un indirizzo IP in un campo SAN di tipo DNS (!). Questo è sempre stato dannoso. Ma almeno, potresti aver avuto lo spazio addizionale per trucchi con caratteri jolly.

    
risposta data 11.06.2015 - 08:19
fonte
2

In primo luogo, è possibile mantenere 192.168.0.0/24 nel campo SubjectAltName. Tuttavia, questo tipo di certificato non è considerato attendibile da nessun browser.

Ti darò un esempio:
Ecco un certificato emesso dal mio PKI.

Certificato RSA-2048

-----BEGIN CERTIFICATE-----
MIIFcDCCBFigAwIBAgIQHrEy1YnIzRfZZ/QkuWlcYDANBgkqhkiG9w0BAQsFADCB
gTELMAkGA1UEBhMCQ04xIzAhBgNVBAoMGkplbW15TG92ZUplbm55IFBLSSBTZXJ2
aWNlMR4wHAYDVQQLDBVwa2kuamVtbXlsb3ZlamVubnkudGsxLTArBgNVBAMMJEpl
bW15TG92ZUplbm55IFNIQTIgU2VjdXJlIFNlcnZlciBDQTAeFw0xODAxMDEwMDAw
MDBaFw0xOTEyMzEyMzU5NTlaMF4xGTAXBgNVBAsMEFRlc3QgQ2VydGlmaWNhdGUx
GzAZBgNVBAoMEkxvY2FsIEFyZWEgTmV0d29yazEkMCIGA1UEAwwbSVAgUmFuZ2Ug
aW4gU3ViamVjdEFsdE5hbWVzMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAtMfwk/HrSvX9TmqLlXLDVAdrLPkcAxIvvYPH1rgFXzRc3Hst2ekFLUs8CNF/
WhTk+/agE6lJ9uiRtROiWPvOdDY/X7buqEr7HOknPpoViLv+qs9Fv8MVljS/Y0m8
lwbrPNTkUxp6lMEwAFiaZJDx/LxzODAC2vI3CocNGDK+FnsrWcw6ndl/nfjd0Yea
pIcyP7aMXw4mQCqJL2E0cBodNMcfDt9N10mMTkyR1HMGeq345R/R4V5uW1YG5heK
uM0dguujK506w/Y659/copLTBVGj7y4GppOB/nEs5BpeSSrrwa+0tPJZOulCO31D
WnkckimSQItD6x0J3dt9B/JprwIDAQABo4ICBDCCAgAwHwYDVR0jBBgwFoAU4BPp
j9H7K19wMi69RQ9t6BLyNOcwHQYDVR0OBBYEFB7paxWN91FXk0Ydj4Oq1Sopdy8Y
MBMGA1UdEQQMMAqHCMCoAAD///8AMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAU
BggrBgEFBQcDAQYIKwYBBQUHAwIwSQYDVR0fBEIwQDA+oDygOoY4aHR0cDovL2Ny
bHMucGtpLmplbW15bG92ZWplbm55LnRrL1NIQTJTZWN1cmVTZXJ2ZXJDQS5jcmww
gYIGA1UdIAR7MHkwbQYJYIZIAaSiJwECMGAwLQYIKwYBBQUHAgEWIWh0dHBzOi8v
cGtpLmplbW15bG92ZWplbm55LnRrL2NwczAvBggrBgEFBQcCAjAjGiFodHRwczov
L3BraS5qZW1teWxvdmVqZW5ueS50ay9ycGEwCAYGZ4EMAQIBMIGbBggrBgEFBQcB
AQSBjjCBizBABggrBgEFBQcwAYY0aHR0cDovL29jc3AucGtpLmplbW15bG92ZWpl
bm55LnRrL1NIQTJTZWN1cmVTZXJ2ZXJDQTBHBggrBgEFBQcwAoY7aHR0cDovL2Nh
Y2VydHMucGtpLmplbW15bG92ZWplbm55LnRrL1NIQTJTZWN1cmVTZXJ2ZXJDQS5j
cnQwDAYDVR0TAQH/BAIwADANBgkqhkiG9w0BAQsFAAOCAQEAGYh4L1aVt+0qHWqB
NsW7CrC4GzfvA/+sEbWT+K9QjSc3lXwG2KA4YHfpOUaB8Qh8sv34Zubu1jYvDmRz
EiWFuieQGfC+FKUTbAEjfT5tGKKaYm9P3URAi80wXAl7ysQcEJuEaJMCeayaaW1x
PvARJovPoxKlmU8o7wBWCo5ji3R/5UFa4o4XtP1WFBliP3zDxJ1kBKPsQV3g2/98
9ar8REbX6Cw1XcXYXrJtUIQVl/9p0UmATIaCDS6Bk/Fesg9Lt6ngbiuDYNuvvPwu
jw8dH+ycOvG2QvbDrzqZnx7ZpVZtuTQ4cBf5hMPnDqCq/yHEFr/CO+zf4awAnjho
cjwzhQ==
-----END CERTIFICATE-----

Chiave RSA-2048

-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCAQEAtMfwk/HrSvX9TmqLlXLDVAdrLPkcAxIvvYPH1rgFXzRc3Hst
2ekFLUs8CNF/WhTk+/agE6lJ9uiRtROiWPvOdDY/X7buqEr7HOknPpoViLv+qs9F
v8MVljS/Y0m8lwbrPNTkUxp6lMEwAFiaZJDx/LxzODAC2vI3CocNGDK+FnsrWcw6
ndl/nfjd0YeapIcyP7aMXw4mQCqJL2E0cBodNMcfDt9N10mMTkyR1HMGeq345R/R
4V5uW1YG5heKuM0dguujK506w/Y659/copLTBVGj7y4GppOB/nEs5BpeSSrrwa+0
tPJZOulCO31DWnkckimSQItD6x0J3dt9B/JprwIDAQABAoIBAQCnuakXWig3kCrI
CkofCi73Uzq4qxa2MrVgW1eZe3pgbjCJzy8nMe6/q0Gz3MsPRLt+mb7C/xnEntow
6lqBvH47i+kYYJzkP0zj8d2bU1IPXnxU9aF83P62MZIwCEWUybKO6eY8xCBeyy5B
4/K6w1AAcMdlpgXAJWGzvsEDZnC+YVAlqu8ARiGi5cvYS6sflsw5JezR6Ur+Rbd8
GIIj6+pDBR6ksiOiVLHgs5a7T1KH0rriYmB64nNw7o+4oGub2/E223qVwWfyM8Wq
KRIGV0lgDexqP2v1ayqMvSQRJQ28QqmtMChVje/OXGnYWqbGHVvUV3kWoqonT9e9
AAFSHmYBAoGBAOZKRMXgbqEzFa/4qqqVwnQ1aunu/3cpuLp4fiYhoSTIPfR/+Gzf
2uJove2518h1oNS/wJ7I0RUfLdYzv8MRB6vkSLRitMrdxhyY3RRhP0GST+hDhsBa
BSL1vG3mA6uILGWIf0bUrFa+7+LEZW5AuDR6XCYCqQ0n+ntox8onJq7vAoGBAMj2
sUlG0YG0GP3Ke521VbGPrxbTmHkhhd/idGJf/tA+7thd0uu51+b0zxgKwBl2JnEa
yljH3xXBdj7YtMIQHrajnlQ/Ib1nMPG0njCwTZc+zXk3GPnJb5G1fvgoeQVNjCpw
yll5cxqqrFuwiSAfv5W3bKGvqZdWSIDUVKlan/FBAoGAGaMrBNx3dHq7b1u/pD4H
5+gKfwCccCe06Q2A/b3AsteYDiAxB+3j8FC41D5cR3TQ8t5mE0dH/5H5CF+6eXzr
3bcMYQicF/mYlJZwBlTNNf+T5ceeuMtMxxeUYqe4wN/oEWWgxcHnbcDT8+rpX9zU
pQL6P0EMkOpieFqx4094fwECgYAYw62dJgjzPspFnAoXqRziQJ6G5ZRIeQUSTcmh
xcqUxuyP5R/0xHYCk/BhOhHqEVEzZuXAgwDOoYR8wh+kOnBOeWMtZoo12N2DK4rC
3TbyiF6xrUR6o4QIJKF82x/us1uuby/ATuMMSjPrKJn9R2xIes38LrVrXMqadY/p
Pq2vAQKBgQCSd5d/UD9Bt3AoD7+hASy4ZHnayVMG0jukY/bOnzAzX1jkzxuUFy27
fmYWqxp+5G9OxBVj3NK3HGZAGPd8JgnVyAdAJb6FufFf0FvASqOqIhno306BenvX
KX9iEqzmLmj86wyLKUgqBOsHf8kPECscD5SNRwaX6Px6p+UZ8QA+sg==
-----END RSA PRIVATE KEY-----

Visualizza questo certificato in Windows 10, puoi trovare

IP Address=192.168.0.0
Mask=255.255.255.0

Nel campo Nome alternativo soggetto, che ha dimostrato che SubjectAltName può essere un intervallo di IP.

Questo tipo di non fidarsi affatto!
Puoi provarlo da solo:
Distribuire questo certificato su una macchina il cui IP è compreso nell'intervallo 192.168.0.1 ~ 192.168.0.254. E fidati del mio certificato di root nel tuo computer (il mio certificato di origine può essere trovato nel percorso cert, il cui nome è JemmyLoveJenny EV Root CA)

Ho provato molte volte, non importa se utilizzo IE, Edge, Chrome o FireFox, nessuno di loro si fida di questo certificato. Il codice di errore restituito è "NET :: ERR_CERT_COMMON_NAME_INVALID", il che significa che né CommonName né SubjectAltName corrispondono a IP 192.168.0.1.

In conclusione, è possibile incorporare un intervallo di IP nel campo SubjectAltNames. Ma nessuno dei moderni browser si fiderebbe di questo tipo di certificato.

    
risposta data 16.12.2018 - 16:39
fonte

Leggi altre domande sui tag