zoukankan      html  css  js  c++  java
  • Python Ethical Hacking

    DICTIONARIES

    • Similar to lists but use key instead of an index.

    LISTS

    • List of values/elements, all can be stored in one variable.

    Improving the Program Using a List of Dictionaries:

    #!/usr/bin/env python
    
    import scapy.all as scapy
    
    def scan(ip):
        arp_request = scapy.ARP(pdst=ip)
        broadcast = scapy.Ether(dst="ff:ff:ff:ff:ff:ff")
        arp_request_broadcast = broadcast/arp_request
        answered_list = scapy.srp(arp_request_broadcast, timeout=1, verbose=False)[0]
    
        clients_list = []
        for element in answered_list:
            clients_dict = {"ip": element[1].psrc, "mac": element[1].hwsrc}
            clients_list.append(clients_dict)
        return clients_list
    
    def print_result(results_list):
        print("IP			MAC Address
    ------------------------------------------")
        for client in results_list:
            print(client["ip"] + "		" + client["mac"])
            
    scan_result = scan("10.0.0.1/24")
    print_result(scan_result)

    Result:

    Complete the Python code:

    #!/usr/bin/env python
    
    import scapy.all as scapy
    import argparse
    
    def get_arguments():
        parser = argparse.ArgumentParser()
        parser.add_argument("-t", "--target", dest="target", help="Target IP / IP range.")
        options = parser.parse_args()
        return options
    
    def scan(ip):
        arp_request = scapy.ARP(pdst=ip)
        broadcast = scapy.Ether(dst="ff:ff:ff:ff:ff:ff")
        arp_request_broadcast = broadcast/arp_request
        answered_list = scapy.srp(arp_request_broadcast, timeout=1, verbose=False)[0]
    
        clients_list = []
        for element in answered_list:
            clients_dict = {"ip": element[1].psrc, "mac": element[1].hwsrc}
            clients_list.append(clients_dict)
        return clients_list
    
    def print_result(results_list):
        print("IP			MAC Address
    ------------------------------------------")
        for client in results_list:
            print(client["ip"] + "		" + client["mac"])
    
    options = get_arguments()
    scan_result = scan(options.target)
    print_result(scan_result)

    相信未来 - 该面对的绝不逃避,该执著的永不怨悔,该舍弃的不再留念,该珍惜的好好把握。
  • 相关阅读:
    php 使用正则匹配中文 返回结果
    怎样判断一个jquery对象是否为空jquery对象
    关于tp5.0中对象数组转换普通数组使用助手函数collection而不是toArray
    PHP 面试题三
    PHP 面试题二
    PHP 面试题 一
    laravel 学习笔记 —— 神奇的服务容器
    ubuntu下安装opencv库+Python2.7环境安装及开发摄像头拍照应用
    Linux内核分析(七)----并发与竞态
    Linux内核分析(六)----字符设备控制方法实现|揭秘系统调用本质
  • 原文地址:https://www.cnblogs.com/keepmoving1113/p/11366960.html
Copyright © 2011-2022 走看看