question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Ghidra Server timeout

See original GitHub issue

I’m having some trouble running the Ghidra server on a VPS I have (an OpenVZ one).

The server starts, then just times out. If I increase the timeout to something like hours, I can use the server for that period of time without any problems (so it doesn’t look like server load or memory problems, the VPS is doing literally nothing else), everything seems to work great on the Ghidra side, but I’d love to be able to run this without having to set a timeout of days, if possible. I’m adding my log here to see if it shows something, although I can’t really see anything interesting.

Also, my server.conf is the stock one, I haven’t changed anything although I’ve tried disabling the “fork hack” and running as another user (I’m running as root now). I also don’t have SELinux enabled.

Thanks in advance.

12865/0|[INFO] StandardFileSystemManager - Using "/tmp/vfs_cache" as temporary files store.
12865/0|INFO  Using log config file: jar:file:/root/ghidra_9.0/Ghidra/Framework/Generic/lib/Generic.jar!/generic.log4j.xml (LoggingInitialization)
12865/0|INFO  Using log file: /root/ghidra_9.0/repositories/server.log (LoggingInitialization)
12865/0|INFO  Initializing SSL Context (SSLContextInitializer)
12865/0|INFO  Initializing Random Number Generator... (SecureRandomFactory)
12865/0|INFO  Random Number Generator initialization complete: NativePRNGNonBlocking (SecureRandomFactory)
12865/0|INFO  Trust manager disabled, cacerts have not been set (ApplicationTrustManagerFactory)
12865/0|INFO  Using self-signed certificate: CN=GhidraServer (ApplicationKeyManagerFactory$ApplicationKeyManager)
12865/0|INFO     defaultsigkey: GhidraServer, issued by GhidraServer, S/N 165cf7e8, expires Sun Mar 14 06:43:27 EDT 2021 (ApplicationKeyStore)
12865/0|INFO  Ghidra Server 9.0 (GhidraServer)
12865/0|INFO     Server bound to XX.XX.XX.XX (GhidraServer)
12865/0|INFO     RMI Registry port: 13100 (GhidraServer)
12865/0|INFO     RMI SSL port: 13101 (GhidraServer)
12865/0|INFO     Block Stream port: 13102 (GhidraServer)
12865/0|INFO     Block Stream compression: enabled (GhidraServer)
12865/0|INFO     Root: ./repositories (GhidraServer)
12865/0|INFO     Auth: Password File (GhidraServer)
12865/0|INFO     Prompt for user ID: no (GhidraServer)
12865/0|INFO     Anonymous server access: disabled (GhidraServer)
12865/0|INFO  root starting Ghidra Server... (GhidraServer)
12865/0|INFO  Instantiating Repository Manager for /root/ghidra_9.0/repositories (RepositoryManager)
12865/0|INFO  Instantiating User Manager (w/password management) (UserManager)
12865/0|INFO  User file contains 2 entries (UserManager)
12865/0|INFO  Known Users: (UserManager)
12865/0|INFO     test (UserManager)
12865/0|INFO     arcnor (UserManager)
12865/0|INFO  Known Repositories: (RepositoryManager)
12865/0|INFO     TEstingRepo (RepositoryManager)
12865/0|INFO  Loading TEstingRepo ... (Repository)
12865/0|INFO     ... loading 0 files ... (Repository)
12865/0|INFO     TEstingRepo load complete.  (Repository)
12865/0|INFO  Started Block Stream Server on XX.XX.XX.XX:13102 (BlockStreamServer)
12865/0|INFO  Registering Ghidra Server... (GhidraServer)
12865/0|INFO  Registered Ghidra Server. (GhidraServer)
12865/0|startup of java application timed out. if this is due to server overload consider increasing wrapper.startup.timeout
wrapper|Shutting down Wrapper
12865/0|no connection to wrapper during 10 seconds -> System.exit(-1)
12865/0|if this is due to server overload consider increasing yajsw configuration property wrapper.startup.timeout
wrapper|waitpid 12865 65280
wrapper|exit code posix process: 65280 application(status/signal): 255/0

Issue Analytics

  • State:closed
  • Created 5 years ago
  • Comments:7

github_iconTop GitHub Comments

3reactions
colinrgodseycommented, Mar 22, 2019

For me, I had to set the correct RMI hostname in the arguments. Finally dug around a bit through the logs and saw RMI was involved (le sigh) and the horrors of past RMI dealings came rushing back…

wrapper.java.additional.4=-Djava.rmi.server.hostname=ec2-w-x-y-z.us-east-2.compute.amazonaws.com

EDIT: in general, im pretty confident sayings that: the system must have a hostname that is sensible to the client (cant yet figure out if either simple hostname or the FQDN hostname must make sense), and im pretty sure the IP the hostname resolves to (and binds to) must also be sensible to the client. I know RMI does this (it assumes that sending hostname and/or IP over the wire is a sane thing to do), and guessing there might be something else in YAJSW also doing this.

0reactions
ryanmkurtzcommented, Apr 22, 2019

Closing this question out due to inactivity. We can reopen it if there is still a need.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Ghidra Server README - Index of
The Ghidra Server utilizes the YAJSW Java service wrapper to launch the ... The startup of the Ghidra Server may fail with a...
Read more >
Headless Analyzer README
Set a timeout value, in seconds, for analysis (analysis will abort if it takes longer than the set timeout value). analyzeHeadless /Users/user/ghidra/projects ...
Read more >
Release Notes - Ghidra
Corrected the Ghidra Server service wrapper (YAJSW) configuration for Mac OS X to prevent a startup timeout condition which could occur.
Read more >
HeadlessOptions - Ghidra
ghidra.app.util.headless. ... Set Ghidra Server client credentials to be used with "shared" projects. ... Set analyzer timeout on a per-file basis.
Read more >
ghidra-bridge - Python Package Health Analysis - Snyk
Install the Ghidra Bridge package and server scripts ... it may hit the response timeout that the bridge uses to make sure the...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found