diff --git a/src/common/check_X509.py b/src/common/check_X509.py
index 5a77eedccc66cd6e4fca1d085580a28409d128c8..5d7213dcb6be99f89e902b5413c4ffa712594d8f 100644
--- a/src/common/check_X509.py
+++ b/src/common/check_X509.py
@@ -133,7 +133,12 @@ try:
         for i in range(0, cnt):
             ext = cert.get_extension(i)
             if ext.get_short_name() == 'subjectAltName':
-                r = _parse_asn1(ext.get_data())
+                try:
+                    r = _parse_asn1(ext.get_data())
+                except:
+                    log.error('Wrong data in certificate: subjectAltName=%s' % \
+                        ext.get_data())
+                    continue
                 if 'otherName' in r:
                     if oid_xmppaddr in r['otherName']:
                         for host in r['otherName'][oid_xmppaddr]: