Openwall GNU/*/Linux - a small security-enhanced Linux distro for servers
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Tue, 16 Apr 2013 10:33:30 +0200
From: Frank Dittrich <frank_dittrich@...mail.com>
To: john-dev@...ts.openwall.com
Subject: Segfault for ipb2 on linux-x86-clang-debug, linux-x86-clang works
 (was: Segfault for hdaa on linux-x86-clang-debug)

After moving HDAA_fmt_plug.c to unused (see my previous mail), the next
segfault occurred in IPB2_fmt_plug.c

(unstable-jumbo)run $ gdb ./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
<http://gnu.org/licenses/gpl.html>
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:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /home/fd/git/JohnTheRipper/run/john...done.
(gdb) run --test=0 --format=ipb2
Starting program: /home/fd/git/JohnTheRipper/run/john --test=0 --format=ipb2
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/libthread_db.so.1".
Warning: doing quick benchmarking - the performance numbers will be
inaccurate
Benchmarking: Invision Power Board 2.x salted MD5 [128/128 SSE2
intrinsics 16x]...
Program received signal SIGSEGV, Segmentation fault.
0x081358b3 in SSEmd5body (data=0x8416028, out=0x8416440, init=1) at
sse-intrinsics.c:122
122			MD5_STEP(MD5_F, a, b, c, d, 0, 0xd76aa478, 7)
Missing separate debuginfos, use: debuginfo-install
keyutils-libs-1.5.5-3.fc18.i686 krb5-libs-1.10.3-14.fc18.i686
libcom_err-1.42.5-1.fc18.i686 libgcc-4.7.2-8.fc18.i686
libselinux-2.1.12-7.3.fc18.i686 nspr-4.9.5-2.fc18.i686
nss-3.14.3-1.fc18.i686 nss-util-3.14.3-1.fc18.i686
openssl-libs-1.0.1e-4.fc18.i686 pcre-8.31-4.fc18.i686 zlib-1.2.7-9.fc18.i686
(gdb) bt
#0  0x081358b3 in SSEmd5body (data=0x8416028, out=0x8416440, init=1) at
sse-intrinsics.c:122
#1  0x080e62c8 in crypt_all (count=1) at IPB2_fmt_plug.c:339
#2  0x081056fa in fmt_self_test (format=<optimized out>) at formats.c:243
#3  0x080feea2 in benchmark_format (format=0x81bf1e8 <fmt_IPB2>,
salts=-1073746152,
    results=<optimized out>) at bench.c:159
#4  0x080ff7bb in benchmark_all () at bench.c:498
#5  0x081087a0 in john_run () at john.c:711
#6  0x08108389 in main (argc=3, argv=0xbffff124) at john.c:1008
(gdb) up
#1  0x080e62c8 in crypt_all (count=1) at IPB2_fmt_plug.c:339
339			SSEmd5body(&key_buf[t*NBKEYS*64], (unsigned
int*)&crypt_key[t*NBKEYS*16], 1);
(gdb) print key_buf
$2 = (unsigned char *) 0x8416028 "welc\200"

For some reason, "welcome" from the first test case got destroyed.

As with --format=hdaa, the bug disappears when I just build linux-x86-clang.

After moving IPB2_fmt_plug.c to unused, the next format which fails is
this one:

Benchmarking: MSCHAPv2 C/R MD4 DES [128/128 SSE2 intrinsics 12x]...
Rejected MSCHAPv2 hash with invalid 3rd block
Rejected MSCHAPv2 hash with invalid 3rd block
Rejected MSCHAPv2 hash with invalid 3rd block
Rejected MSCHAPv2 hash with invalid 3rd block
Segmentation fault (core dumped)

But I guess I'll  better stop testing other formats until the bug
causing HDAA and IPB2 to fail is fixed.

Frank

Powered by blists - more mailing lists

Your e-mail address:

Powered by Openwall GNU/*/Linux - Powered by OpenVZ