El uso de un byte nulo en un certificado cn es muy conocido ...
y vi este código en un popular servidor smtp (que obviamente pensó que no valía la pena usar gnutls o openssl para hacer ese tipo de cosas) :
static bool
does_name_match(const char * name, const char * pat) {
char * cp;
return *pat == '*' /* possible wildcard match */
? *++pat == '.' /* starts star, dot */
&& !strchr(++pat, '*') /* has no more stars */
&& strchr(pat, '.') /* and has another dot. */
&& (cp = strchr(name, '.'))/* The name has at least one dot */
&& strcmp(++cp, pat) == 0 /* and we only compare after it. */
: !strchr(pat+1, '*')
&& strcmp(name, pat) == 0;
}
que evitará el reconocimiento de *.
o *.*
.thoughtcrime.orgtip.email
.thoughtcrime.org*.fmm.email
con mail.fmm.email
.thoughtcrime.org*.e10000.biz%code%.thoughtcrime.org
activará una coincidencia en el caso de %code% con %code%
Así es, o fue posible, registrar algo como %code% (ya que e10000 y biz pueden considerarse palabras comunes y no solo subdominio)