pcap

Ağ trafiğini yakalamak için uygulama programlama arayüzü

Bilgisayar ağ yönetimi alanında, pcap ağ trafiğini yakalama için bir API'dir. Bu isim packet capture kelimesinin kısaltması olsa da, API'nin özel ismi bu değildir. Unix benzeri sistemler pcap'i libpcap kütüphanesinde uygular; Windows için, libpcap'in artık desteklenmeyen veya geliştirilmeyen WinPcap adlı bir uyarlaması ve Windows 7 ve sonrası için hala desteklenen Npcap adlı bir uyarlaması vardır.

libpcap
Geliştirici(ler)The Tcpdump team
Güncel sürüm1.10.3 / 12 Ocak 2023 (15 ay önce) (2023-01-12)[1]
Programlama diliC
İşletim sistemiLinux, Solaris, FreeBSD, NetBSD, OpenBSD, macOS, diğer Unix benzeri sistemler
TürPaket yakalama için bir kütüphane
LisansBSD[2]
Resmî sitesitcpdump.org
Kod deposuGitHub'da Pcap
WinPcap
Geliştirici(ler)Riverbed Technology
Güncel sürüm4.1.3 / 8 Mart 2013 (11 yıl önce) (2013-03-08)[3]
İşletim sistemiWindows
TürPaket yakalama için bir kütüphane
LisansFreeware
Resmî sitesiwinpcap.org
Npcap
Geliştirici(ler)the Nmap project
Güncel sürüm1.71 / 19 Ağustos 2022 (20 ay önce) (2022-08-19)[4]
İşletim sistemiWindows
TürPaket yakalama için bir kütüphane
Resmî sitesinpcap.com

Herhangi bir izleme yazılımı, libpcap, WinPcap veya Npcap'i bir bilgisayar ağı üzerinde dolaşan ağ paketi yakalamak ve daha yeni sürümlerde paketleri bağlantı katmanı üzerinde bir ağa iletmek ve libpcap, WinPcap veya Npcap ile olası kullanım için ağ arayüzlerinin bir listesini almak için kullanabilir.

Pcap API, C ile yazılmıştır, bu nedenle Java, .NET dilleri ve betik dili gibi diğer diller genellikle bir sarmalayıcı kütüphane (wrapper) kullanır; libpcap veya WinPcap'in kendisi tarafından böyle bir sarmalayıcı sağlanmamıştır. C++ programları doğrudan C API'sine bağlanabilir veya bir nesne yönelimli sarmalayıcı kullanabilir.

Özellikler değiştir

libpcap, WinPcap ve Npcap, protokol analizörleri (paket çözümleyicileri), ağ izleme sistemleri, ağ saldırı tespit sistemleri, trafik oluşturucular ve ağ test cihazları dahil olmak üzere birçok açık kaynak kodlu ve ticari ağ araçlarının paket yakalama ve filtreleme motorlarını oluşturur.

libpcap, WinPcap ve Npcap ayrıca yakalanan paketlerin bir dosyaya kaydedilmesini ve kaydedilen paketleri içeren dosyaların okunmasını da destekler; libpcap, WinPcap veya Npcap kullanılarak, ağ trafiğini yakalayıp analiz edebilmek veya kaydedilmiş bir yakalamayı okuyup aynı analiz kodunu kullanarak analiz edebilmek için uygulamalar yazılabilir. libpcap, WinPcap ve Npcap'in kullandığı biçimde kaydedilen bir yakalama dosyası, tcpdump, Wireshark, CA NetMaster veya Microsoft Ağ İzleyicisi 3.x gibi bu biçimi anlayan uygulamalar tarafından okunabilir.

libpcap, WinPcap ve Npcap tarafından oluşturulan ve okunan dosya biçimi için MIME türü application/vnd.tcpdump.pcap'dir. Tipik dosya uzantısı .pcap'tir, ancak .cap ve .dmp de yaygın olarak kullanılmaktadır.

Tarihçe değiştir

libpcap ilk olarak tcpdump geliştiricileri tarafından Lawrence Berkeley Ulusal Laboratuvarı'ndaki Ağ Araştırma Grubu'nda geliştirilmiştir. Tcpdump'ın düşük seviyeli paket yakalama, yakalama dosyası okuma ve yakalama dosyası yazma kodu, kod içerisinden çıkartıldı ve tcpdump'ın bağlandığı bir kütüphane haline getirildi.[5] pcap şu anda tcpdump'ı geliştiren aynı tcpdump.org grubu tarafından geliştirilmektedir.[6]

Windows için pcap kütüphaneleri değiştir

libpcap başlangıçta Unix benzeri işletim sistemleri için geliştirilmiş olsa da, Windows için WinPcap adı verilen başarılı bir uyarlama yapılmıştır. 2013'ten beri bakımı/geliştirmesi yapılmamaktadır,[7] ve Windows'un daha yeni sürümleri için yeni özellikler ve destek ile birkaç rakip çatal projeler piyasaya sürülmüştür.

