python原始套接字编程示例分享


Posted in Python onFebruary 21, 2014

下面开始构造HTTP数据包,

IP层和TCP层使用python的Impacket库,http内容自行填写。

#!/usr/bin/env python#-------------------------------------------------------------------------------
# Name:     raw_http.py
# Purpose:       construct a raw http get packet
#
# Author:    Yangjun
#
# Created:       08/02/2014
# Copyright:   (c) Yangjun 2014
# Licence:       <your licence>
#-------------------------------------------------------------------------------
import sys
import socket
from impacket import ImpactDecoder, ImpactPacket
def main():
    if len(sys.argv) < 3:
        print "Use: %s <src ip> <dst ip>" % sys.argv[0]
        print "Use: %s <src ip> <dst ip> <cnt>" % sys.argv[0]
        sys.exit(1)
    elif len(sys.argv) == 3:
        src = sys.argv[1]
        dst = sys.argv[2]
        cnt = 1
    elif len(sys.argv) ==4:
        src = sys.argv[1]
        dst = sys.argv[2]
        cnt = sys.argv[3]
    else:
        print "Input error!"
        sys.exit(1)
#print src, dst
    ip = ImpactPacket.IP()
    ip.set_ip_src(src)
    ip.set_ip_dst(dst)
    # Create a new ICMP packet of type ECHO.
    icmp = ImpactPacket.ICMP()
    tcp = ImpactPacket.TCP()
    tcp.set_th_sport(55968)
    tcp.set_th_dport(80)
    tcp.set_th_seq(1)
    tcp.set_th_ack(1)
    tcp.set_th_flags(0x18)
    tcp.set_th_win(64)
    tcp.contains( ImpactPacket.Data("GET /att/DIYLife/41264/528 HTTP/1.1\r\nHost: 192.168.111.1\r\nAccept-Encoding: identity\r\n\r\n"))
    ip.contains(tcp)
    # Open a raw socket. Special permissions are usually required.
    s = socket.socket(socket.AF_INET, socket.SOCK_RAW, socket.IPPROTO_TCP)
    s.setsockopt(socket.IPPROTO_IP, socket.IP_HDRINCL, 1)
    seq_id = 0
    while cnt >= 1:
        # Calculate its checksum.
        seq_id = seq_id + 1
        tcp.set_th_seq(seq_id)
        tcp.calculate_checksum()
        # Send it to the target host.
        s.sendto(ip.get_packet(), (dst,80))
        cnt= cnt -1
if __name__ == '__main__':
    main()

运行后抓包如下:

python原始套接字编程示例分享

Python 相关文章推荐
Python 正则表达式操作指南
May 04 Python
python实现爬虫下载漫画示例
Feb 16 Python
Python-基础-入门 简介
Aug 09 Python
python去除空格和换行符的实现方法(推荐)
Jan 04 Python
python 画三维图像 曲面图和散点图的示例
Dec 29 Python
利用python提取wav文件的mfcc方法
Jan 09 Python
Python hashlib模块实例使用详解
Dec 24 Python
python Django 反向访问器的外键冲突解决
May 20 Python
pycharm远程连接服务器并配置python interpreter的方法
Dec 23 Python
详解matplotlib中pyplot和面向对象两种绘图模式之间的关系
Jan 22 Python
Python爬虫入门案例之爬取二手房源数据
Oct 16 Python
Python 详解通过Scrapy框架实现爬取百度新冠疫情数据流程
Nov 11 Python
python实现360皮肤按钮控件示例
Feb 21 #Python
python实现360的字符显示界面
Feb 21 #Python
python和pyqt实现360的CLable控件
Feb 21 #Python
python使用7z解压软件备份文件脚本分享
Feb 21 #Python
python发布模块的步骤分享
Feb 21 #Python
python列表操作使用示例分享
Feb 21 #Python
使用python统计文件行数示例分享
Feb 21 #Python
You might like
php array_intersect()函数使用代码
2009/01/14 PHP
PHP系统命令函数使用分析
2013/07/05 PHP
Smarty变量用法详解
2016/05/11 PHP
PHP中in_array函数使用的问题与解决办法
2016/09/11 PHP
PHP单态模式简单用法示例
2016/11/16 PHP
Zend Framework动作控制器用法示例
2016/12/09 PHP
php 猴子摘桃的算法
2017/06/20 PHP
laravel实现批量更新多条记录的方法示例
2017/10/22 PHP
PHP array_reverse() 函数原理及实例解析
2020/07/14 PHP
基于jquery的一个图片hover的插件
2010/04/24 Javascript
ExtJS4中使用mixins实现多继承示例
2013/12/03 Javascript
javascript获取select的当前值示例代码(兼容IE/Firefox/Opera/Chrome)
2013/12/17 Javascript
jquery删除提示框弹出是否删除对话框
2014/01/07 Javascript
jQuery过滤选择器:not()方法使用介绍
2014/04/20 Javascript
JS生成随机字符串的多种方法
2014/06/10 Javascript
zepto中使用swipe.js制作轮播图附swipeUp,swipeDown不起效果问题
2015/08/27 Javascript
JavaScript给input的value赋值引发的关于基本类型值和引用类型值问题
2015/12/07 Javascript
jQuery Easyui实现左右布局
2016/01/26 Javascript
IE8利用自带的setCapture和releaseCapture解决iframe的拖拽事件方法
2016/10/25 Javascript
JavaScript 数组的深度复制解析
2016/11/02 Javascript
js实现键盘自动打字效果
2016/12/23 Javascript
小程序实现带年月选取效果的日历
2018/06/27 Javascript
在Vuex使用dispatch和commit来调用mutations的区别详解
2018/09/18 Javascript
详解JavaScript 事件流
2020/09/02 Javascript
python中sleep函数用法实例分析
2015/04/29 Python
在Python的Tornado框架中实现简单的在线代理的教程
2015/05/02 Python
Python类属性与实例属性用法分析
2015/05/09 Python
django 通过URL访问上传的文件方法
2019/07/28 Python
python实现文件的分割与合并
2019/08/29 Python
python实现mean-shift聚类算法
2020/06/10 Python
Kathmandu英国网站:新西兰户外运动品牌
2017/03/27 全球购物
Hunkemöller西班牙:欧洲最大的内衣连锁店
2018/08/15 全球购物
秋季运动会广播稿大全
2014/02/17 职场文书
经典广告词大全
2014/03/14 职场文书
小学教师岗位职责
2015/04/02 职场文书
预备党员转正党小组意见
2015/06/01 职场文书