当前位置: 首页>>代码示例>>Python>>正文


Python packet.Raw方法代码示例

本文整理汇总了Python中scapy.packet.Raw方法的典型用法代码示例。如果您正苦于以下问题:Python packet.Raw方法的具体用法?Python packet.Raw怎么用?Python packet.Raw使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在scapy.packet的用法示例。


在下文中一共展示了packet.Raw方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: generate_tcp_packet

# 需要导入模块: from scapy import packet [as 别名]
# 或者: from scapy.packet import Raw [as 别名]
def generate_tcp_packet(ip_src: str = "192.168.64.32", ip_dst: str = "192.168.64.48",
                        mac_src: str = "56:6D:D9:BC:70:1C", ttl: int = 64,
                        mac_dst: str = "F4:2B:95:B3:0E:1A", port_src: int = 1337, port_dst: int = 6442,
                        tcpflags: str = "S", payload: str = ""):
    """
    Builds a TCP packet with the values specified by the caller.

    :param ip_src: the source IP address of the IP header
    :param ip_dst the destination IP address of the IP header
    :param mac_src: the source MAC address of the MAC header
    :param ttl: the ttl value of the packet
    :param mac_dst: the destination MAC address of the MAC header
    :param port_src: the source port of the TCP header
    :param port_dst: the destination port of the TCP header
    :param tcpflags: the TCP flags of the TCP header
    :param payload: the payload of the packet
    :return: the corresponding TCP packet
    """

    ether = Ether(src=mac_src, dst=mac_dst)
    ip = IP(src=ip_src, dst=ip_dst, ttl=ttl)
    tcp = TCP(sport=port_src, dport=port_dst, flags=tcpflags)
    packet = ether / ip / tcp / Raw(load=payload)
    return packet 
开发者ID:tklab-tud,项目名称:ID2T,代码行数:26,代码来源:Generator.py

示例2: voip_play1

# 需要导入模块: from scapy import packet [as 别名]
# 或者: from scapy.packet import Raw [as 别名]
def voip_play1(s1,list=None,**kargs):

    
    dsp,rd = os.popen2("sox -t .ul - -t ossdsp /dev/dsp")
    def play(pkt):
        if not pkt:
            return 
        if not pkt.haslayer(UDP):
            return 
        ip=pkt.getlayer(IP)
        if s1 in [ip.src, ip.dst]:
            dsp.write(pkt.getlayer(Raw).load[12:])
    try:
        if list is None:
            sniff(store=0, prn=play, **kargs)
        else:
            for p in list:
                play(p)
    finally:
        dsp.close()
        rd.close() 
开发者ID:medbenali,项目名称:CyberScan,代码行数:23,代码来源:voip.py

示例3: voip_play3

# 需要导入模块: from scapy import packet [as 别名]
# 或者: from scapy.packet import Raw [as 别名]
def voip_play3(lst=None,**kargs):
    dsp,rd = os.popen2("sox -t .ul - -t ossdsp /dev/dsp")
    try:
        def play(pkt, dsp=dsp):
            if pkt and pkt.haslayer(UDP) and pkt.haslayer(Raw):
                dsp.write(pkt.getlayer(RTP).load)
        if lst is None:
            sniff(store=0, prn=play, **kargs)
        else:
            for p in lst:
                play(p)
    finally:
        try:
            dsp.close()
            rd.close()
        except:
            pass 
开发者ID:medbenali,项目名称:CyberScan,代码行数:19,代码来源:voip.py

示例4: add_padding

# 需要导入模块: from scapy import packet [as 别名]
# 或者: from scapy.packet import Raw [as 别名]
def add_padding(packet, bytes_padding:int = 0, user_padding:bool=True, rnd:bool = False):
    """
    Adds padding to a packet with the given amount of bytes, but a maximum of 100 bytes, if called by the user.
    :param packet: the packet that will be extended with the additional payload
    :param bytes_padding: the amount of bytes that will be appended to the packet. Capped to 100,
    if called by the user.
    :param user_padding: true, if the function add_padding by the user and not within the code
    :param rnd: adds a random padding between 0 and bytes_padding, if true
    :return: the initial packet, extended with the wanted amount of bytes of padding
    """

    if user_padding == True and bytes_padding > 100:
        bytes_padding = 100

    if rnd is True:
        r = int(round(bytes_padding / 4))                  # sets bytes_padding to any number between 0 and
        bytes_padding = random2.random_integers(0, r) * 4  # bytes_padding, that's dividable by 4
    payload = generate_payload(bytes_padding)
    packet[Raw].load += Raw(load=payload).load
    return packet 
开发者ID:tklab-tud,项目名称:ID2T,代码行数:22,代码来源:Generator.py

示例5: get_data

# 需要导入模块: from scapy import packet [as 别名]
# 或者: from scapy.packet import Raw [as 别名]
def get_data(self, pkt):
        # Avoid packet from other interfaces
        if RadioTap not in pkt:
            return

        # Skip retries
        if pkt[Dot11].FCfield.retry:
            return

        # Skip unencrypted frames (TKIP rely on encrypted packets)
        if not pkt[Dot11].FCfield.protected:
            return

        # Dot11.type 2: Data
        if pkt.type == 2 and Raw in pkt and pkt.addr1 == self.mac:
            # Do not check pkt.addr3, frame can be broadcast
            raise self.KRACK_DISPATCHER().action_parameters(pkt) 
