[tor-bugs] #8353 [Ooni]: ooni: Add support for manual TLS/SSL handshakes to tls_handshake.py

Tor Bug Tracker & Wiki blackhole at torproject.org
Thu May 9 09:54:37 UTC 2013


#8353: ooni: Add support for manual TLS/SSL handshakes to tls_handshake.py
-------------------------+--------------------------------------------------
 Reporter:  isis         |          Owner:  isis    
     Type:  enhancement  |         Status:  accepted
 Priority:  normal       |      Milestone:          
Component:  Ooni         |        Version:          
 Keywords:               |         Parent:          
   Points:               |   Actualpoints:          
-------------------------+--------------------------------------------------
Changes (by isis):

  * status:  needs_information => accepted


Comment:

 The error generated by pyOpenSSL (for modern versions of OpenSSL, which
 are usually compiled without SSLv2) is not handled correctly in the
 version of tls_handshake.py which is currently in master.

 This is a bug; I'll create a fix branch and patch it.

 The traceback generated from trying to test SSLv2 for one of the the
 servers at torproject.org is:
 {{{
 (ooni)?!isis?wintermute:~/code/torproject/ooni-probe ? bin/ooniprobe -n
 nettests/experimental/tls_handshake.py -2 -h 82.195.75.101:443
 Log opened.
 Not reporting using a collector
 [D] No test deck detected
 [D] Tor is not running. Skipping IP lookup via Tor.
 [D] Cannot determine the probe IP address with a traceroute, becase of
 insufficient priviledges
 Looking up your IP address via ubuntu
 Starting factory <twisted.web.client._HTTP11ClientFactory instance at
 0x29063f8>
 Found your IP via a GeoIP service: 108.185.38.73
 [D] adding callback for startNetTest
 [D] Creating ./report-tls-handshake-2013-05-09T094703Z.yamloo
 [D] Writing report with YAML reporter
 [D] Created report with <ooni.reporter.YAMLReporter object at 0x2908050>
 [D] Starting this task <generator object generateMeasurements at
 0x290b370>
 [D] Running <class 'nettests.experimental.tls_handshake.HandshakeTest'>
 test_handshake
 Stopping factory <twisted.web.client._HTTP11ClientFactory instance at
 0x29063f8>
 ^CReceived SIGINT, shutting down.
 Main loop terminated.
 Unhandled error in Deferred:
 Unhandled Error
 Traceback (most recent call last):
   File "/home/isis/.virtualenvs/ooni/local/lib/python2.7/site-
 packages/twisted/internet/defer.py", line 380, in callback
     self._startRunCallbacks(result)
   File "/home/isis/.virtualenvs/ooni/local/lib/python2.7/site-
 packages/twisted/internet/defer.py", line 488, in _startRunCallbacks
     self._runCallbacks()
   File "/home/isis/.virtualenvs/ooni/local/lib/python2.7/site-
 packages/twisted/internet/defer.py", line 575, in _runCallbacks
     current.result = callback(current.result, *args, **kw)
   File "/home/isis/.virtualenvs/ooni/local/lib/python2.7/site-
 packages/twisted/internet/defer.py", line 1213, in unwindGenerator
     return _inlineCallbacks(None, gen, Deferred())
 --- <exception caught here> ---
   File "/home/isis/.virtualenvs/ooni/local/lib/python2.7/site-
 packages/twisted/internet/defer.py", line 1070, in _inlineCallbacks
     result = g.send(result)
   File "/home/isis/code/torproject/ooni-probe/ooni/director.py", line 202,
 in startNetTest
     self.measurementManager.schedule(net_test.generateMeasurements())
   File "/home/isis/code/torproject/ooni-probe/ooni/managers.py", line 107,
 in schedule
     self._fillSlots()
   File "/home/isis/code/torproject/ooni-probe/ooni/managers.py", line 58,
 in _fillSlots
     task = self._tasks.next()
   File "/home/isis/code/torproject/ooni-probe/ooni/nettest.py", line 350,
 in generateMeasurements
     measurement = self.makeMeasurement(test_class, method, input)
   File "/home/isis/code/torproject/ooni-probe/ooni/nettest.py", line 325,
 in makeMeasurement
     measurement = Measurement(test_class, test_method, test_input)
   File "/home/isis/code/torproject/ooni-probe/ooni/tasks.py", line 116, in
 __init__
     self.testInstance.setUp()
   File "/home/isis/code/torproject/ooni-
 probe/nettests/experimental/tls_handshake.py", line 168, in setUp
     self.context = SSL.Context(SSL.SSLv2_METHOD)
 exceptions.ValueError: SSLv2_METHOD not supported by this version of
 OpenSSL
 }}}

-- 
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/8353#comment:6>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list