Exemplo n.º 1
0
def test_sniff(fake_recv):
    with mock.patch("socket.socket") as fake_socket:
        fake_socket.return_value.recv.return_value = fake_recv
        sniffer = Sniffer(count_of_packets=1, validate_packets=True)
        sniffer.start()

        assert sniffer.raw_packets.get() == fake_recv
Exemplo n.º 2
0
 def scan_udp_ports(self, ports):
     s = Sniffer()
     s.start()
     self._scan_ports(ports, self.scan_udp_port)
     s.stop.set()
     s.join()
     closed_ports = self.get_closed_udp_ports(s.packets)
     return [Port('UDP', p) for p in ports if p not in closed_ports]
Exemplo n.º 3
0
def main():

    sniffer = Sniffer(**vars(args))
    logging.info("[*] Start sniffing...")
    sniffer.start()
    try:
        while True:
            sleep(100)
    except KeyboardInterrupt:
        logging.info("[*] Stop sniffing")
        sniffer.join(2.0)

        if sniffer.is_alive():
            sniffer.socket.close()
Exemplo n.º 4
0

class QueueManager:
    def __init__(self):
        self.queues = []

    def subscribe(self, queue):
        self.queues.append(queue)

    def unsubscribe(self, queue):
        self.queues.remove(queue)

    def submit(self, item):
        for queue in self.queues:
            queue.put(item)


if __name__ == '__main__':
    packet_queue = QueueManager()
    dns_queue = QueueManager()

    file_manager = FileManager('web')
    web_server = WebServer(file_manager, packet_queue, dns_queue)

    reverse_dns = ReverseDns(dns_queue)

    sniffer = Sniffer(packet_queue, reverse_dns)
    sniffer.start()

    WebServer(file_manager, packet_queue, dns_queue).start('0.0.0.0', 8182)
Exemplo n.º 5
0
def main():
    sniffer = Sniffer()
    sniffer.start()
    plt = Plot()
    plt.plotTables(sniffer)
Exemplo n.º 6
0
from sniffer import Sniffer
from strace import Strace
from utils import Top

if __name__ == "__main__":
    logging.debug('This is a debug message')
    startTime = int(time.time())

    timeout = int(sys.argv[2]) or 5  #default 5s stop proc
    sniff = Sniffer(sys.argv[1])
    strace = Strace(sys.argv[1])
    top = Top()

    print('----')

    top.start()

    print('----')

    sniff.start()
    print('----')

    strace.start()
    print('----')
    # while (strace.proc.poll() and (startTime + timeout >= time.time())):
    #     print(startTime + timeout, time.time())
    #     continue

    sniff.stop()
    strace.stop()
    top.stop()
Exemplo n.º 7
0
class QueueManager:
    def __init__(self):
        self.queues = []

    def subscribe(self, queue):
        self.queues.append(queue)

    def unsubscribe(self, queue):
        self.queues.remove(queue)

    def submit(self, item):
        for queue in self.queues:
            queue.put(item)


if __name__ == '__main__':
    packet_queue = QueueManager()
    dns_queue    = QueueManager()

    file_manager = FileManager('web')
    web_server   = WebServer(file_manager, packet_queue, dns_queue)

    reverse_dns = ReverseDns(dns_queue)

    sniffer = Sniffer(packet_queue, reverse_dns)
    sniffer.start()

    WebServer(file_manager, packet_queue, dns_queue).start('0.0.0.0', 8182)