WinPcap değiştir

WinPcap şunlardan oluşur:[8]

Orijinal kodu Politecnico di Torino'daki programcılar yazdı; 2008 itibarıyla WinPcap geliştiricilerinden bazıları tarafından kurulan bir şirket olan CACE Technologies ürünü geliştirdi ve sürdürdü. CACE, 21 Ekim 2010 tarihinde Riverbed Technology tarafından satın alındı.[9]

WinPcap eski NDIS 5.x API'lerini kullandığından, daha yeni NDIS 6.x API'leri lehine bu API'leri kullanımdan kaldıran veya onaylamayan bazı Windows 10 yapılarında çalışmaz. Ayrıca Ethernet başlıklarında 802.1Q VLAN etiketleri yakalayamamak gibi bazı sınırlamalara da neden olur.

WinPcap projesi geliştirmeyi durdurdu ve WinPcap ile WinDump artık sürdürülmüyor. Son resmi WinPcap sürümü 8 Mart 2013'te yayınlanan 4.1.3 idi.[10]

Npcap değiştir

Npcap Nmap Project'in Windows için paket koklama kütüphanesidir.[11] WinPcap tabanlıdır, ancak Network Driver Interface Specification sürüm 6'daki Windows ağ geliştirmelerinden yararlanmak için yazılmıştır. Yazarları WinPcap NDIS 5 Protokol Sürücüsünü Hafif Filtre (LWF: Light-Weight Filter) sürücüsü olarak yeniden yazmışlardır, bu değişiklik işlem yükünü azaltmaktadır.[12] Npcap bakım sürümleri, yazılım yazarlarının Linux yazılımının zaten desteklediği daha yeni API özelliklerini kullanmasına olanak tanıyarak, dahil edilen libpcap kütüphanesinin sürümünü mevcut en son sürüme güncelledi.[13] WinPcap kullanan çoğu yazılım, minimum değişiklikle Npcap kullanmak için kolayca uyarlanabilir.[14]

Npcap, WinPcap'te bulunmayan çeşitli yenilikler getirmiştir:

Win10Pcap değiştir

Win10Pcap uygulaması da NDIS 6 sürücü modeline dayanır ve Windows 10 ile kararlı bir şekilde çalışır.[18] Ancak proje 2016 yılından beri aktif değildir.[19]

libpcap kullanan veya kullanmış olan programlar değiştir

  • Bit-Twist, BSD, Linux ve Windows için libpcap tabanlı bir Ethernet paket üreticisi ve düzenleyicisi.
  • Cain and Abel, Microsoft Windows için geliştirilmesi durdurulmuş bir şifre kurtarma aracı
  • EtherApe, ağ trafiğini ve bant genişliği kullanımını gerçek zamanlı olarak izlemek için grafiksel bir araç.
  • Firesheep, Firefox web tarayıcısı için paketleri yakalayan ve oturum kaçırma gerçekleştiren durdurulmuş bir uzantı
  • iftop, bant genişliği kullanımını görüntülemek için bir araç (ağ trafiği için top gibi)
  • Kismet, 802.11 kablosuz LAN'lar için bir araç
  • L0phtCrack, bir şifre denetim ve kurtarma uygulaması.
  • McAfee ePolicy Orchestrator, Rogue System Detection özelliği
  • ngrep, diğer adıyla "network grep", paketlerdeki dizeleri izole eder, paket verilerini insan dostu çıktıda gösterir.
  • Nmap, bir port tarama ve fingerprinting ağ yardımcı programı
  • Pirni, jailbreak yapılmış iOS cihazları için geliştirilmiş ancak durdurulan bir ağ güvenlik aracı.
  • Scapy, Philippe Biondi tarafından Python dilinde yazılmış, bilgisayar ağları için bir paket manipülasyon aracı.
  • Snort, bir ağa izinsiz giriş tespit sistemi.
  • Suricata, bir ağ saldırı önleme ve analiz platformu.
  • Symantec Veri Kaybı Önleme (Data Loss Prevention), Hassas verileri izlemek ve tanımlamak, kullanımını ve konumunu izlemek için kullanılır. Veri kaybı ilkeleri, hassas verilerin ağdan çıkmasının veya başka bir cihaza kopyalanmasının engellenmesini sağlar.
  • tcpdump, daha fazla analiz için paketleri yakalamak ve dökmek amacıyla geliştirilmiş bir araç. WinDump, tcpdump'ın Windows uyarlaması.
  • Zeek, bir saldırı tespit sistemi ve ağ izleme platformu.
  • URL Snooper, ses ve video dosyalarının kaydedilmesine izin vermek için URL'leri bulur.
  • WhatPulse, istatistiksel (giriş, ağ, çalışma süresi) ölçüm uygulaması.
  • Wireshark (eski adıyla Ethereal), grafiksel bir paket yakalama ve protokol analiz aracı.
  • XLink Kai Çeşitli LAN konsol oyunlarının çevrimiçi oynanmasını sağlayan yazılım
  • Xplico, bir ağ adli tıp analiz aracı (NFAT - network forensics analysis tool).

libpcap için sarmalayıcı kütüphaneler değiştir

Pcap dosyalarını okuyabilen pcap dışı kütüphaneler değiştir

pcap veya pcapng dosyalarını okuyan veya yazan diğer uygulama veya cihazlar değiştir

  • Apache Drill, büyük ölçekli veri kümelerinin etkileşimli analizi için açık kaynaklı bir SQL motoru.[20][21]
  • Endace EndaceProbe, haftalarca veya aylarca süren ağ trafiğini sürekli olarak kaydeden yüksek ölçekli bir paket yakalama sistemi.[22]

Kaynakça değiştir

  1. ^ "tcpdump and libpcap latest release". tcpdump.org. 10 Ekim 2019 tarihinde kaynağından arşivlendi. Erişim tarihi: 8 Şubat 2023. 
  2. ^ "tcpdump and libpcap license". tcpdump.org. 15 Nisan 2012 tarihinde kaynağından arşivlendi. Erişim tarihi: 2 Mayıs 2020. 
  3. ^ "WinPcap Changelog". 24 Kasım 2006 tarihinde kaynağından arşivlendi. Erişim tarihi: 12 Ekim 2023. 
  4. ^ "npcap/CHANGELOG.md". 8 Ağustos 2018 tarihinde kaynağından arşivlendi. Erişim tarihi: 12 Ekim 2023. 
  5. ^ McCanne, Steve. "libpcap: An Architecture and Optimization Methodology for Packet Capture" (PDF). 5 Nisan 2023 tarihinde kaynağından arşivlendi (PDF). Erişim tarihi: 27 Aralık 2013. 
  6. ^ "TCPDUMP/LIBPCAP public repository". 10 Ekim 2019 tarihinde kaynağından arşivlendi. Erişim tarihi: 27 Aralık 2013. 
  7. ^ "WinPcap News". 1 Ağustos 2023 tarihinde kaynağından arşivlendi. Erişim tarihi: 6 Kasım 2017. 
  8. ^ "WinPcap internals". 29 Kasım 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 27 Aralık 2013. 
  9. ^ "Riverbed Expands Further Into The Application-Aware Network Performance Management Market with the Acquisition of CACE Technologies" (Basın açıklaması). Riverbed Technology. 21 Ekim 2010. 8 Mart 2013 tarihinde kaynağından arşivlendi. Erişim tarihi: 21 Ekim 2010. 
  10. ^ "WinPcap · News". WinPcap. 8 Mart 2013. 1 Ağustos 2023 tarihinde kaynağından arşivlendi. Erişim tarihi: 12 Ekim 2023. 
  11. ^ "Npcap". 3 Ekim 2023 tarihinde kaynağından arşivlendi. Erişim tarihi: 12 Ekim 2023. 
  12. ^ "Filter drivers". 27 Haziran 2022 tarihinde kaynağından arşivlendi. Erişim tarihi: 12 Ekim 2023. 
  13. ^ "Release Npcap 1.20". 6 Nisan 2023 tarihinde kaynağından arşivlendi. Erişim tarihi: 12 Ekim 2023. 
  14. ^ "Updating WinPcap software to Npcap". Developing software with Npcap. 5 Ağustos 2023 tarihinde kaynağından arşivlendi. Erişim tarihi: 25 Şubat 2023. 
  15. ^ "Graphical installer options". Npcap Users' Guide. 5 Nisan 2023 tarihinde kaynağından arşivlendi. Erişim tarihi: 25 Şubat 2023. 
  16. ^ "For software that uses Npcap loopback feature". Npcap User's Guide. 5 Ağustos 2023 tarihinde kaynağından arşivlendi. Erişim tarihi: 25 Şubat 2023. 
  17. ^ "For software that uses Npcap raw 802.11 feature". Npcap User's Guide. 5 Ağustos 2023 tarihinde kaynağından arşivlendi. Erişim tarihi: 25 Şubat 2023. 
  18. ^ "Win10Pcap: WinPcap for Windows 10". 28 Haziran 2018 tarihinde kaynağından arşivlendi. Erişim tarihi: 12 Ekim 2023. 
  19. ^ Win10Pcap: WinPcap for Windows 10 (NDIS 6.x driver model): SoftEtherVPN/Win10Pcap, SoftEther VPN Project, 31 Aralık 2019, 6 Nisan 2023 tarihinde kaynağından arşivlendi, erişim tarihi: 9 Ocak 2020 
  20. ^ Bevens, Bridget (31 Temmuz 2017). "Drill 1.11 Released". 5 Nisan 2023 tarihinde kaynağından arşivlendi. Erişim tarihi: 12 Ekim 2023. 
  21. ^ GitHub'da Pcap
  22. ^ "What Can Read or Save a PCAP?". What is a PCAP file?. Endace. 6 Nisan 2023 tarihinde kaynağından arşivlendi. Erişim tarihi: 12 Ekim 2023. 

Dış bağlantılar değiştir