python2.7使用scapy發(fā)送syn實(shí)例
我就廢話不多說(shuō)了,大家看代碼吧!
from scapy.all import * def syn(): scrIP = '192.168.10.29' srcPort = 23345 desIP = '12.39.27.23' desPort = 8000 ip = IP(src=scrIP, dst=desIP) tcp = TCP(sport=srcPort, dport=desPort, seq=13131342, flags='S') pkg = ip/tcp # c->s syn res = sr1(pkg) res.display()
補(bǔ)充知識(shí):用python 通過(guò)ip獲取mac和網(wǎng)卡類型(同一網(wǎng)段)
通過(guò)網(wǎng)上查閱目前找到的幾種方式
環(huán)境使用window和linux系統(tǒng)
使用nmap,python-nmap需要依賴機(jī)器安裝nmap工具
import nmap
nm=nmap.PortScanner()
nm.scan('xxx.xxx.xxx.xxx','xx') # ip地址和端口,端口不填也可以
a=nm['xxx.xxx.xxx.xxx'] #返回主機(jī)的詳細(xì)信息
print(a)
##################################
{'status': {'state': 'up', 'reason': 'arp-response'},
'hostnames': [{'type': 'PTR', 'name': 'bogon'}],
'vendor': {'00:0C:29:F6:2B:F0': 'VMware'},
'addresses': {'mac': '00:0C:29:F6:2B:F0', 'ipv4': 'xxx.xxx.xxx.xxx'},
'tcp': {111: {'product': 'Microsoft Windows 7 - 10 microsoft-ds', 'state': 'open', 'version': '', 'name': 'microsoft-ds', 'conf': '10', 'extrainfo': 'workgroup: WORKGROUP', 'reason': 'syn-ack', 'cpe': 'cpe:/o:microsoft:windows'}}}
這種方式獲取非常簡(jiǎn)單,但是會(huì)耗費(fèi)很大的時(shí)間,不建議使用
通過(guò)控制臺(tái)命令arp -a
def output_cmd(command):
r = os.popen(command)
content = r.read()
r.close()
return content
def arp_command(ip_address):
ping_cmd = "ping " + ip_address + " -n 2 "
result = output_cmd(ping_cmd)
find_ttl = result.find("TTL")
if find_ttl != -1:
arp_cmd = "arp -a %s" % ip_address
arp_result = output_cmd(arp_cmd)
ip2 = ip_address + " [ ]+([\w-]+)"
ip2_mac = re.findall(ip2, arp_result)
if len(ip2_mac):
return ip2_mac[0]
else:
return 0
else:
result = u'無(wú)人使用的ip'
return result
這個(gè)是通過(guò)先ping,之后在arp -a ip 來(lái)獲取mac地址,這種方式需要拿到數(shù)據(jù)后自行去通過(guò)正則匹配mac地址,演示的為window上的匹配,linux需要自行修改匹配規(guī)則
通過(guò)scapy模塊(必須機(jī)器ipv6未被禁止)
from scapy.all import *
arp_pkt = Ether(dst="ff:ff:ff:ff:ff:ff") / ARP(pdst=ip)
res = srp1(arp_pkt, timeout=1, verbose=0)
print {"localIP": res.psrc, "mac": res.hwsrc}
通過(guò)arpreq模塊
[root@oradb ~]# python
Python 2.7.5 (default, Aug 4 2017, 00:39:18)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import arpreq
>>> arpreq.arpreq('192.168.xx.xxx')
'xx:xx:xx:xx:xx:xx'
通過(guò)上述方法獲取mac地址之后獲取網(wǎng)卡類型
可以直接使用mac.py
pip install mac.py
from macpy import Mac mac = Mac() information = mac.search(00-11-F1-01-01) print information
如果感覺(jué)信息還是有點(diǎn)老的話,需要自己手動(dòng)去IEEE上面下載mac和網(wǎng)卡廠商的比對(duì)文件自行比對(duì)就行了
以上這篇python2.7使用scapy發(fā)送syn實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- python使用scapy模塊實(shí)現(xiàn)ping掃描的過(guò)程詳解
- python使用scapy模塊實(shí)現(xiàn)ARP掃描的過(guò)程
- Python3利用scapy局域網(wǎng)實(shí)現(xiàn)自動(dòng)多線程arp掃描功能
- 利用Python庫(kù)Scapy解析pcap文件的方法
- Python項(xiàng)目 基于Scapy實(shí)現(xiàn)SYN泛洪攻擊的方法
- Python利用scapy實(shí)現(xiàn)ARP欺騙的方法
- python 的 scapy庫(kù),實(shí)現(xiàn)網(wǎng)卡收發(fā)包的例子
- Python Scapy隨心所欲研究TCP協(xié)議棧
- Python基于scapy實(shí)現(xiàn)修改IP發(fā)送請(qǐng)求的方法示例
- Python中使用scapy模擬數(shù)據(jù)包實(shí)現(xiàn)arp攻擊、dns放大攻擊例子
- python通過(guò)scapy獲取局域網(wǎng)所有主機(jī)mac地址示例
- python開(kāi)發(fā)實(shí)時(shí)可視化儀表盤的示例
相關(guān)文章
Python實(shí)現(xiàn)猜拳與猜數(shù)字游戲的方法詳解
本文將為大家介紹兩個(gè)用Python語(yǔ)言實(shí)現(xiàn)的小案例:猜拳游戲與數(shù)字猜猜猜小游戲,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2022-04-04
Python使用pymssql連接SQL?SEVER數(shù)據(jù)庫(kù)全流程
SQL Server是微軟推出的重量級(jí)的數(shù)據(jù)庫(kù),目前有多個(gè)版本,如2000、2008、2012等,下面這篇文章主要給大家介紹了關(guān)于Python使用pymssql連接SQL?SEVER數(shù)據(jù)庫(kù)的相關(guān)資料,需要的朋友可以參考下2023-12-12
python中re.findall函數(shù)實(shí)例用法
在本篇文章里小編給大家整理了一篇關(guān)于python中re.findall函數(shù)實(shí)例用法相關(guān)內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。2021-09-09
python torch.utils.data.DataLoader使用方法
這篇文章主要介紹了python torch.utils.data.DataLoader使用方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04
Python面向?qū)ο缶幊讨嘘P(guān)于類和方法的學(xué)習(xí)筆記
類與類方法是面向?qū)ο蟮木幊陶Z(yǔ)言中必不可少的特性,本文總結(jié)了Python面向?qū)ο缶幊讨嘘P(guān)于類和方法的學(xué)習(xí)筆記,需要的朋友可以參考下2016-06-06
工程師必須了解的LRU緩存淘汰算法以及python實(shí)現(xiàn)過(guò)程
這篇文章主要介紹了工程師必須了解的LRU緩存淘汰算法以及python實(shí)現(xiàn)過(guò)程,幫助大家更好的學(xué)習(xí)算法數(shù)據(jù)結(jié)構(gòu),感興趣的朋友可以了解下2020-10-10

