pcap
pcap![]() |
개발자 | Tcpdump 팀 |
---|---|
안정된 릴리스 | 1.10.1 / 2021년6월 9일, [1] 전( |
저장소 | GitHub의 libpcap |
기입처 | C |
운영 체제 | Linux, Solaris, FreeBSD, NetBSD, OpenBSD, macOS, 기타 Unix 계열 |
유형 | 패킷 캡처용 라이브러리 |
면허증. | BSD[2] |
웹 사이트 | www |
개발자 | 리버베드 테크놀로지 |
---|---|
최종 릴리즈 | 4.1.3 / 2013년 3월 [3] , 전( |
운영 체제 | 창문들 |
유형 | 패킷 캡처용 라이브러리 |
면허증. | 프리웨어 |
웹 사이트 | www |
개발자 | Nmap 프로젝트 |
---|---|
안정된 릴리스 | 1.60 / 2021년 12월 [4] , 전( |
운영 체제 | 창문들 |
유형 | 패킷 캡처용 라이브러리 |
웹 사이트 | npcap |
컴퓨터 네트워크 관리 분야에서 pcap은 네트워크 트래픽을 캡처하기 위한 API(Application Programming Interface)입니다.이름은 packet capture의 줄임말이지만 API의 고유 이름이 아닙니다.Unix 유사 시스템은 libpcap 라이브러리에 pcap을 구현합니다.Windows의 경우 지원 또는 개발이 중지된 WinPcap이라는 libpcap 포트와 Windows 7 이후 지원되고 있는Npcap이라는 포트가 있습니다.
모니터링 소프트웨어는 libpcap, WinPcap 또는 Npcap을 사용하여 컴퓨터 네트워크를 통과하는 네트워크 패킷을 캡처하고 새로운 버전에서는 링크층의 네트워크상에서 패킷을 전송하며 libpcap, WinPcap 또는 Npcap과 함께 사용할 수 있는 네트워크인터페이스 목록을 가져옵니다.
pcap API는 C로 기술되어 있기 때문에 Java 등의 다른 언어도 사용할 수 있습니다.NET 언어 및 스크립트 언어에서는 일반적으로 래퍼를 사용합니다.libpcap 또는 WinPcap 자체에서는 이러한 래퍼는 제공되지 않습니다.C++ 프로그램은 C API에 직접 링크하거나 객체 지향 래퍼를 사용할 수 있습니다.
특징들
libpcap, WinPcap 및 Npcap은 프로토콜 분석기(패킷 스니퍼), 네트워크 모니터, 네트워크 침입 탐지 시스템, 트래픽 생성기 및 네트워크 테스터를 포함한 많은 오픈 소스 및 상용 네트워크 도구의 패킷 캡처 및 필터링 엔진을 제공합니다.
libpcap, WinPcap 및 Npcap은 캡처된 패킷을 파일에 저장하고 저장된 패킷을 포함하는 파일을 읽을 수도 있습니다.어플리케이션은 libpcap, WinPcap 또는 Npcap을 사용하여 네트워크트래픽을 캡처하여 분석하거나 동일한 분석 코드를 사용하여 저장된 캡처를 읽고 분석할 수 있습니다.libpcap, WinPcap 및 Npcap이 사용하는 형식으로 저장된 캡처 파일은 tcpdump, Wireshark, CA NetMaster 또는 Microsoft Network Monitor 3.x와 같이 해당 형식을 이해하는 응용 프로그램에서 읽을 수 있습니다.
libpcap, WinPcap 및 Npcap에서 작성 및 읽은 파일 형식의 MIME 유형은 application/vnd.tcpdump.pcap입니다.일반적인 파일 확장자는 .pcap이지만 .cap과 .dmp도 일반적으로 사용됩니다.[5]
역사
libpcap은 원래 로렌스 버클리 연구소의 네트워크 연구 그룹의 tcpdump 개발자들에 의해 개발되었다.tcpdump의 낮은 수준의 패킷 캡처, 캡처 파일 읽기 및 캡처 파일 쓰기 코드를 추출하여 라이브러리로 만들고 tcpdump를 [6]링크했습니다.현재는 tcpdump를 [7]개발하는 것과 동일한 tcpdump.org 그룹에 의해 개발되었습니다.
Windows용 pcap 라이브러리
libpcap은 원래 Unix와 유사한 운영체제용으로 개발되었지만 WinPcap이라고 불리는 성공적인 Windows용 포트가 만들어졌습니다.2013년 [8]이후로 유지보수가 되지 않았으며, 새로운 기능과 새로운 버전의 Windows를 지원하는 여러 경쟁 포크가 출시되었습니다.
WinPcap
WinPcap은 [9]다음과 같이 구성됩니다.
- Windows NT 패밀리(Windows NT 4.0, 2000, XP, Server 2003, Vista, 7, 8, 10)용 x86 및 x86-64 드라이버.네트워크 드라이버 인터페이스 사양(NDIS) 5.x를 사용하여 네트워크 어댑터에서 직접 패킷을 읽습니다.
- 해당 드라이버와 통신하기 위해 열거된 운영체제용 하위 라이브러리 구현
- 낮은 수준의 라이브러리 구현에서 제공되는 API를 사용하는 libpcap 포트입니다.
Politecnico di Torino의 프로그래머가 원래의 코드를 작성했습니다.2008년 현재, WinPcap 개발자의 일부가 설립한 회사, CACE Technologies가 이 제품을 개발 및 유지보수하고 있습니다.CACE는 2010년 [10]10월 21일에 Riverbed Technology에 인수되었습니다.
WinPcap은 오래된 NDIS 5.x API를 사용하기 때문에 Windows 10의 일부 빌드에서는 동작하지 않습니다.Windows 10은 새로운 NDIS 6.x API를 위해 이러한 API를 폐지하거나 삭제했습니다.또 이더넷헤더에 802.1Q VLAN 태그를 캡처할 수 없는 등의 제한도 있습니다.
WinPcap 프로젝트는 개발을 중지하고 WinPcap과 WinDump는 더 이상 유지보수가 되지 않습니다.마지막 공식 WinPcap 릴리스는 2013년 [11]3월 8일에 출시된 4.1.3입니다.
Npcap
Npcap은 Windows용 Nmap 프로젝트의 패킷 [12]스니핑 라이브러리입니다.WinPcap을 기반으로 하지만 NDIS 버전 6에서 향상된 Windows 네트워킹 기능을 활용하도록 작성되었습니다.그 작성자는 WinPcap NDIS 5 Protocol Driver를 Light-Weight Filter(LWF) 드라이버로 고쳐 썼습니다.이 변경은 [13]처리 오버헤드를 줄이는 것입니다.Npcap 유지보수 릴리스에서는 포함된 libpcap 라이브러리의 버전을 최신 버전으로 업데이트하여 소프트웨어 작성자는 Linux 소프트웨어가 이미 [14]지원했던 새로운 API 기능을 사용할 수 있습니다.WinPcap을 사용한 대부분의 소프트웨어는 최소한의 [15]변경으로 Npcap을 사용하도록 쉽게 포팅할 수 있습니다.
Npcap은 WinPcap에서는 이용할 수 없는 몇 가지 혁신을 도입했습니다.
- 관리자만 패킷을 스니핑할 수 있도록 [16]Npcap을 제한할 수 있습니다.
- Npcap은 Windows 필터링 [17]플랫폼을 사용하여 루프백패킷(같은 머신상의 서비스간의 송신)을 스니핑 및 주입할 수 있습니다.
- Npcap은 802.11 WiFi 프레임을 일반적인 네트워크 [18]어댑터로 캡처할 수 있습니다.
Win10Pcap
Win10Pcap 구현도 NDIS 6 드라이버 모델을 기반으로 하며 Windows [19]10에서 안정적으로 작동합니다.
그러나 2020년 현재 이 프로젝트는 2016년 [20]이후 중단되었다.
libpcap을 사용하는 프로그램
- Apache Drill은 대규모 데이터셋의 대화형 분석을 위한 오픈 소스 SQL 엔진입니다.
- BSD, Linux 및 Windows용 libpcap 기반의 이더넷패킷 생성기 및 에디터인 Bit-Twist.
- Microsoft Windows용 패스워드 회복 도구인 Cain and Abel
- EtherApe: 네트워크 트래픽 및 대역폭 사용량을 실시간으로 모니터링하기 위한 그래픽 도구입니다.
- Firefox 웹 브라우저 확장 기능인 Firesheep: 패킷을 캡처하여 세션 하이잭을 수행합니다.
- iftop: 대역폭 사용량을 표시하는 도구(네트워크 트래픽의 top 등)
- Kismet, 802.11 무선 LAN용
- L0phtCrack 패스워드 감사 및 회복 어플리케이션.
- McAfee ePolicy Orchestrator, 로그 시스템 탐지 기능
- ngrep(일명 "network grep")은 패킷 내의 문자열을 분리하고 패킷 데이터를 인간 친화적인 출력으로 표시합니다.
- Nmap, 포트 스캔 및 핑거프린트 네트워크 유틸리티
- Pirni는 탈옥한 iOS 기기를 위한 네트워크 보안 도구입니다.
- Philippe Biondi가 Python으로 작성한 컴퓨터 네트워크용 패킷 조작 도구 Scapy.
- 네트워크 침입 탐지 시스템인 Snort.
- 네트워크 침입 방지 및 분석 플랫폼인 Suricata.
- Symantec Data Loss Prevention: 기밀 데이터의 감시 및 식별, 사용 상황 및 위치 추적에 사용됩니다.데이터 손실 정책을 사용하면 중요한 데이터를 네트워크에서 차단하거나 다른 장치에 복사할 수 있습니다.
- 자세한 분석을 위해 패킷을 캡처 및 덤프하기 위한 도구인 tcpdump와 Windows tcpdump 포트인 WinDump가 있습니다.
- Bro IDS 및 네트워크 모니터링 플랫폼.
- URL 스누퍼에서 오디오 및 비디오파일을 녹화할 수 있도록 URL을 찾습니다.
- WhatPulse는 통계(입력, 네트워크, 가동 시간) 측정 애플리케이션입니다.
- Wireshark(이전의 Ethereal)는 그래픽 패킷 캡처 및 프로토콜 분석 도구입니다.
- 다양한 랜 콘솔 게임을 온라인으로 즐길 수 있는 XLink Kai 소프트웨어
- 네트워크 포렌식 분석 도구(NFAT)인 Xplico.
libpcap용 래퍼 라이브러리
- C++: Libtins, Libcraftter, PcapPlus Plus
- Perl: Net::PCAP
- Python: python-libpcap, Pcatapy, WinPcatapy
- 루비: Packet Fu
- 녹: pcap
- Tcl: tclpcap, tcap, pktsrc
- Java: jpcap, jNetPcap, Jpcap, Pcap4j, Jxnet
- .NET: WinPcapNET, SharpPcap, Pcap.넷
- Haskell: pcap
- OCaml: mlpcap
- 치킨 스킴: pcap
- 일반적인 리스프: PLOKAMI
- 라켓: SPEACAP
- Go: Andreas Krennmair의 pcap, Miek Gieben의 pcap 포크, gopacket 패키지의 일부로 개발된 pcap
- Erlang: epcap
- Node.js: node_pcap
pcap 파일을 읽는 비 pcap 코드
레퍼런스
- ^ "tcpdump and libpcap latest release". tcpdump.org. Retrieved 2021-09-16.
- ^ "tcpdump and libpcap license". tcpdump.org. Retrieved 2020-05-02.
- ^ "WinPcap Changelog".
- ^ "npcap/CHANGELOG.md".
- ^ "IANA record of application for MIME type application/vnd.tcpdump.pcap".
- ^ McCanne, Steve. "libpcap: An Architecture and Optimization Methodology for Packet Capture" (PDF). Retrieved December 27, 2013.
- ^ "TCPDUMP/LIBPCAP public repository". Retrieved December 27, 2013.
- ^ "WinPcap News". Retrieved November 6, 2017.
- ^ "WinPcap internals". Retrieved December 27, 2013.
- ^ "Riverbed Expands Further Into The Application-Aware Network Performance Management Market with the Acquisition of CACE Technologies" (Press release). Riverbed Technology. 2010-10-21. Archived from the original on 2013-03-08. Retrieved 2010-10-21.
- ^ "News". WinPcap.
- ^ "Npcap".
- ^ "Filter drivers".
- ^ "Release Npcap 1.20".
- ^ "Npcap User's Guide - Updating WinPcap software to Npcap".
- ^ "Npcap User's Guide".
- ^ "Npcap User's Guide - For software that uses Npcap loopback feature".
- ^ "Npcap User's Guide - For software that uses Npcap raw 802.11 feature".
- ^ "Win10Pcap: WinPcap for Windows 10".
- ^ Win10Pcap: WinPcap for Windows 10 (NDIS 6.x driver model): SoftEtherVPN/Win10Pcap, SoftEther VPN Project, 2019-12-31, retrieved 2020-01-09
외부 링크
- 공식 웹사이트, libpcap, tcpdump
- 공식 웹사이트, Npcap
- 공식 웹사이트, WinPcap, WinDump
- 공개된 PCAP 파일 목록