Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Sun, 14 Apr 2013 22:30:41 +0200
From: Frank Dittrich <>
Subject: Re: testing all valid()s

On 04/14/2013 02:45 PM, Solar Designer wrote:
> Doesn't happen for me.  I wonder if the problem is in your system's
> libc or libcrypt.  Can you build JtR with -g (and remove -s from
> LDFLAGS) and post a backtrace?  Thanks!

CFLAGS = -c -Wall -O0 -g
$ make linux-x86-sse2 > /dev/null
DES_bs.c:305:25: warning: always_inline function might not be inlinable
dummy.c:98:21: warning: always_inline function might not be inlinable

$ gdb ../run/john
GNU gdb (GDB) Fedora (7.5.1-37.fc18)
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-redhat-linux-gnu".
For bug reporting instructions, please see:
Reading symbols from /home/fd/john-1.7.9/run/john...done.
(gdb) run --format=crypt ../run/crash.crypt
Starting program: /home/fd/john-1.7.9/run/john --format=crypt

Program received signal SIGSEGV, Segmentation fault.
__strlen_sse2 () at ../sysdeps/i386/i686/multiarch/strlen-sse2.S:62
62		cmpb	$0, (%edx)
(gdb) bt
#0  __strlen_sse2 () at ../sysdeps/i386/i686/multiarch/strlen-sse2.S:62
#1  0x08068373 in valid (ciphertext=0xbfffeb66 "$B$$000000000") at
#2  0x0805edec in ldr_split_line (login=0xbfffeafc,
ciphertext=0xbfffeaf8, gecos=0xbfffeaf4,
    home=0xbfffeaf0, source=0x0, format=0x8093bec <database+44>,
options=0x80ce3b4, line=0x0)
    at loader.c:350
#3  0x0805efd5 in ldr_load_pw_line (db=0x8093bc0 <database>,
line=0xbfffeb64 "B") at loader.c:428
#4  0x0805e3f7 in read_file (db=0x8093bc0 <database>, name=0x80ce39c
"../run/crash.crypt", flags=2,
    process_line=0x805ef8b <ldr_load_pw_line>) at loader.c:66
#5  0x0805f504 in ldr_load_pw_file (db=0x8093bc0 <database>,
name=0x80ce39c "../run/crash.crypt")
    at loader.c:569
#6  0x0805dab7 in john_load () at john.c:204
#7  0x0805dd40 in john_init (name=0xbffff306 "john", argc=3,
argv=0xbffff124) at john.c:304
#8  0x0805e137 in main (argc=3, argv=0xbffff124) at john.c:426
(gdb) up
#1  0x08068373 in valid (ciphertext=0xbfffeb66 "$B$$000000000") at
141		if (strlen(new_ciphertext) == length &&
(gdb) print new_ciphertext
$1 = 0x0

So, this is the same statement as with unstable-jumbo, just a different
line number.
Ant new_ciphertext points to NULL.


Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.