Re: FIPS mode: modprobe: ERROR: could not insert 'drbg'
Am Dienstag, 9. August 2016, 17:11:09 CEST schrieb Tapas Sarangi: Hi Tapas, Herbert, > Hi Stephan, > > Thanks. I have already tried that. ‘drbg’ module is loaded fine in a > non-fips mode. Here are output from some commands. There is something strange going on. I have to compile the DRBG statically. When booting the kernel with fips=1 (of course after changing the key size to 2k or 3k in certs/x509.genkey), the DRBG does not show up in /proc/crypto nor can I find testmgr entries about the DRBG. When I reboot the kernel without fips=1, all works as expected. When I create a copy of the drbg.c code and have it compiled as a module to ensure it is signed, I can insmod it and the testmgr successfully tests it. Note, with fips=1, my kernel crashes randomly somewhere in the elf loading code -- I guess it is because there is no stdrng. > > I see that at some point you had a patch to use CONFIG_CRYPTO_LRNG. I am > not using that, could that be a problem ? Nope, this LRNG is something completely different -- it is my proposal to replace the current /dev/random and /dev/urandom implementation as documented in [1]. [1] http://www.chronox.de/lrng.html Ciao Stephan -- To unsubscribe from this list: send the line "unsubscribe linux-crypto" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: FIPS mode: modprobe: ERROR: could not insert 'drbg'
Hi Stephan, Thanks. I have already tried that. ‘drbg’ module is loaded fine in a non-fips mode. Here are output from some commands. I see that at some point you had a patch to use CONFIG_CRYPTO_LRNG. I am not using that, could that be a problem ? -Tapas [root@localhost ~]# modprobe drbg [root@localhost ~]# echo $? 0 [root@localhost ~]# dmesg | tail -5 [3.636174] nf_conntrack version 0.5.0 (7168 buckets, 28672 max) [3.738645] NET: Registered protocol family 10 [3.743004] ip6_tables: (C) 2000-2006 Netfilter Core Team [3.773384] input: ImExPS/2 BYD TouchPad as /devices/platform/i8042/serio1/input/input3 [3.776803] mousedev: PS/2 mouse device common for all mice [root@localhost ~]# lsmod | grep drbg drbg 14147 1 [root@localhost ~]# modinfo drbg filename: /lib/modules/4.7.0-1.tos2_5/kernel/crypto/drbg.ko.gz alias: crypto-stdrng alias: stdrng description:NIST SP800-90A Deterministic Random Bit Generator (DRBG) using following cores: HMAC author: Stephan Muellerlicense:GPL alias: crypto-drbg_nopr_hmac_sha1 alias: drbg_nopr_hmac_sha1 alias: crypto-drbg_pr_hmac_sha1 alias: drbg_pr_hmac_sha1 alias: crypto-drbg_nopr_hmac_sha256 alias: drbg_nopr_hmac_sha256 alias: crypto-drbg_pr_hmac_sha256 alias: drbg_pr_hmac_sha256 alias: crypto-drbg_nopr_hmac_sha384 alias: drbg_nopr_hmac_sha384 alias: crypto-drbg_pr_hmac_sha384 alias: drbg_pr_hmac_sha384 alias: crypto-drbg_nopr_hmac_sha512 alias: drbg_nopr_hmac_sha512 alias: crypto-drbg_pr_hmac_sha512 alias: drbg_pr_hmac_sha512 depends: intree: Y vermagic: 4.7.0-1.tos2_5 SMP mod_unload modversions On 8/9/16, 12:05 PM, "Stephan Mueller" wrote: >Am Dienstag, 9. August 2016, 16:34:59 CEST schrieb Tapas Sarangi: > >Hi Tapas, > >> Hi Stephan, >> >> Following up from the other thread: >> >> While trying to boot in FIPS mode, kernel panics with the following >> message. So far, I don¹t have success to get more information about >>which >> module or symbol is causing this. I haven¹t found any errors or warnings >> in kernel compilation. It boots fine in a non-fips mode. >> >> I am also pasting the CRYPTO related configs that I have enabled (See >> below). > >I do not see the issue immediately. Could you boot without fips=1 and do >a >modprobe drbg ? > >I am also testing fips=1 now. > >Ciao >Stephan This transmission may contain information that is privileged, confidential, and/or exempt from disclosure under applicable law. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution, or use of the information contained herein (including any reliance thereon) is strictly prohibited. If you received this transmission in error, please immediately contact the sender and destroy the material in its entirety, whether in electronic or hard copy format.
Re: FIPS mode: modprobe: ERROR: could not insert 'drbg'
Am Dienstag, 9. August 2016, 16:34:59 CEST schrieb Tapas Sarangi: Hi Tapas, > Hi Stephan, > > Following up from the other thread: > > While trying to boot in FIPS mode, kernel panics with the following > message. So far, I don¹t have success to get more information about which > module or symbol is causing this. I haven¹t found any errors or warnings > in kernel compilation. It boots fine in a non-fips mode. > > I am also pasting the CRYPTO related configs that I have enabled (See > below). I do not see the issue immediately. Could you boot without fips=1 and do a modprobe drbg ? I am also testing fips=1 now. Ciao Stephan -- To unsubscribe from this list: send the line "unsubscribe linux-crypto" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
FIPS mode: modprobe: ERROR: could not insert 'drbg'
Hi Stephan, Following up from the other thread: While trying to boot in FIPS mode, kernel panics with the following message. So far, I don¹t have success to get more information about which module or symbol is causing this. I haven¹t found any errors or warnings in kernel compilation. It boots fine in a non-fips mode. I am also pasting the CRYPTO related configs that I have enabled (See below). -Tapas /boot/vmlinuz-4.7.0-1.tos2_5: OK modprobe: ERROR: could not insert 'drbg': Unknown symbol in module, or unknown parameter (see dmesg) [1.330798] dracut: FATAL: FIPS integrity test failed [1.331534] dracut: Refusing to continue [1.333491] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0100 [1.333491] [1.334768] CPU: 0 PID: 1 Comm: init Not tainted 4.7.0-1.tos2_5 #1 [1.335632] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.8.2-20150714_191134- 04/01/2014 [1.336114] 88003e1dfbc8 812ae299 0001 [1.336114] 0001 81716b00 88003e21 88003e1dfc48 [1.336114] 81104fd4 0010 88003e1dfc58 88003e1dfbf8 [1.336114] Call Trace: [1.336114] [] dump_stack+0x51/0x78 [1.336114] [] panic+0xc1/0x211 [1.336114] [] forget_original_parent+0x411/0x420 [1.336114] [] ? perf_pin_task_context+0x12/0x40 [1.336114] [] ? perf_event_exit_task+0x3b2/0x470 [1.336114] [] exit_notify+0x36/0x1e0 [1.336114] [] ? cgroup_exit+0x71/0xc0 [1.336114] [] ? task_work_run+0x5f/0x90 [1.336114] [] do_exit+0x31f/0x640 [1.336114] [] ? fput+0x9/0x10 [1.336114] [] ? task_work_run+0x5f/0x90 [1.336114] [] ? __do_page_fault+0x17e/0x450 [1.336114] [] do_group_exit+0x49/0xb0 [1.336114] [] SyS_exit_group+0x12/0x20 [1.336114] [] entry_SYSCALL_64_fastpath+0x13/0x8f [1.336114] Kernel Offset: disabled [1.336114] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x0100 [1.336114] # Enabled CRYPTO configs [root@localhost ~]# egrep 'CRYPTO.*=y|CRYPTO.*=m' /boot/config-4.7.0-1.tos2_5 CONFIG_BLK_DEV_CRYPTOLOOP=m CONFIG_RT2X00_LIB_CRYPTO=y CONFIG_CRYPTO=y CONFIG_CRYPTO_FIPS=y CONFIG_CRYPTO_ALGAPI=y CONFIG_CRYPTO_ALGAPI2=y CONFIG_CRYPTO_AEAD=m CONFIG_CRYPTO_AEAD2=y CONFIG_CRYPTO_BLKCIPHER=y CONFIG_CRYPTO_BLKCIPHER2=y CONFIG_CRYPTO_HASH=y CONFIG_CRYPTO_HASH2=y CONFIG_CRYPTO_RNG=y CONFIG_CRYPTO_RNG2=y CONFIG_CRYPTO_RNG_DEFAULT=m CONFIG_CRYPTO_AKCIPHER2=y CONFIG_CRYPTO_AKCIPHER=y CONFIG_CRYPTO_RSA=y CONFIG_CRYPTO_MANAGER=y CONFIG_CRYPTO_MANAGER2=y CONFIG_CRYPTO_USER=m CONFIG_CRYPTO_GF128MUL=m CONFIG_CRYPTO_NULL=m CONFIG_CRYPTO_NULL2=y CONFIG_CRYPTO_PCRYPT=m CONFIG_CRYPTO_WORKQUEUE=y CONFIG_CRYPTO_CRYPTD=m CONFIG_CRYPTO_MCRYPTD=m CONFIG_CRYPTO_AUTHENC=m CONFIG_CRYPTO_TEST=m CONFIG_CRYPTO_ABLK_HELPER=m CONFIG_CRYPTO_GLUE_HELPER_X86=m CONFIG_CRYPTO_CCM=m CONFIG_CRYPTO_GCM=m CONFIG_CRYPTO_SEQIV=m CONFIG_CRYPTO_ECHAINIV=m CONFIG_CRYPTO_CBC=m CONFIG_CRYPTO_CTR=m CONFIG_CRYPTO_CTS=m CONFIG_CRYPTO_ECB=y CONFIG_CRYPTO_LRW=m CONFIG_CRYPTO_PCBC=m CONFIG_CRYPTO_XTS=m CONFIG_CRYPTO_CMAC=m CONFIG_CRYPTO_HMAC=m CONFIG_CRYPTO_XCBC=m CONFIG_CRYPTO_VMAC=m CONFIG_CRYPTO_CRC32C=y CONFIG_CRYPTO_CRC32C_INTEL=m CONFIG_CRYPTO_CRC32=m CONFIG_CRYPTO_CRC32_PCLMUL=m CONFIG_CRYPTO_CRCT10DIF=y CONFIG_CRYPTO_CRCT10DIF_PCLMUL=m CONFIG_CRYPTO_GHASH=m CONFIG_CRYPTO_MD4=m CONFIG_CRYPTO_MD5=y CONFIG_CRYPTO_MICHAEL_MIC=m CONFIG_CRYPTO_RMD128=m CONFIG_CRYPTO_RMD160=m CONFIG_CRYPTO_RMD256=m CONFIG_CRYPTO_RMD320=m CONFIG_CRYPTO_SHA1=y CONFIG_CRYPTO_SHA1_SSSE3=m CONFIG_CRYPTO_SHA256_SSSE3=m CONFIG_CRYPTO_SHA512_SSSE3=m CONFIG_CRYPTO_SHA1_MB=m CONFIG_CRYPTO_SHA256=y CONFIG_CRYPTO_SHA512=m CONFIG_CRYPTO_TGR192=m CONFIG_CRYPTO_WP512=m CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL=m CONFIG_CRYPTO_AES=y CONFIG_CRYPTO_AES_X86_64=m CONFIG_CRYPTO_AES_NI_INTEL=m CONFIG_CRYPTO_ANUBIS=m CONFIG_CRYPTO_ARC4=m CONFIG_CRYPTO_BLOWFISH=m CONFIG_CRYPTO_BLOWFISH_COMMON=m CONFIG_CRYPTO_BLOWFISH_X86_64=m CONFIG_CRYPTO_CAMELLIA=m CONFIG_CRYPTO_CAMELLIA_X86_64=m CONFIG_CRYPTO_CAMELLIA_AESNI_AVX_X86_64=m CONFIG_CRYPTO_CAMELLIA_AESNI_AVX2_X86_64=m CONFIG_CRYPTO_CAST_COMMON=m CONFIG_CRYPTO_CAST5=m CONFIG_CRYPTO_CAST5_AVX_X86_64=m CONFIG_CRYPTO_CAST6=m CONFIG_CRYPTO_CAST6_AVX_X86_64=m CONFIG_CRYPTO_DES=m CONFIG_CRYPTO_DES3_EDE_X86_64=m CONFIG_CRYPTO_FCRYPT=m CONFIG_CRYPTO_KHAZAD=m CONFIG_CRYPTO_SALSA20=m CONFIG_CRYPTO_SALSA20_X86_64=m CONFIG_CRYPTO_SEED=m CONFIG_CRYPTO_SERPENT=m CONFIG_CRYPTO_SERPENT_SSE2_X86_64=m CONFIG_CRYPTO_SERPENT_AVX_X86_64=m CONFIG_CRYPTO_SERPENT_AVX2_X86_64=m CONFIG_CRYPTO_TEA=m CONFIG_CRYPTO_TWOFISH=m CONFIG_CRYPTO_TWOFISH_COMMON=m CONFIG_CRYPTO_TWOFISH_X86_64=m CONFIG_CRYPTO_TWOFISH_X86_64_3WAY=m CONFIG_CRYPTO_TWOFISH_AVX_X86_64=m CONFIG_CRYPTO_DEFLATE=m CONFIG_CRYPTO_LZO=m CONFIG_CRYPTO_LZ4=m CONFIG_CRYPTO_LZ4HC=m CONFIG_CRYPTO_ANSI_CPRNG=m CONFIG_CRYPTO_DRBG_MENU=m CONFIG_CRYPTO_DRBG_HMAC=y CONFIG_CRYPTO_DRBG=m