NullHypothesis / exitmap

A fast and modular scanner for Tor exit relays. The canonical repository (including issue tracker) is at https://gitlab.torproject.org/tpo/network-health/exitmap
https://www.cs.kau.se/philwint/spoiled_onions/
GNU General Public License v3.0
454 stars 107 forks source link

Exitmap fails when circuits are "overused" #55

Closed NullHypothesis closed 11 months ago

NullHypothesis commented 7 years ago

Exitmap seems to crash whenever "too much" is done over a circuit. It's not clear what "too much" means, exactly. It has happened with a module that fetched several X.509 certificates, and apparently with another module that resolved a large set of domains over a simple exit relay.

First, the problem must be narrowed down. It's not clear if the issue is in exitmap, Stem, or tor. The nature of the problem is also not clear yet. Does it happen when too much data is sent, or if a given timeout is reached?

vasiqmz commented 7 years ago

Hey @NullHypothesis, I'd like to help you out on this one. Let me know, if you have already started or fixed the bug

NullHypothesis commented 7 years ago

I haven't started working on this. In fact, it is not even clear what is causing the issue. A good way to start would be to find a way to reproduce the problem reliably.

vasiqmz commented 7 years ago

If you have encountered this error then could you describe the following.

  1. Does it only happens only when you fetch multiple X.509 certificates ?
  2. If not, then what other modules have also encountered the similar issues ?

I think, in order to reproduce the error we first need to drill down on the "WHEN" part. When does this happen?

If it is happening only during fetching of multiple X.509 certificate then we can run some test cases and try to reproduce the exact error. What you think ?

NullHypothesis commented 7 years ago

I've seen the error happen in a couple modules (some unpublished) whenever "too much" is done over a circuit. "Too much" may mean that too much data was transmitted, or that the circuit was kept open for too long.