Ejemplo n.º 1
0
def probe( exitFpr, queue, circID ):

    logger.info("I'm the module which is probing exit relay \"%s\"." % exitFpr)

    mysocks.setdefaultproxy(mysocks.PROXY_TYPE_SOCKS5, "127.0.0.1", 10000)
    mysocks.setqueue(queue, circID)
    socket.socket = mysocks.socksocket

    data = None
    try:
        data = urllib2.urlopen("https://check.torproject.org",
                               timeout=10).read()
    except urllib2.URLError as err:
        logger.error("urllib2.urlopen says: %s" % err)

    if not data:
        return

    identifier = "Congratulations. This browser is configured to use Tor."
    if not (identifier in data):
        logger.error("Detected false negative for \"%s\".  " \
                     "Full dump below." % exitFpr)
        logger.error(data)
    else:
        logger.info("Exit relay \"%s\" passed the check test." % exitFpr)
Ejemplo n.º 2
0
    def __init__(self, controller, probing_module, stats):
        """
        Initialise an EventHandler object.
        """

        self.stats = stats
        self.attachers = {}
        self.controller = controller
        self.probing_module = probing_module
        self.finished_streams = 0
        self.origsock = socket.socket

        self.our_stream_events = [
            StreamStatus.NEW,
            StreamStatus.NEWRESOLVE,
            StreamStatus.CLOSED,
            StreamStatus.FAILED,
            StreamStatus.DETACHED,
        ]

        self.our_circuit_events = [
            CircStatus.BUILT,
            CircStatus.FAILED,
            CircStatus.CLOSED,
        ]

        self.manager = multiprocessing.Manager()
        self.queue = self.manager.Queue()

        queue_threaed = threading.Thread(target=self.queue_reader)
        queue_threaed.setDaemon(1)
        queue_threaed.start()

        mysocks.setdefaultproxy(mysocks.PROXY_TYPE_SOCKS5, "127.0.0.1", 45678)
Ejemplo n.º 3
0
    def __init__( self, torCtrl, probingModule, stats ):
        """
        Initialise an EventHandler object.
        """

        self.stats = stats
        self.attachers = {}
        self.torCtrl = torCtrl
        self.probingModule = probingModule
        self.finishedStreams = 0
        self.origsock = socket.socket

        self.ourStreamEvents = [ StreamStatus.NEW, StreamStatus.NEWRESOLVE,
                                 StreamStatus.CLOSED, StreamStatus.FAILED,
                                 StreamStatus.DETACHED]
        self.ourCircuitEvents = [ CircStatus.BUILT, CircStatus.FAILED,
                                  CircStatus.CLOSED ]

        self.manager = multiprocessing.Manager()
        self.queue = self.manager.Queue()

        threading.Thread(target=self.queueReader, args=()).start()

        mysocks.setdefaultproxy(mysocks.PROXY_TYPE_SOCKS5, "127.0.0.1",
                                const.TOR_SOCKS_PORT)
Ejemplo n.º 4
0
    def __init__(self, controller, probing_module, stats):

        self.stats = stats
        self.attachers = {}
        self.controller = controller
        self.probing_module = probing_module
        self.origsock = socket.socket
        self.manager = multiprocessing.Manager()
        self.queue = self.manager.Queue()

        queue_thread = threading.Thread(target=self.queue_reader)
        queue_thread.daemon = False
        queue_thread.start()

        mysocks.setdefaultproxy(mysocks.PROXY_TYPE_SOCKS5, "127.0.0.1", 45678)
Ejemplo n.º 5
0
    def __init__(self, controller, probing_module, stats):

        self.stats = stats
        self.attachers = {}
        self.controller = controller
        self.probing_module = probing_module
        self.origsock = socket.socket
        self.manager = multiprocessing.Manager()
        self.queue = self.manager.Queue()

        queue_thread = threading.Thread(target=self.queue_reader)
        queue_thread.daemon = False
        queue_thread.start()

        mysocks.setdefaultproxy(mysocks.PROXY_TYPE_SOCKS5, "127.0.0.1", 45678)
Ejemplo n.º 6
0
    def __init__(self, controller, module, socks_port, stats):

        self.stats = stats
        self.attachers = {}
        self.controller = controller
        self.module = module
        self.origsock = socket.socket
        self.manager = multiprocessing.Manager()
        self.queue = self.manager.Queue()
        self.socks_port = socks_port
        self.torsocks_conf = util.create_temp_torsocks_conf(self.socks_port)

        queue_thread = threading.Thread(target=self.queue_reader)
        queue_thread.daemon = False
        queue_thread.start()

        mysocks.setdefaultproxy(mysocks.PROXY_TYPE_SOCKS5,
                                "127.0.0.1", socks_port)