Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Failures under Sparc (BE build) #763

Closed
9 tasks done
jfoug opened this issue Sep 26, 2014 · 21 comments
Closed
9 tasks done

Failures under Sparc (BE build) #763

jfoug opened this issue Sep 26, 2014 · 21 comments

Comments

@jfoug
Copy link
Collaborator

jfoug commented Sep 26, 2014

  • Testing: OpenVMS, Purdy [32/32]... FAILED (get_hash0) (DISABLED)
  • Fixed: ZIP, WinZip [PBKDF2-sha1 32/32]... .. FAILED (get_hash0)
  • Fixed: Testing: sha1crypt, NetBSD's sha1crypt [PBKDF1-SHA1 32/32]
  • Fixed: Testing: hsrp, HSRP MD5 authentication [MD5 32/32]
  • Fixed: Testing: RAKP, IPMI 2.0 RAKP (RMCP+) [HMAC-SHA1 32/32]
  • Fixed: Testing: RAR5 [PBKDF2-SHA256 32/32 generic]
  • Fixed: dynamic_1300 [md5(md5_raw($pass)) 32/32 64x2 (MD5_body)]
  • Fixed: Mozilla, key3.db [SHA1 3DES 32/32]... FAILED (cmp_all(1))
  • Fixed: OpenBSD-SoftRAID (8192 iterations) [PBKDF2-SHA1 8x SSE2]... FAILED (cmp_all(1))

When testing a BE environment, add any failures, cores, binary or salt buffer not cleaned errors. Mark fixed when one is corrected. Open 'ongoing' bug since there are some formats that may be HARD to fix.
At least we know which ones are problems.

@jfoug
Copy link
Collaborator Author

jfoug commented Sep 26, 2014

Fixed rakp (simple, had to memset the salt buffer)

jfoug added a commit that referenced this issue Sep 26, 2014
jfoug added a commit that referenced this issue Sep 26, 2014
jfoug added a commit that referenced this issue Sep 26, 2014
@jfoug
Copy link
Collaborator Author

jfoug commented Sep 26, 2014

I thought we had fixed OpenVMS last spring for BE formats.

@magnumripper
Copy link
Member

We never nailed it, I recall spending a lot of time in the debugger to no avail.

@magnumripper
Copy link
Member

I think I recall we could not even build it on Sparc, and that was eventually fixed. But it never made the self-test =)

@jfoug
Copy link
Collaborator Author

jfoug commented Oct 2, 2014

I am gonna close this.

Dyna1300 is simply gonna fail on sparc. I could add some extra flag to say not to load on BE or not to load on LE, and then set the not to load on BE for 1300. The problem is we need to BE the 16 byte raw MD5. The VMS I am also going to ignore now. At least it does not core like it was. Also the mozilla is a nightmare. If someone wants to dig into it, be my guest. I think with tons of dump_stuff calls we could find it. But I am not taking the time right now.

Do you want me to leave this one open for others, or simply close it out. I was actually surprised, ,that it built as well as it did, and had that few failures. I know a boat load of stuff was added recently.

@magnumripper
Copy link
Member

Please leave it open. We can add future BE bugs to this issue and

  • make
  • it a
  • check list

at the top description post.

@jfoug
Copy link
Collaborator Author

jfoug commented Oct 16, 2014

I need to test out dyna_1300 with the new 'fixes'. Would be nice if this 'goes' away. I think the reason it would NEVER work, is because the set-len-16 was not going to work for BE.

Tested, and works. Now marking that one off.

@kholia
Copy link
Member

kholia commented Oct 16, 2014

For now, "mozilla" format can be marked as broken on BE machines. I am going to re-write it one of these days (TM).

@jfoug
Copy link
Collaborator Author

jfoug commented Oct 16, 2014

For now, "mozilla" format can be marked as broken on BE machines.

lol, I thought that's what this issue already did. Might be a nice re-write. I looked at it and my head about exploded. I had no idea where to start looking for the byte swapping problems. Hell, they could even be down inside the library calls

@kholia
Copy link
Member

kholia commented Oct 16, 2014

I remember spending many days just to make this format play nice with OpenMP. It sucks.

Milen has done some awesome work on writing a minimal cracker for "mozilla" stuff, which I plan to steal for JtR. I am just waiting for a rainy weekend ;)

@magnumripper
Copy link
Member

I am just waiting for a rainy weekend ;)

You have come to the right place then! All weekends are rainy, and cold to boot.

@magnumripper magnumripper modified the milestone: 1.8.0-jumbo1 Nov 20, 2014
@jfoug
Copy link
Collaborator Author

jfoug commented Nov 21, 2014

Recent mozilla rewrite fixes BE problems.

@jfoug
Copy link
Collaborator Author

jfoug commented Nov 21, 2014

Build issue (will delete this post when fixed)

bash-3.2$ gmake -sj8
In file included from encfs_fmt_plug.c:17:
/usr/sfw/include/openssl/ssl.h:171: warning: ignoring #pragma ident 
In file included from /usr/sfw/include/openssl/ssl3.h:120,
                 from /usr/sfw/include/openssl/ssl.h:991,
                 from encfs_fmt_plug.c:17:
/usr/sfw/include/openssl/ssl.h:171: warning: ignoring #pragma ident 
openbsdsoftraid_fmt_plug.c:248: error: syntax error before '(' token
openbsdsoftraid_fmt_plug.c:248: error: conflicting types for 'DES_set_key'
/usr/sfw/include/openssl/des.h:218: error: previous declaration of 'DES_set_key' was here
openbsdsoftraid_fmt_plug.c:248: error: conflicting types for 'DES_set_key'
/usr/sfw/include/openssl/des.h:218: error: previous declaration of 'DES_set_key' was here
openbsdsoftraid_fmt_plug.c:316: error: `des_set_key' undeclared here (not in a function)
openbsdsoftraid_fmt_plug.c:316: error: initializer element is not constant
openbsdsoftraid_fmt_plug.c:316: error: (near initialization for `fmt_openbsd_softraid.methods.des_set_key')
openbsdsoftraid_fmt_plug.c:322: error: initializer element is not constant
openbsdsoftraid_fmt_plug.c:322: error: (near initialization for `fmt_openbsd_softraid.methods.get_hash')
openbsdsoftraid_fmt_plug.c:326: error: initializer element is not constant
openbsdsoftraid_fmt_plug.c:326: error: (near initialization for `fmt_openbsd_softraid.methods')
openbsdsoftraid_fmt_plug.c:248: warning: 'DES_set_key' declared `static' but never defined
gmake[1]: *** [openbsdsoftraid_fmt_plug.o] Error 1
gmake[1]: *** Waiting for unfinished jobs....
gmake: *** [default] Error 2

Found it the string set_key was defined in the oSSL headers.

bash-3.2$ grep set_key /usr/sfw/include/openssl/*.h
/usr/sfw/include/openssl/blowfish.h:void BF_set_key(BF_KEY *key, int len, const unsigned char *data);
/usr/sfw/include/openssl/cast.h:void CAST_set_key(CAST_KEY *key, int len, const unsigned char *data);
/usr/sfw/include/openssl/des_old.h:#define des_set_key(k,ks)\
/usr/sfw/include/openssl/des_old.h:     DES_set_key((k),&(ks))
/usr/sfw/include/openssl/des_old.h:#define des_set_key_checked(k,ks)\
/usr/sfw/include/openssl/des_old.h:     DES_set_key_checked((k),&(ks))
/usr/sfw/include/openssl/des_old.h:#define des_set_key_unchecked(k,ks)\
/usr/sfw/include/openssl/des_old.h:     DES_set_key_unchecked((k),&(ks))
/usr/sfw/include/openssl/des_old.h:#define des_set_key(k,ks)\
/usr/sfw/include/openssl/des_old.h:     _ossl_old_des_set_key((k),(ks))
/usr/sfw/include/openssl/des_old.h:int _ossl_old_des_set_key(_ossl_old_des_cblock *key,_ossl_old_des_key_schedule schedule);
/usr/sfw/include/openssl/des_old.h:#  define set_key des_set_key
/usr/sfw/include/openssl/des.h:/* DES_set_key (= set_key = DES_key_sched = key_sched) calls
/usr/sfw/include/openssl/des.h: * DES_set_key_checked if global variable DES_check_key is set,
/usr/sfw/include/openssl/des.h: * DES_set_key_unchecked otherwise. */
/usr/sfw/include/openssl/des.h:int DES_set_key(const_DES_cblock *key,DES_key_schedule *schedule);
/usr/sfw/include/openssl/des.h:int DES_set_key_checked(const_DES_cblock *key,DES_key_schedule *schedule);
/usr/sfw/include/openssl/des.h:void DES_set_key_unchecked(const_DES_cblock *key,DES_key_schedule *schedule);
/usr/sfw/include/openssl/evp.h:int EVP_CIPHER_CTX_set_key_length(EVP_CIPHER_CTX *x, int keylen);
/usr/sfw/include/openssl/rc2.h:void RC2_set_key(RC2_KEY *key, int len, const unsigned char *data,int bits);
/usr/sfw/include/openssl/rc4.h:void RC4_set_key(RC4_KEY *key, int len, const unsigned char *data);
/usr/sfw/include/openssl/rc5.h:void RC5_32_set_key(RC5_32_KEY *key, int len, const unsigned char *data,

Should be an easy fix. e4af164

@jfoug
Copy link
Collaborator Author

jfoug commented Nov 21, 2014

A new core, WinZip. Have to dig into that one again. But that core, and VMS are the only 2 left (I think). Once i get .ZIP figure out, I think we are pretty much done. I am NOT going to get VMS working, it will simply fail. At least it does not core.

@jfoug
Copy link
Collaborator Author

jfoug commented Nov 21, 2014

softraid compiles, but fails self test, lol. Some BE issue, almost certainly. Now fixed.

@jfoug
Copy link
Collaborator Author

jfoug commented Nov 21, 2014

Fixed zip crash problem, but now I get failed get_hash(0)(0) I simply can not win, lol.

@jfoug
Copy link
Collaborator Author

jfoug commented Nov 21, 2014

non-sse-OMP zip is huge broken huge time. arg! I have the alterendianty done, but there are lots of other problems.

@jfoug
Copy link
Collaborator Author

jfoug commented Nov 21, 2014

Zip fixed The only one left is VMS

@jfoug
Copy link
Collaborator Author

jfoug commented Nov 23, 2014

a42c8cc disables VMS

@jfoug
Copy link
Collaborator Author

jfoug commented Nov 23, 2014

There are problems in the configure script. Once I get those worked out, VMS will be disabled on BE.

@jfoug jfoug closed this as completed Nov 23, 2014
@jfoug
Copy link
Collaborator Author

jfoug commented Nov 24, 2014

Finally:

...
Testing: ZIP, WinZip [PBKDF2-SHA1 32/32]... PASS
Testing: crypt, generic crypt(3) DES [?/32]... PASS
All 372 formats passed self-tests!

bash-3.2$ ../run/john
John the Ripper password cracker, version 1.8.0.2-bleeding-jumbo [solaris2.10 32-bit sparc-autoconf]
Copyright (c) 1996-2013 by Solar Designer and others
Homepage: http://www.openwall.com/john/
...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants