pcap

libpcap
Utvecklare Tcpdump-teamet
Stabil frisättning
1.10.3 / 12 januari 2023 ; 53 dagar sedan ( 2023-01-12 )
Förvar libpcap GitHub
Skrivet i C
Operativ system Linux , Solaris , FreeBSD , NetBSD , OpenBSD , macOS , annat Unix-liknande
Typ Bibliotek för paketfångning
Licens BSD
Hemsida www .tcpdump .org
WinPcap
Utvecklare Flodbäddsteknik
Slutlig utgåva
4.1.3 / 8 mars 2013 ; för 9 år sedan ( 2013-03-08 )
Operativ system Windows
Typ Bibliotek för paketfångning
Licens Gratisprogram
Hemsida www .winpcap .org
Npcap
Utvecklare Nmap - projektet
Stabil frisättning
1,71 / 19 augusti 2022 ; 6 månader sedan ( 2022-08-19 )
Operativ system Windows
Typ Bibliotek för paketfångning
Hemsida npcap .com

Inom området datornätverksadministration är pcap ett applikationsprogrammeringsgränssnitt ( API) för att fånga nätverkstrafik . Även om namnet är en förkortning av packet capture , är det inte API:ns rätta namn. Unix-liknande system implementerar pcap i libpcap- biblioteket; för Windows finns det en port för libpcap som heter WinPcap som inte längre stöds eller utvecklas, och en port som heter Npcap för Windows 7 och senare som fortfarande stöds.

Övervakningsmjukvara kan använda libpcap, WinPcap eller Npcap för att fånga nätverkspaket som färdas över ett datornätverk och, i nyare versioner, för att överföra paket på ett nätverk i länklagret och för att få en lista över nätverksgränssnitt för möjlig användning med libpcap, WinPcap eller Npcap.

Pcap API är skrivet i C , så andra språk som Java , .NET -språk och skriptspråk använder i allmänhet ett omslag ; inga sådana omslag tillhandahålls av libpcap eller WinPcap själv. C++ -program kan länka direkt till C API eller använda ett objektorienterat omslag.

Funktioner

libpcap, WinPcap och Npcap tillhandahåller paketinsamlings- och filtreringsmotorerna för många open-source och kommersiella nätverksverktyg, inklusive protokollanalysatorer ( paketsniffer ), nätverksmonitorer , nätverksintrångsdetekteringssystem , trafikgeneratorer och nätverkstestare.

libpcap, WinPcap och Npcap stöder också att spara infångade paket till en fil och läsa filer som innehåller sparade paket; applikationer kan skrivas med hjälp av libpcap, WinPcap eller Npcap, för att kunna fånga nätverkstrafik och analysera den, eller för att läsa en sparad fångst och analysera den med samma analyskod. En fångstfil sparad i det format som libpcap, WinPcap och Npcap använder kan läsas av program som förstår det formatet, som tcpdump , Wireshark , CA NetMaster eller Microsoft Network Monitor 3.x.

MIME -typen för filformatet som skapas och läses av libpcap, WinPcap och Npcap är application/vnd.tcpdump.pcap. Det typiska filtillägget är .pcap, även om .cap och .dmp också är vanliga.

Historia

libpcap utvecklades ursprungligen av tcpdump- utvecklarna i Network Research Group vid Lawrence Berkeley Laboratory . Lågnivåpaketinfångning, läsning av fångstfil och skrivkod för tcpdump extraherades och gjordes till ett bibliotek, med vilket tcpdump länkades. Det är nu utvecklat av samma tcpdump.org-grupp som utvecklar tcpdump.

pcap-bibliotek för Windows

Medan libpcap ursprungligen utvecklades för Unix-liknande operativsystem, skapades en framgångsrik port för Windows, kallad WinPcap. Den har inte underhållits sedan 2013, och flera konkurrerande gafflar har släppts med nya funktioner och stöd för nyare versioner av Windows.

WinPcap

WinPcap består av:

Programmerare vid Politecnico di Torino skrev den ursprungliga koden; från och med 2008 utvecklade och underhöll CACE Technologies, ett företag som bildades av några av WinPcap-utvecklarna, produkten. CACE förvärvades av Riverbed Technology den 21 oktober 2010.