开发者ID:secdev,项目名称:scapy,代码行数:19,代码来源:automaton.py

示例6: get_arp

# 需要导入模块: from scapy import packet [as 别名]
# 或者: from scapy.packet import Raw [as 别名]
def get_arp(self, pkt):
        # Avoid packet from other interfaces
        if RadioTap not in pkt:
            return

        # Skip retries
        if pkt[Dot11].FCfield.retry:
            return

        # Skip unencrypted frames (TKIP rely on encrypted packets)
        if not pkt[Dot11].FCfield.protected:
            return

        # Dot11.type 2: Data
        if pkt.type == 2 and Raw in pkt and pkt.addr1 == self.mac:
            # Do not check pkt.addr3, frame can be broadcast
            raise self.WAIT_ARP_REPLIES().action_parameters(pkt) 
开发者ID:secdev,项目名称:scapy,代码行数:19,代码来源:automaton.py

示例7: m2i

# 需要导入模块: from scapy import packet [as 别名]
# 或者: from scapy.packet import Raw [as 别名]
def m2i(self, pkt, m):
        """
        The client_kx_msg may be either None, EncryptedPreMasterSecret
        (for RSA encryption key exchange), ClientDiffieHellmanPublic,
        or ClientECDiffieHellmanPublic. When either one of them gets
        dissected, the session context is updated accordingly.
        """
        tmp_len = self.length_from(pkt)
        tbd, rem = m[:tmp_len], m[tmp_len:]

        s = pkt.tls_session
        cls = None

        if s.prcs and s.prcs.key_exchange:
            cls = s.prcs.key_exchange.client_kx_msg_cls

        if cls is None:
            return Raw(tbd) / Padding(rem)

        return cls(tbd, tls_session=s) / Padding(rem) 
开发者ID:secdev,项目名称:scapy,代码行数:22,代码来源:handshake.py

示例8: build

# 需要导入模块: from scapy import packet [as 别名]
# 或者: from scapy.packet import Raw [as 别名]
def build(self, *args, **kargs):
        fval = self.getfieldval("exchkeys")
        if fval is None:
            s = self.tls_session
            if s.prcs:
                cls = s.prcs.key_exchange.client_kx_msg_cls
                cls = cls(tls_session=s)
            else:
                cls = Raw()
            self.exchkeys = cls
        return _TLSHandshake.build(self, *args, **kargs)


###############################################################################
#   Finished                                                                  #
############################################################################### 
开发者ID:secdev,项目名称:scapy,代码行数:18,代码来源:handshake.py

示例9: getfield

# 需要导入模块: from scapy import packet [as 别名]
# 或者: from scapy.packet import Raw [as 别名]
def getfield(self, pkt, s):
        i = self.m2i(pkt, s)
        # i can be <OFPMatch> or <OFPMatch <Padding>>
        # or <OFPMatch <Raw>> or <OFPMatch <Raw <Padding>>>
        # and we want to return "", <OFPMatch> or "", <OFPMatch <Padding>>
        # or raw(<Raw>), <OFPMatch> or raw(<Raw>), <OFPMatch <Padding>>
        if Raw in i:
            r = i[Raw]
            if Padding in r:
                p = r[Padding]
                i.payload = p
                del(r.payload)
            return r.load, i
        else:
            return b"", i


#                      Actions                      # 
开发者ID:secdev,项目名称:scapy,代码行数:20,代码来源:openflow3.py

示例10: _tzsp_handle_unknown_tag

# 需要导入模块: from scapy import packet [as 别名]
# 或者: from scapy.packet import Raw [as 别名]
def _tzsp_handle_unknown_tag(payload, tag_type):

    payload_len = len(payload)

    if payload_len < 2:
        warning('invalid or unknown tag type (%i) and too short packet - treat remaining data as Raw' % tag_type)  # noqa: E501
        return Raw

    tag_data_length = orb(payload[1])

    tag_data_fits_in_payload = (tag_data_length + 2) <= payload_len
    if not tag_data_fits_in_payload:
        warning('invalid or unknown tag type (%i) and too short packet - treat remaining data as Raw' % tag_type)  # noqa: E501
        return Raw

    warning('invalid or unknown tag type (%i)' % tag_type)

    return TZSPTagUnknown 
开发者ID:secdev,项目名称:scapy,代码行数:20,代码来源:tzsp.py

示例11: parse_options

# 需要导入模块: from scapy import packet [as 别名]
# 或者: from scapy.packet import Raw [as 别名]
def parse_options(self, supported_responses=None,
                      main_socket=None, broadcast_socket=None, basecls=Raw,
                      timeout=None):
        self.main_socket = main_socket
        self.sockets = [self.main_socket]

        if broadcast_socket is not None:
            self.sockets.append(broadcast_socket)

        self.ecu_state = ECU(logging=False, verbose=False,
                             store_supported_responses=False)
        self.basecls = basecls
        self.supported_responses = supported_responses

        self.sniff_options["timeout"] = timeout
        self.sniff_options["opened_socket"] = self.sockets 
