ASN.1
Qu'est-ce que ASN.1 ?
ASN.1Abstract Syntax Notation One : norme ITU-T (serie X.680) qui decrit, de maniere independante du langage, des structures de donnees utilisees en cryptographie et en telecoms.
ASN.1 est une notation formelle definie dans ITU-T X.680 et X.681 pour decrire des donnees structurees : entiers, sequences, ensembles, choix et types etiquetes. Les normes X.690 specifient les codages binaires : BER (de base), CER, DER (distinguished, omnipresent dans la PKI) et PER (compact). ASN.1 est au coeur des certificats X.509, de CMS/PKCS#7, PKCS#12, LDAP, Kerberos, SNMP et de nombreux protocoles telecoms (signalisation 3GPP, GSM MAP, S1AP). Comme DER garantit un codage canonique unique, les signatures et empreintes calculees sur des structures ASN.1 sont reproductibles. Des bogues de parseurs ASN.1 sont a l'origine de vulnerabilites celebres (CVE-2016-2108 dans OpenSSL, CVE-2021-3711) : il est donc essentiel d'utiliser des parseurs surs et un DER strict.
● Exemples
- 01
Un certificat X.509 est une SEQUENCE de TBSCertificate, signatureAlgorithm et signatureValue, codee en DER.
- 02
Les messages S1AP 3GPP entre un eNodeB et un MME sont decrits en ASN.1 et codes en PER.
● Questions fréquentes
Qu'est-ce que ASN.1 ?
Abstract Syntax Notation One : norme ITU-T (serie X.680) qui decrit, de maniere independante du langage, des structures de donnees utilisees en cryptographie et en telecoms. Cette notion relève de la catégorie Cryptographie en cybersécurité.
Que signifie ASN.1 ?
Abstract Syntax Notation One : norme ITU-T (serie X.680) qui decrit, de maniere independante du langage, des structures de donnees utilisees en cryptographie et en telecoms.
Comment fonctionne ASN.1 ?
ASN.1 est une notation formelle definie dans ITU-T X.680 et X.681 pour decrire des donnees structurees : entiers, sequences, ensembles, choix et types etiquetes. Les normes X.690 specifient les codages binaires : BER (de base), CER, DER (distinguished, omnipresent dans la PKI) et PER (compact). ASN.1 est au coeur des certificats X.509, de CMS/PKCS#7, PKCS#12, LDAP, Kerberos, SNMP et de nombreux protocoles telecoms (signalisation 3GPP, GSM MAP, S1AP). Comme DER garantit un codage canonique unique, les signatures et empreintes calculees sur des structures ASN.1 sont reproductibles. Des bogues de parseurs ASN.1 sont a l'origine de vulnerabilites celebres (CVE-2016-2108 dans OpenSSL, CVE-2021-3711) : il est donc essentiel d'utiliser des parseurs surs et un DER strict.
Comment se défendre contre ASN.1 ?
Les défenses contre ASN.1 combinent habituellement des contrôles techniques et des pratiques opérationnelles, comme détaillé dans la définition ci-dessus.
Quels sont les autres noms de ASN.1 ?
Noms alternatifs courants : Abstract Syntax Notation One, X.680.
● Termes liés
- cryptography№ 831
PKCS#7
Format binaire pour emballer des donnees signees et/ou chiffrees, standardise par l'IETF sous le nom de Cryptographic Message Syntax (CMS) dans la RFC 5652.
- cryptography№ 830
PKCS#12
Format de fichier protege par mot de passe (.pfx / .p12) qui regroupe une cle privee et sa chaine de certificats, standardise par la RFC 7292.
- cryptography№ 811
Format PEM
Encodage textuel d'objets cryptographiques (cles, certificats, CRL) defini par la RFC 7468 qui encapsule du DER en Base64 entre des lignes BEGIN et END.
- identity-access№ 611
LDAP
Lightweight Directory Access Protocol, standard de l'IETF pour interroger et modifier des annuaires hiérarchiques sur TCP/IP, généralement sur le port 389 ou 636 avec TLS.
- identity-access№ 584
Kerberos
Protocole d'authentification réseau à base de tickets utilisant la cryptographie symétrique et un Centre de Distribution de Clés de confiance pour offrir une authentification unique sécurisée.