Eftersom WinPcap använder de äldre NDIS 5.x API:erna, fungerar det inte på vissa versioner av Windows 10, som har fasat ut eller tagit bort dessa API:er till förmån för de nyare NDIS 6.x API:erna. Det tvingar också fram vissa begränsningar som att inte kunna fånga 802.1Q VLAN-taggar i Ethernet-huvuden.

WinPcap-projektet har upphört att utvecklas och WinPcap och WinDump underhålls inte längre. Den senaste officiella WinPcap-versionen var 4.1.3 som släpptes 8 mars 2013.

Npcap

Npcap är Nmap Projects paketsniffningsbibliotek för Windows. Den är baserad på WinPcap, men skriven för att använda Windows-nätverksförbättringar i NDIS version 6. Dess författare skrev om WinPcap NDIS 5 Protocol Driver som en Light-Weight Filter (LWF) drivrutin, en förändring som minskar bearbetningskostnader. Npcap-underhållsutgåvor uppdaterade versionen av det medföljande libpcap-biblioteket till den senaste tillgängliga, vilket gjorde det möjligt för programvaruförfattare att använda de nyare API-funktionerna som Linux-programvaran redan hade stöd för. De flesta program som använde WinPcap kan enkelt porteras till Npcap med minimala ändringar.

Npcap introducerade flera innovationer som inte var tillgängliga i WinPcap:

Win10Pcap

Implementeringen av Win10Pcap är också baserad på drivrutinsmodellen NDIS 6 och fungerar stabilt med Windows 10 . Projektet har dock varit inaktivt sedan 2016.

Program som använder eller använde libpcap

  • Apache Drill , en SQL-motor med öppen källkod för interaktiv analys av datauppsättningar i stor skala.
  • Bit-Twist , en libpcap-baserad Ethernet-paketgenerator och -redigerare för BSD, Linux och Windows.
  • Cain och Abel , ett utgått lösenordsåterställningsverktyg för Microsoft Windows
  • EtherApe , ett grafiskt verktyg för att övervaka nätverkstrafik och bandbreddsanvändning i realtid.
  • Firesheep , ett utgått tillägg för webbläsaren Firefox som fångade paket och utförde sessionskapning
  • iftop , ett verktyg för att visa bandbreddsanvändning (som topp för nätverkstrafik)
  • Kismet , för 802.11 trådlösa LAN
  • L0phtCrack , en applikation för lösenordsgranskning och återställning .
  • McAfee ePolicy Orchestrator, funktion för upptäckt av falska system
  • ngrep , aka "nätverksgrep " , isolera strängar i paket, visa paketdata i människovänlig utdata.
  • Nmap , ett nätverksverktyg för portskanning och fingeravtryck
  • Pirni , ett utgått nätverkssäkerhetsverktyg för jailbroken iOS -enheter.
  • Scapy , ett paketmanipuleringsverktyg för datornätverk, skrivet i Python av Philippe Biondi.
  • Snort , ett nätverksintrångsdetekteringssystem.
  • Suricata , en plattform för förebyggande och analys av nätverksintrång.
  • Symantec Data Loss Prevention, Används för att övervaka och identifiera känsliga data, spåra dess användning och plats. Dataförlustpolicyer tillåter att känslig data blockeras från att lämna nätverket eller kopieras till en annan enhet.
  • tcpdump , ett verktyg för att fånga och dumpa paket för vidare analys, och WinDump, Windows-porten för tcpdump.
  • Zeek , ett intrångsdetekteringssystem och nätverksövervakningsplattform .
  • URL Snooper , leta upp webbadresserna till ljud- och videofiler för att tillåta inspelning av dem.
  • WhatPulse , en statistisk (indata, nätverk, drifttid) mätapplikation.
  • Wireshark (tidigare Ethereal), ett grafiskt verktyg för paketfångning och protokollanalys.
  • XLink Kai Software som gör att olika LAN-konsolspel kan spelas online
  • Xplico , ett verktyg för nätverkskriminalteknisk analys (NFAT).

Omslagsbibliotek för libpcap

Icke-pcap-kod som läser pcap-filer

externa länkar