openwall / openwall/john

Mask is unable to properly feed forked processes

Open
#3,714 14 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
C
Stars
13.6k
Forks
2.6k
PR merge metrics
No merged PRs in 30d

Description

~# john
John the Ripper 1.8.0.16-jumbo-1-bleeding-4840892d68 2019-03-26 21:33:03 -0300 OMP [linux-gnu 64-bit x86_64 AVX2 AC]
Copyright (c) 1996-2019 by Solar Designer and others
Homepage: http://www.openwall.com/john/

command:
john --format=oldoffice-opencl --fork=8 --mask=?d?d?d?d?d?d?d?d xxoo.xls.hash

this version crack this hash:
xxooxxoo.file:$oldoffice$0b7663a051324739135c06ad1362bff35fb5a3178a5e8cfc7c19ebb9ff85f8ede*6b59b44de0ca2d58ccfbfa0138bebe50:::::xxoo.xls

response:
Using default input encoding: UTF-8
Loaded 1 password hash (oldoffice-opencl, MS Office <= 2003 [MD5/SHA1 RC4 OpenCL])
Cost 1 (hash type) is 0 for all loaded hashes
Node numbers 1-8 of 8 (fork)
1: Local worksize (LWS) 64, global worksize (GWS) 40960 (640 blocks)
Press 'q' or Ctrl-C to abort, almost any other key for status
5: Local worksize (LWS) 64, global worksize (GWS) 81920 (1280 blocks)
1: Warning: Only 2120 candidates left, minimum 40960 needed for performance.
1: OpenCL CL_OUT_OF_RESOURCES (-5) error in opencl_oldoffice_fmt_plug.c:522 - Failed transferring salt
6: Local worksize (LWS) 64, global worksize (GWS) 40960 (640 blocks)
8: Local worksize (LWS) 64, global worksize (GWS) 40960 (640 blocks)
3: Local worksize (LWS) 64, global worksize (GWS) 40960 (640 blocks)
4: Local worksize (LWS) 64, global worksize (GWS) 40960 (640 blocks)
7: Local worksize (LWS) 64, global worksize (GWS) 40960 (640 blocks)
root@gpu-server4:/usr/local/JohnTheRipper-bleeding-jumbo/run# 5: Warning: Only 43080 candidates left, minimum 81920 needed for performance.
5: OpenCL CL_OUT_OF_RESOURCES (-5) error in opencl_oldoffice_fmt_plug.c:522 - Failed transferring salt
6: Warning: Only 2120 candidates left, minimum 40960 needed for performance.
6: OpenCL CL_OUT_OF_RESOURCES (-5) error in opencl_oldoffice_fmt_plug.c:522 - Failed transferring salt
2: Local worksize (LWS) 64, global worksize (GWS) 40960 (640 blocks)
8: Warning: Only 2120 candidates left, minimum 40960 needed for performance.
3: Warning: Only 2120 candidates left, minimum 40960 needed for performance.
4: Warning: Only 2120 candidates left, minimum 40960 needed for performance.
7: Warning: Only 2120 candidates left, minimum 40960 needed for performance.
8: OpenCL CL_OUT_OF_RESOURCES (-5) error in opencl_oldoffice_fmt_plug.c:522 - Failed transferring salt
3: OpenCL CL_OUT_OF_RESOURCES (-5) error in opencl_oldoffice_fmt_plug.c:522 - Failed transferring salt
4: OpenCL CL_OUT_OF_RESOURCES (-5) error in opencl_oldoffice_fmt_plug.c:522 - Failed transferring salt
7: OpenCL CL_OUT_OF_RESOURCES (-5) error in opencl_oldoffice_fmt_plug.c:522 - Failed transferring salt

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the reported command using --format=oldoffice-opencl, --fork=8, and a mask, then inspect opencl_oldoffice_fmt_plug.c around line 522 where salt transfer fails. Reproduce the error on the reported Linux/OpenCL setup and trace how mask candidates are fed to forked processes. Done means the command no longer produces the reported OpenCL failure.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, linux
Domain
cli, performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.