最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于python模擬TCP3次握手連接及發(fā)送數(shù)據(jù)

 更新時間:2020年11月06日 16:17:15   作者:掙扎的豬  
這篇文章主要介紹了基于python模擬TCP3次握手連接及發(fā)送數(shù)據(jù),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

源碼如下

from scapy.all import *
import logging
logging.getLogger('scapy.runtime').setLevel(logging.ERROR)

target_ip    = '192.168.1.1'
target_port   = 80
data      = 'GET / HTTP/1.0 \r\n\r\n'

def start_tcp(target_ip,target_port):
  global sport,s_seq,d_seq  #主要是用于TCP3此握手建立連接后繼續(xù)發(fā)送數(shù)據(jù)
  try:
    #第一次握手,發(fā)送SYN包
    ans = sr1(IP(dst=target_ip)/TCP(dport=target_port,sport=RandShort(),seq=RandInt(),flags='S'),verbose=False)
    sport = ans[TCP].dport  #源隨機端口
    s_seq = ans[TCP].ack   #源序列號(其實初始值已經(jīng)被服務端加1)
    d_seq = ans[TCP].seq + 1 #確認號,需要把服務端的序列號加1
    #第三次握手,發(fā)送ACK確認包
    send(IP(dst=target_ip)/TCP(dport=target_port,sport=sport,ack=d_seq,seq=s_seq,flags='A'),verbose=False)
  except Exception,e:
    print '[-]有錯誤,請注意檢查!'
    print e

def trans_data(target_ip,target_port,data):
  #先建立TCP連接
  start_tcp(target_ip=target_ip,target_port=target_port)
  #print sport,s_seq,d_seq
  #發(fā)起GET請求
  ans = sr1(IP(dst=target_ip)/TCP(dport=target_port,sport=sport,seq=s_seq,ack=d_seq,flags=24)/data,verbose=False)
  #ans.show()
  #讀取服務端發(fā)來的數(shù)據(jù)
  rcv = ans[Raw]
  print rcv

if __name__ == '__main__':
  #start_tcp(target_ip,target_port)
  trans_data(target_ip,target_port,data)

運行結果如下

# python exp3.py
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Expires" content="wed, 26 Feb 1997 08:21:57 GMT">
<html><head><title>505 HTTP Version not supported</title></head><body><center><h1>505 HTTP Version not supported</h1></center></body></html>�p�-1���-1��2��2��D��o�p�-1��`��D

wireshark抓包截圖如下:

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • Django 簡單實現(xiàn)分頁與搜索功能的示例代碼

    Django 簡單實現(xiàn)分頁與搜索功能的示例代碼

    這篇文章主要介紹了Django 簡單實現(xiàn)分頁與搜索功能的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-11-11
  • Python讀csv文件去掉一列后再寫入新的文件實例

    Python讀csv文件去掉一列后再寫入新的文件實例

    下面小編就為大家分享一篇Python讀csv文件去掉一列后再寫入新的文件實例,具有很的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12
  • 使用pandas將numpy中的數(shù)組數(shù)據(jù)保存到csv文件的方法

    使用pandas將numpy中的數(shù)組數(shù)據(jù)保存到csv文件的方法

    今天小編就為大家分享一篇使用pandas將numpy中的數(shù)組數(shù)據(jù)保存到csv文件的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • Python學習筆記之常用函數(shù)及說明

    Python學習筆記之常用函數(shù)及說明

    俗話說“好記性不如爛筆頭”,老祖宗們幾千年總結出來的東西還是有些道理的,所以,常用的東西也要記下來,不記不知道,一記嚇一跳,乖乖,函數(shù)咋這么多捏
    2014-05-05
  • python如何在word中存儲本地圖片

    python如何在word中存儲本地圖片

    這篇文章主要介紹了python如何在word中存儲本地圖片,想了解docx模塊的同學,可以參考下
    2021-04-04
  • 詳細介紹Python中的set集合

    詳細介紹Python中的set集合

    本文詳細介紹了Python中set集合的基本概念和詳細用法,希望對讀者朋友們有所幫助。需要的朋友可以參考下面具體的文章內(nèi)容
    2021-09-09
  • Python如何寫入Pandas DataFrame到CSV文件

    Python如何寫入Pandas DataFrame到CSV文件

    Pandas是一個功能強大的Python數(shù)據(jù)分析庫,常用于處理和分析數(shù)據(jù),CSV文件是一種廣泛使用的數(shù)據(jù)交換格式,Pandas通過to_csv方法支持將DataFrame寫入CSV文件,此方法允許用戶指定分隔符、編碼和選擇性寫入特定列等
    2024-09-09
  • Python內(nèi)置函數(shù)Type()函數(shù)一個有趣的用法

    Python內(nèi)置函數(shù)Type()函數(shù)一個有趣的用法

    這篇文章主要介紹了Python內(nèi)置函數(shù)Type()函數(shù)一個有趣的用法,本文講解的是個人發(fā)現(xiàn)在的一個有趣的用法,注意這種寫法會導致代碼很難讀,需要的朋友可以參考下
    2015-02-02
  • Python matplotlib生成圖片背景透明的示例代碼

    Python matplotlib生成圖片背景透明的示例代碼

    這篇文章主要介紹了Python matplotlib生成圖片背景透明的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-08-08
  • 詳解python中的線程與線程池

    詳解python中的線程與線程池

    這篇文章主要介紹了python線程與線程池,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-05-05

最新評論

湖南省| 蕉岭县| 金昌市| 双江| 大竹县| 福清市| 黄平县| 长白| 兴城市| 新邵县| 星座| 都昌县| 廉江市| 保靖县| 油尖旺区| 三明市| 宜城市| 驻马店市| 天峻县| 永靖县| 三亚市| 太仆寺旗| 淮安市| 东方市| 荣成市| 图木舒克市| 大兴区| 长兴县| 永新县| 电白县| 久治县| 讷河市| 蒙山县| 蓬莱市| 抚松县| 冕宁县| 西乌珠穆沁旗| 巴里| 柯坪县| 乌海市| 宁陵县|