欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

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

源碼如下

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)被服務(wù)端加1)
    d_seq = ans[TCP].seq + 1 #確認(rèn)號,需要把服務(wù)端的序列號加1
    #第三次握手,發(fā)送ACK確認(rèn)包
    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()
  #讀取服務(wù)端發(fā)來的數(shù)據(jù)
  rcv = ans[Raw]
  print rcv

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

運行結(jié)果如下

# 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)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python中import機制詳解

    Python中import機制詳解

    在剛剛接觸python時,我們會被其優(yōu)美的格式、簡潔的語法和無窮無盡的類庫所震撼。在真正的將python應(yīng)用到實際的項目中,你會遇到一些無法避免的問題。最讓人困惑不解的問題有二類,一個編碼問題,另一個則是引用問題。本文主要討論關(guān)于Python中import的機制與實現(xiàn)
    2017-11-11
  • python 如何做一個識別率百分百的OCR

    python 如何做一個識別率百分百的OCR

    最近在做游戲自動化(測試),也就是游戲腳本了。主要有以下幾個需求識別率百分百、速度要快、模型要小,本文就來著手實現(xiàn)它
    2021-05-05
  • Python中執(zhí)行CMD命令的方法總結(jié)

    Python中執(zhí)行CMD命令的方法總結(jié)

    在實際開發(fā)中,有時候我們需要在Python中執(zhí)行一些系統(tǒng)命令(CMD命令),本文將詳細(xì)介紹在Python中執(zhí)行CMD命令的方法,并通過豐富的示例代碼幫助大家更全面地理解這一過程,希望對大家有所幫助
    2023-12-12
  • Python3.10中match-case的用法和示例詳解

    Python3.10中match-case的用法和示例詳解

    在?Python?3.10?中引入了新的?match-case?語法,它是一種用于模式匹配的結(jié)構(gòu),下面小編就來和大家簡單聊聊match-case的用法和示例吧,有需要的小伙伴可以參考下
    2023-10-10
  • python中re.findall()?的使用案例

    python中re.findall()?的使用案例

    re.findall()?函數(shù)是?python?中正則表達式模塊(re)的一個重要函數(shù),它可以根據(jù)正則表達式搜索字符串,并返回匹配的字符串列表,這篇文章給大家介紹了python中re.findall()?的使用案例,感興趣的朋友跟隨小編一起看看吧
    2023-09-09
  • Python之Scrapy爬蟲框架安裝及使用詳解

    Python之Scrapy爬蟲框架安裝及使用詳解

    這篇文章主要為大家詳細(xì)介紹了Python Scrapy爬蟲框架安裝及簡單使用,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • python字典翻轉(zhuǎn)的實現(xiàn)

    python字典翻轉(zhuǎn)的實現(xiàn)

    本文主要介紹了python字典翻轉(zhuǎn)的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05
  • python字典DICT類型合并詳解

    python字典DICT類型合并詳解

    這篇文章主要為大家詳細(xì)介紹了python字典DICT類型合并,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • wxPython中wx.gird.Gird添加按鈕的實現(xiàn)

    wxPython中wx.gird.Gird添加按鈕的實現(xiàn)

    本文主要介紹了wxPython中wx.gird.Gird添加按鈕的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • pycharm?使用conda虛擬環(huán)境的詳細(xì)配置過程

    pycharm?使用conda虛擬環(huán)境的詳細(xì)配置過程

    這篇文章主要介紹了pycharm?使用conda虛擬環(huán)境,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-03-03

最新評論