<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    安全運維 | tcprepaly工具的安裝與使用!

    VSole2022-12-02 09:54:02

    聲明:本人堅決反對利用文章內容進行惡意攻擊行為,一切錯誤行為必將受到懲罰,綠色網絡需要靠我們共同維護,推薦大家在了解技術原理的前提下,更好的維護個人信息安全、企業安全、國家安全。

    Tcpreplay是一種pcap包的重放工具, 它可以將tcpdump和Ethereal/Wireshark等工具捕捉到的網絡流量包進行編輯修改和重放. 重寫Layer 2、3、4層數據包,并將流量重新發送至目標網絡, 這樣通過重放網絡流量包從而實現復現問題情景以定位bug。

    Tcpreplay是一個工具集合,包括:tcpprep(確認客戶端發給服務器的報文,還是服務器發給客戶端的報文)、tcprewrite(編輯報文)、tcpreplay(發送報文)。其中,tcpreplay是真正實現流量回放功能的工具,其他幾個工具可以看作tapreplay的輔助工具,作為流量重放前期的準備工作,比如tcpprep可以劃分哪些包是client的, 哪些是server的, client的包從一個網卡發, server的包可能從另一個網卡發。tcprewrite可以就是修改2層, 3層, 4層報文頭部,也就是對IP,MAC等信息進行修改。

    Tcpreplay安裝

    CentOS環境下直接,在線安裝執行下列命令即可:

    yum -y install tcpreplay
    

    Ubuntu環境下直接,在線安裝執行下列命令即可:

    sudo apt-get install tcpreplay
    

    查看安裝是否成功:

    tcpreplay -V
    

    查看幫助信息:

    -q, --quiet   #安靜模式 -a  #精確的時間(使用高速 cpu 發包) -d  #輸出調試信息(0-5,默認 0) -K, --preload-pcap   #發送前將數據包預加載到 RAM 中 -c  #雙網卡回放報文必選參數,后跟文件名 -C, --cachefile=str   #通過tcpprep緩存文件拆分流量 -N  #獲得網絡接口和出口 -2, --dualfile        #從網絡分路器一次重放兩個文件 -i, --intf1=str       #客戶端到服務器/RX/主要流量輸出接口,雙網卡回放報文必選參數,指定從接口 -I, --intf2=str       #服務器到客戶端/TX/二級流量輸出接口 --listnics            #列出可用的網絡接口并退出,雙網卡回放報文必選參數,指定主接口 -S  #制定包長度 -L, --limit=num       #限制發送的數據包數量      --duration=num   #限制發送的秒數,限制發包數量 -M, --mbps=str              以 Mbps(兆字節每秒)發送報文 -t, --topspeed              以最快的速度回放報文 -o, --oneatatime           用戶每輸入一次回放一個報文     --pps-multi=num        每個時間間隔發送的數據包數X     --unique-ip            每次循環迭代修改 IP 地址以生成唯一的流     --unique-ip-loops=str  在分配新的唯一 ip 之前循環的次數     --no-flow-stats        禁止打印和跟蹤流計數、速率和到期時間     --flow-expiry=num      將流視為過期之前處于非活動狀態的秒數 -r, --portmap=str          重寫 tcp/udp 端口 -s, --seed=num             根據給出的seed隨機改寫源/目的IPv4、IPv6 -N, --pnat=str             通過偽 NAT 重寫 ip 地址 -S, --srcipmap=str         使用偽 NAT 重寫源 IPv4/v6 地址 -D, --dstipmap=str            使用偽 NAT 重寫目標 IPv4/v6 地址 -e, --endpoints=str        在最后 2 個點之間重寫 ip 地址 -b, --skipbroadcast        不重寫廣播/多播 IP 地址 -C, --fixcsum              強制重新計算 TP/TCP/UDP 校驗和 -m, --mtu=num              覆蓋默認 MTU 長度(1500 字節)     --mtu-trunc            截斷大于指定 MTU 的數據包 -E, --efcs                 從幀尾刪除以太網校驗和 (FCS)     --ttl=str              修改 IPv4/v6 TTL/Hop 限制     --tos=num              設置 IPv4 TOS/DiffServ/ECN 字節     --tclass=num           設置 IPv6 流量類別字節     --flowlabel=num        設置 IPv6 流標簽 -F, --fixlen=str           填充或截斷數據包數據以匹配報頭長度     --fuzz-seed=num        Fuzz 1 in X packets.  Edit bytes, length, or emulate packet drop     --fuzz-factor=num      Set the Fuzz 1 in X packet ratio (default 1 in 8 packets)     --skipl2broadcast      跳過重寫廣播/多播第 2 層地址     --enet-dmac=str        覆蓋目標以太網 MAC 地址     --enet-smac=str        覆蓋源以太網 MAC 地址     --enet-subsmac=str     替換 MAC 地址     --enet-mac-seed=num    隨機化 MAC 地址     --enet-mac-seed-keep-bytes=num 隨機化 MAC 地址     --enet-vlan=str        指定以太網 802.1q VLAN 標記模式     --enet-vlan-tag=num    指定新的以太網 802.1q VLAN 標記值     --enet-vlan-cfi=num    指定以太網 802.1q VLAN CFI 值     --enet-vlan-pri=num    指定以太網 802.1q VLAN 優先級     --hdlc-control=num     指定 HDLC 控制值     --hdlc-address=num     指定HDLC地址     --user-dlt=num         設置輸出文件 DLT 類型     --user-dlink=str       用用戶指定的數據重寫數據鏈路層 -i, --infile=str           輸入待處理的pcap文件 -o, --outfile=str          輸出 pcap 文件 -c, --cachefile=str        通過 tcpprep 緩存文件拆分流量 -v, --verbose              通過 tcpdump 將解碼的數據包打印到 STDOUT -V, --version              Print version information 顯示版本號 -P, --pid                  啟動時打印tcpreplay的PID     --stats=num            每 X 秒打印一次統計信息,如果為“0”,則在每個循環中打印一次 ---------------------------------------------------------------------------------------- -T, --timer=str            選擇包定時模式:select、ioport、gtod、nano     --maxsleep=num         包與包之間相隔X毫秒 -v, --verbose              通過 tcpdump 將解碼的數據包打印到 STDOUT,可選參數,每發送一個報文都以 tcpdump 風格打印對應信息 ------------------------------------------------------------------------------------------ -l, --loop=num              循環遍歷捕獲文件 X 次 --loopdelay-ms=num          循環之間的延遲(以毫秒為單位) --pktlen                    覆蓋 snaplen 并使用實際的數據包 len,可選參數,指定循環次數 ----------------------------------------------------------------------------------------- -x, --multiplier=str         將重播速度修改為給定倍數 -p, --pps=str                指定每秒發送報文的個數 ------------------------------------------------------------------------------------------ -m  #可選參數,指定一個倍數值,比默認發送速度快多少倍發送報文 ------------------------------------------------------------------------------------------- -A, --decode=str           傳遞給 tcpdump 解碼器的參數     --skip-soft-errors     跳過寫入軟錯誤的數據包
    

    Tcpreplay典型案例

    本次案例使用Tcpreplay工具,重放具有攻擊特征的流量數據包,觸發IPS告警信息。操作過程如下所示:

    (1)查詢可用的網絡接口信息

    tcpreplay --listnics
    

    (2)抓取接口的流量數據包

    tcpreplay -i eth3 data.pcap
    

    (3)標記 client 和 server

    tcpprep -a client -i test.pcap -o test.cach
    

    (4)修改源目的ip和mac地址

    tcprewrite --endpoints=源ip地址:目的ip地址 --enet-dmac=上行目的mac地址,下行目的mac地址 --enet-smac=上行源mac地址,下行源mac地址 -i test.pcap -c test.cach -o test_result.pcap
    --endpoints: 重寫ip地址 源ip地址:目的ip地址--enet-dmac: 覆蓋目標以太網MAC地址 上行目的mac地址,下行目的mac地址--enet-smac: 覆蓋源以太網MAC地址 上行源mac地址,下行源mac地址-i: 客戶端到服務器/RX/主要流量輸出接口-c: 雙網卡回放報文必選參數,后跟文件名
    

    (5)從新生成cach文件

    tcpprep -a client -i test_result.pcap -o test_result.cach
    

    (6)tcpreplay回放報文

    tcpreplay -i eth3 -I eth5 -c test_result.cach test_result.pcap
    

    (7)在IPS底層抓取流量包,發現已經觸發IPS告警

    常見問題總結

    (1)如果回放報文出現了消息過長“Error whith PF_PACKET send() :Message to long”的錯誤,通常mtu的默認值為1500, 將網卡的mtu值改大,例如命令為:

    ip link set eth2 mtu 1520 ifconfig eth2 mtu 1520
    

    (2)如果重放報文報文發現報文時序錯亂問題,比如tcp三次握手信息錯亂等,通常是由于報文的時間間隔較短,再加上網絡環境等因素的影響造成報文到達時間不同。通常可以通過設置發包速率-p參數解決該問題:

    tcpreplay -i eth3 -I eth5 -p 1 -c test_result.cach test_result.pcap
    
    安全運維num
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    網絡拓撲場景介紹局域網下含有物理機、proxy server主機。物理機即普通客戶主機,proxy server即企業提供的代理,此網絡模擬的是公網環境。
    本文介紹幾款 Linux 比較實用的工具,希望對 Linux 人員有所幫助。 1. 查看進程占用帶寬情況 - Nethogs Nethogs 是一個終端下的網絡流量監控工具可以直觀的顯示每個進程占用的帶寬。
    結合分布式OSSIM部署特點實現遠程多點采集數據包進行分析的實例。每個傳感器和OSSIM Server之間通訊正常。各個傳感器所連接的均為相應交換機的SPAN口。抓包時可以不必輸入,除非確切知道要捕獲的機器之間通訊。為了便于觀察,對于選中的包系統會用綠色高亮顯示出來。右邊方框顯示的是中間內容的可顯示字符。③host 192.168.150.10:顯示目的或來源IP地址為192.168.150.10的數據包。顯示來源為UDP或TCP,并且端口號在3000至5500范圍內的數據包。
    web安全自動化
    2021-07-03 08:16:28
    你有可能也會遇到這種情況,公司沒有任何安全設備,也沒有資金采購,應付層層攻擊,那么作為公司唯有一個安全工程師,如何來自動化保障公司的web安全呢?
    本文介紹幾款Linux比較實用的工具,希望對Linux管理員有所幫助。-a使用全自動模式-n為自動模式設置最小文件大小。
    本文介紹幾款Linux比較實用的工具,希望對Linux管理員有所幫助。
    基于TCP/IP的參考模型將協議分成四個層次,它們分別是鏈路層、網絡層、傳輸層和應用層。下圖表示TCP/IP模型與OSI模型各層的對照關系。TCP/IP協議族按照層次由上到下,層層包裝。出棧的過程,數據接收方每層不斷地拆除首部與尾部,得到最終傳輸的數據。上圖以HTTP協議為例,具體說明。原理是用類型碼為0的ICMP發請求,受到請求的主機則用類型碼為8的ICMP回應。因此,應用程序必須選擇合適大小的報文。
    今日數說安全共為您精選出35個商機,其中重點項目2個,安全專項項目23個,含安全需求的集成項目10個。 數說安全推出網絡安全行業數據分析訂閱服務,可加文末工作人員聯系方式訂閱,實時了解各行業網安市場動態及發展趨勢,助力網絡安全企業數字化營銷!
    一個內網安全攻防的知識倉庫
    本文介紹幾款Linux比較實用的工具,希望對Linux管理員有所幫助。-g設置自動模式可使用的最大文件大小Kbytes。-f指定測試文件的名字完成后自動刪除-R產生Excel到標準輸出-b指定輸出到指定文件上3、實時監控磁盤IO-IOTopIOTop命令是專門顯示硬盤IO的命令,界面風格類似top命令。
    VSole
    網絡安全專家
      亚洲 欧美 自拍 唯美 另类