John the Ripper jumbo - advanced offline password cracker, which supports hundreds of hash and cipher types, and runs on many operating systems, CPUs, GPUs, and even some FPGAs
WARNING, LUKS format hash representation will change in future releases,
see doc/README.LUKS
john: luks_fmt_plug.c:475: get_salt: Assertion `res == cs.afsize' failed.
Aborted
2. GDB debug
Program received signal SIGABRT, Aborted.
0x00007ffff6668cc9 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
56 ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#0 0x00007ffff6668cc9 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#1 0x00007ffff666c0d8 in __GI_abort () at abort.c:89
#2 0x00007ffff6661b86 in __assert_fail_base (fmt=0x7ffff67b2830 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x6765e6 "res == cs.afsize",
file=file@entry=0x6765cf "luks_fmt_plug.c", line=line@entry=475, function=function@entry=0x68b921 <__PRETTY_FUNCTION__.17398> "get_salt") at assert.c:92
#3 0x00007ffff6661c32 in __GI___assert_fail (assertion=assertion@entry=0x6765e6 "res == cs.afsize", file=file@entry=0x6765cf "luks_fmt_plug.c", line=line@entry=475,
function=function@entry=0x68b921 <__PRETTY_FUNCTION__.17398> "get_salt") at assert.c:101
#4 0x000000000052c4d4 in get_salt (ciphertext=<optimized out>) at luks_fmt_plug.c:475
#5 0x00000000005cdfa2 in ldr_load_pw_line (db=<optimized out>, line=<optimized out>) at loader.c:897
#6 0x00000000005cbba1 in read_file (db=0xfac1c0 <database>, name=0x10ca118 "luks_2", flags=<optimized out>, process_line=0x5cdae0 <ldr_load_pw_line>) at loader.c:135
#7 0x00000000005c9f5a in john_load () at john.c:1006
#8 0x00000000005ca7f5 in john_init (name=0x7fffffffec3d "john", argc=2, argv=0x7fffffffe9a8) at john.c:1290
#9 0x00000000005cb4e6 in main (argc=2, argv=0x7fffffffe9a8) at john.c:1730
This bug is found by fuzz.pl written by solar.
1. Reproduce
$ ./configure && make -sj8 $ cat pwfile
$ ./john pwfile
2. GDB debug