guardianproject / guardianproject/haven
Onion service should have a random prefix
- Dominant language
- Java
- Stars
- 6.8k
- Forks
- 752
- PR merge metrics
- No merged PRs in 30d
Description
Until next gen onion services are live, the actual onion addresses aren't private from HSDir nodes. So it's possible that Haven onion services could get discovered by an attacker, giving them access to all of the evidence logs.
The easiest way to thwart this is to generate a random string and prefix all the URLs with it. So instead of starting with just `http://blahblahblah.onion:8080/`, the URLs should start with `http://blahblahblah.onion:8080/randomstring/`. This way, if an attacker discovered the onion service, they won't be able to view the logs without guessing the value of `randomstring` -- which is essentially a random password. This is how OnionShare URLs works.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by locating the Android code that constructs the onion-service URLs and serves the evidence logs. Trace how requests reach the logs and how the service address is exposed. Done means onion-service URLs include an unpredictable prefix and logs cannot be accessed through the onion address without that prefix; add or run the relevant access tests if present.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, java
- Domain
- security
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100