Hashtopolis Forum
Need further guidance in building client - Printable Version

+- Hashtopolis Forum (https://hashtopolis.org)
+-- Forum: Support (https://hashtopolis.org/forum-1.html)
+--- Forum: Problems (https://hashtopolis.org/forum-2.html)
+--- Thread: Need further guidance in building client (/thread-314.html)



Need further guidance in building client - ytterby - 07-28-2019

Current Server Version: 0.11.0
Current Client Version: see below
Hashcat Version: 5.1.0

I would like to build the client for the arm architecture.

Following instructions on the Frequent Problems page, I cloned the source from github.
I  list my difficulties and questions below.

1. "you need to download the sources, build it with make"
The source has no Makefile, so how am I supposed to build it?
Edit: I have built it with build.sh  , but the resulting zip still gives me the same Exec format error.
Same  architecture mis-match resulted.

2. "add it to the hashcat 7z archive"
Please, explain what this archive is and how I may add to it.

3. "This archive should then be hosted somewhere for the clients to download and this url must be configured for the cracker binary."
Must it be hosted somewhere? If so, why?
Why must the url be configured for the cracker binary?
Please, explain what "configured for the cracker binary" means,

I am eager to apply hashtopolis to my arm computers. I would be most grateful for your assistance.


RE: Need further guidance in building client - s3in!c - 07-29-2019

Hashcat is not officially compatible on arm architecture, mostly also because there is not well running OpenCL installation for arm architecture.

Code:
you need to download the sources, build it with make
This refers to building hashcat, if you want to test if it runs on your arm architecture, clone from the repo https://github.com/hashcat/hashcat, build it with make and then test if you can run a simple benchmark (e.g. ./hashcat -m 0 -b). As long as this is not working, there is no way to use it with hashtopolis.

Did you check the Terminology list on the wiki? If not, I recommend to read this part as well, as you mixed quite some stuff from different parts.


RE: Need further guidance in building client - ytterby - 07-30-2019

(07-29-2019, 07:16 PM)s3in!c Wrote: Hashcat is not officially compatible on arm architecture, mostly also because there is not well running OpenCL installation for arm architecture.

Code:
you need to download the sources, build it with make
This refers to building hashcat, if you want to test if it runs on your arm architecture, clone from the repo https://github.com/hashcat/hashcat, build it with make and then test if you can run a simple benchmark (e.g. ./hashcat -m 0 -b). As long as this is not working, there is no way to use it with hashtopolis.

Did you check the Terminology list on the wiki? If not, I recommend to read this part as well, as you mixed quite some stuff from different parts.
I apologize  for confusing the terminology. I had read it very carefully and more than once. Owing to my confusion, I will review the terminology yet again.
Furthermore, upon re-reading the Frequent Problems, I see that what I cited is not applicable to me. Please, allow me to elaborate.

For OpenCL I find that pocl serves my needs very well. (None of my systems have a suitable GPU, so I have to use the CPU anyway.)

I already have compiled hashcat and successfully run benchmarks on each of my systems. Moreover, I have several instances of hashcat working on hashes right now.

So, hashcat is not the issue.

My problem is that the client's binary gives me an "Exec format error" -- indicating an incorrect architecture (amd64?). I would like to know how I can compile the client's binary for my arm systems. Alternatively, I would like to know how to correct any mistake I made that caused this error. I provide my procedure in detail below.

Having installed psutils and requests (for python3), the following command starts out ok,
python3 hashtopolis.zip

I enter the url and the voucher as requested. I then see,
No task available.

I grant my agent trusted status and again issue
python3 hashtopolis.zip

I still see "No task available"

I presumed that the problem is that the machine is CPU only and that hashtopolis will not give a task to a CPU only agent.

(Please, help me here. Perhaps, this next step is the cause of the error below, but I found no other way for the agent to receive a task.)
In order to have a task, I then change the setting of the agent from CPU only from Yes to No.

Once again, I issue
python3 hashtopolis.zip

The agent now finally sees activity:
Got task with id: 28
Downloading: [==================================================]
sh: 1: ./7zr: Exec format error
Traceback (most recent call last):
  File "/usr/lib/python3.5/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/usr/lib/python3.5/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "hashtopolis.zip/__main__.py", line 338, in <module>
  File "hashtopolis.zip/__main__.py", line 174, in loop
  File "hashtopolis.zip/htpclient/binarydownload.py", line 164, in check_version
FileNotFoundError: [Errno 2] No such file or directory: 'crackers/temp'

"Exec format error" reflects that the binary (I presume that was what was downloading), was compiled for a system other than arm..

Please, forgive me if I have completely misunderstood the cause of the the problem. I am trying the best I can.

If you would provide me further assistance here, I would be most grateful.


RE: Need further guidance in building client - s3in!c - 08-07-2019

The problem in that case now is that Hashtopolis uses a shipped 7z extraction binary (as it is not installed on all systems by default) and it tries to use the linux version (which obviously is compiled for 64bit systems and won't work on arm architecture).

To fix this, you can replace the 7zr.bin file on the server with an arm version, so the agents will download that one.