开发者ID:secdev,项目名称:scapy,代码行数:18,代码来源:ecu.py

示例12: _sdoption_class

# 需要导入模块: from scapy import packet [as 别名]
# 或者: from scapy.packet import Raw [as 别名]
def _sdoption_class(payload, **kargs):
    pl_type = orb(payload[2])

    cls = {
        SDOPTION_CFG_TYPE: SDOption_Config,
        SDOPTION_LOADBALANCE_TYPE: SDOption_LoadBalance,
        SDOPTION_IP4_ENDPOINT_TYPE: SDOption_IP4_EndPoint,
        SDOPTION_IP4_MCAST_TYPE: SDOption_IP4_Multicast,
        SDOPTION_IP4_SDENDPOINT_TYPE: SDOption_IP4_SD_EndPoint,
        SDOPTION_IP6_ENDPOINT_TYPE: SDOption_IP6_EndPoint,
        SDOPTION_IP6_MCAST_TYPE: SDOption_IP6_Multicast,
        SDOPTION_IP6_SDENDPOINT_TYPE: SDOption_IP6_SD_EndPoint
    }.get(pl_type, Raw)

    return cls(payload, **kargs)


# SD Option 
开发者ID:secdev,项目名称:scapy,代码行数:20,代码来源:someip.py

示例13: generate_udp_packet

# 需要导入模块: from scapy import packet [as 别名]
# 或者: from scapy.packet import Raw [as 别名]
def generate_udp_packet(ip_src: str = "192.168.64.32", ip_dst: str = "192.168.64.48",
                        mac_src: str = "56:6D:D9:BC:70:1C", ttl: int = 64,
                        mac_dst: str = "F4:2B:95:B3:0E:1A", port_src: int = 1337, port_dst: int = 6442,
                        payload: str = ""):
    """
    Builds an UDP packet with the values specified by the caller.

    :param ip_src: the source IP address of the IP header
    :param ip_dst the destination IP address of the IP header
    :param mac_src: the source MAC address of the MAC header
    :param ttl: the ttl value of the packet
    :param mac_dst: the destination MAC address of the MAC header
    :param port_src: the source port of the UDP header
    :param port_dst: the destination port of the UDP header
    :param payload: the payload of the packet
    :return: the corresponding UDP packet
    """

    ether = Ether(src=mac_src, dst=mac_dst)
    ip = IP(src=ip_src, dst=ip_dst, ttl=ttl)
    udp = UDP(sport=port_src, dport=port_dst)
    packet = ether / ip / udp / Raw(load=payload)
    return packet


#################################################
########     IP address generation       ########
################################################# 
开发者ID:tklab-tud,项目名称:ID2T,代码行数:30,代码来源:Generator.py

示例14: guess_payload_class

# 需要导入模块: from scapy import packet [as 别名]
# 或者: from scapy.packet import Raw [as 别名]
def guess_payload_class(self, payload):
        """ Sense for ciphertext
        """
        cls = StackedLenPacket.guess_payload_class(self, payload)
        p = cls(payload, _internal=1, _underlayer=self)
        if p.haslayer(TLSHandshakes) and len(p[TLSHandshakes].handshakes) > 0:
            p = p[TLSHandshakes].handshakes[0]
        try:
            if cls == Raw().__class__ or p.length > len(payload):
                # length does not fit len raw_bytes, assume its corrupt or encrypted
                cls = TLSCiphertext
        except AttributeError:
            # e.g. TLSChangeCipherSpec might land here
            pass
        return cls 
开发者ID:tintinweb,项目名称:scapy-ssl_tls,代码行数:17,代码来源:ssl_tls.py

示例15: send_wpa_enc

# 需要导入模块: from scapy import packet [as 别名]
# 或者: from scapy.packet import Raw [as 别名]
def send_wpa_enc(self, data, iv, seqnum, dest, mic_key,
                     key_idx=0, additionnal_flag=["from-DS"],
                     encrypt_key=None):
        """Send an encrypted packet with content @data, using IV @iv,
        sequence number @seqnum, MIC key @mic_key
        """

        if encrypt_key is None:
            encrypt_key = self.tk

        rep = RadioTap()
        rep /= Dot11(
            addr1=dest,
            addr2=self.mac,
            addr3=self.mac,
            FCfield="+".join(['protected'] + additionnal_flag),
            SC=(next(self.seq_num) << 4),
            subtype=0,
            type="Data",
        )

        # Assume packet is send by our AP -> use self.mac as source

        # Encapsule in TKIP with MIC Michael and ICV
        data_to_enc = build_MIC_ICV(raw(data), mic_key, self.mac, dest)

        # Header TKIP + payload
        rep /= Raw(build_TKIP_payload(data_to_enc, iv, self.mac, encrypt_key))

        self.send(rep)
        return rep 
开发者ID:secdev,项目名称:scapy,代码行数:33,代码来源:automaton.py


注:本文中的scapy.packet.Raw方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。