Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
external_tcpdump_AOSP10_r33_CVE-2019-15166 — 네트워크 모니터링 및 데이터 수집을 위한 명령줄 패킷 분석기로, 트러블슈팅, 분석 및 보안 감사를 위해 네트워크 트래픽을 캡처하고 표시합니다. | Kitploit
도구/GitHubGitHub/satheesh575555/external_tcpdump_aosp10_r33_cve-2019-15166
Packet Sniffing & AnalysisNetwork MappingVulnerability AnalysisForensicsNetwork SecurityDNS Analysis
GitHubsatheesh575555/external_tcpdump_aosp10_r33_cve-2019-15166

external_tcpdump_AOSP10_r33_CVE-2019-15166

네트워크 모니터링 및 데이터 수집을 위한 명령줄 패킷 분석기로, 트러블슈팅, 분석 및 보안 감사를 위해 네트워크 트래픽을 캡처하고 표시합니다.

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
저장소 보기
64년 전아직 검토되지 않음
공유

tcpdump

Build
Status

보안 문제를 보고하려면 [email protected]로 이메일을 보내주세요.

버그 및 기타 문제 보고, 패치 기여, 기능 요청, 일반적인 피드백 제공 등은 tcpdump 소스 트리 루트의 CONTRIBUTING 파일을 참조하세요.

TCPDUMP 4.x.y 현재 "The Tcpdump Group"에서 유지 관리 참조: www.tcpdump.org

익명 Git은 다음을 통해 사용 가능:

root@kitploit:~
git clone git://bpf.tcpdump.org/tcpdump

이전에는 Lawrence Berkeley National Laboratory Network Research Group [email protected]
ftp://ftp.ee.lbl.gov/old/tcpdump.tar.Z (3.4)

이 디렉토리에는 네트워크 모니터링 및 데이터 수집 도구인 tcpdump의 소스 코드가 포함되어 있습니다. 이 소프트웨어는 원래 Lawrence Berkeley National Laboratory의 Network Research Group에서 개발되었습니다. 원본 배포판은 ftp.ee.lbl.gov의 tcpdump.tar.Z에서 익명 ftp를 통해 사용할 수 있습니다. 최신 개발은 tcpdump.org, http://www.tcpdump.org/ 에서 이루어집니다.

Tcpdump는 사용자 수준 패킷 캡처를 위한 시스템 독립적 인터페이스인 libpcap을 사용합니다. tcpdump를 빌드하기 전에 먼저 libpcap을 가져와서 빌드해야 합니다. libpcap은 원래 LBL에서 출발했으며 현재 tcpdump.org에서 유지 관리하고 있습니다. 자세한 내용은 http://www.tcpdump.org/ 를 참조하세요.

libpcap이 빌드되면 (../libpcap에 설치하거나 해당 위치에 있는지 확인), INSTALL.txt 파일의 절차에 따라 tcpdump를 빌드할 수 있습니다.

이 프로그램은 SMI의 "etherfind"를 기반으로 느슨하게 설계되었지만 etherfind 코드는 남아 있지 않습니다. 원래 Van Jacobson이 TCP 및 인터넷 게이트웨이 성능을 조사하고 개선하기 위한 지속적인 연구 프로젝트의 일환으로 작성했습니다. 원래 Sun의 etherfind에서 가져온 프로그램 부분은 나중에 LBL의 Steven McCanne이 다시 작성했습니다. tcpdump에 독점 코드의 흔적이 없도록 보장하기 위해 Steve는 매뉴얼 항목에 주어진 사양을 바탕으로 tcpdump 또는 etherfind의 소스에 접근하지 않고 이 부분을 작성했습니다.

지난 몇 년 동안 tcpdump는 인터넷 커뮤니티의 훌륭한 기여로 꾸준히 개선되었습니다 (CHANGES 파일을 살펴보세요). 모든 입력에 감사드립니다.

Richard Stevens는 그의 저서 *"TCP/IP Illustrated, Volume 1"*에서 인터넷 프로토콜에 대한 훌륭한 설명을 제공합니다. tcpdump와 그 출력을 해석하는 방법에 대해 더 배우고 싶다면 이 책을 참조하세요.

tcpdump 추적 파일을 보고 분석하기 위한 몇 가지 도구는 Internet Traffic Archive에서 사용할 수 있습니다:

  • http://www.sigcomm.org/ITA/

tcpdump 사용자에게 유용할 수 있는 또 다른 도구는 tcpslice입니다:

  • https://github.com/the-tcpdump-group/tcpslice

이 프로그램은 tcpdump 바이너리 추적 파일의 일부를 추출하는 데 사용할 수 있습니다. 자세한 내용과 문서는 위 배포판을 참조하세요.

현재 버전은 www.tcpdump.org에서 찾을 수 있습니다.

  • TCPdump 팀

원본 텍스트: Steve McCanne, Craig Leres, Van Jacobson


root@kitploit:~
이 디렉토리에는 특정 네트워크 문제를 추적할 때 tcpdump 데이터를 줄이는 방법의 예시로 사용되는 몇 가지 짧은 awk 프로그램도 포함되어 있습니다:

send-ack.awk
	ftp(또는 다른 단방향 TCP 전송)에 대한 tcpdump 추적을 단순화합니다. 한 호스트는 송신만 하고 다른 호스트는 ack만 보낸다고 가정하므로 모든 주소 정보는 생략하고 패킷이 "send"인지 "ack"인지만 기록합니다.

	원본 추적의 각 줄에 대해 한 줄의 출력이 생성됩니다.
	필드 1은 대화 시작을 기준으로 한 십진수 초 단위의 패킷 시간입니다. 필드 2는 이전 패킷과의 델타 시간입니다. 필드 3은 패킷 유형/방향입니다.
	"Send"는 송신자에서 수신자로 가는 데이터를 의미하고, "ack"는 수신자에서 송신자로 가는 ack를 의미합니다. 앞에 "*"가 있으면 데이터가 재전송임을 나타냅니다.
	앞에 "-"가 있으면 시퀀스 공간에 구멍(즉, 누락된 패킷)이 있음을 나타내고, "#"는 비정상적인 크기(최대 세그먼트 크기가 아님)의 패킷을 의미합니다. 필드 4에는 패킷 플래그가 있습니다(원시 추적과 동일한 형식). 필드 5는 시퀀스 번호입니다(송신자의 경우 시작 시퀀스 번호, ack의 경우 다음 예상 시퀀스 번호). ack 다음의 괄호 안 숫자는 패킷의 첫 번째 송신부터 ack까지의 델타 시간입니다. send 다음의 괄호 안 숫자는 패킷의 첫 번째 송신부터 현재 송신까지의 델타 시간입니다(중복 패킷에만 해당). 중복 send 또는 ack는 지금까지의 중복 횟수를 보여주는 대괄호 안의 숫자가 있습니다.

	다음은 ftp 시작 부분 근처의 짧은 예시입니다:
		3.00    0.20   send . 512
		3.20    0.20    ack . 1024  (0.20)
		3.20    0.00   send P 1024
		3.40    0.20    ack . 1536  (0.20)
		3.80    0.40 * send . 0  (3.80) [2]
		3.82    0.02 *  ack . 1536  (0.62) [2]
	대화 시작 후 3초 후에 바이트 512~1023이 전송되었습니다. 200ms 후에 ack되었습니다. 곧이어 바이트 1024-1535가 전송되었고 다시 200ms 후에 ack되었습니다. 그런 다음 명백한 이유 없이 0-511이 초기 전송 후 3.8초 후에 재전송되었습니다(이 ftp의 왕복 시간은 1초 +-500ms였습니다). 수신자는 1536을 기대하고 있으므로 0이 도착하면 1536이 다시 ack됩니다.

packetdat.awk
	ftp(또는 유사한 단방향 TCP 전송)에 대한 청크 요약 데이터를 계산합니다. ["청크"는 시퀀스 공간의 청크, 즉 패킷 시퀀스 번호를 최대 세그먼트 크기로 나눈 것을 나타냅니다.]

	청크 수, 그 많은 청크를 보내는 데 걸린 패킷 수(손실되거나 중복된 패킷이 없으면 패킷 수는 청크 수와 같아야 함), ack 수를 보여주는 요약 줄이 출력됩니다.

	요약 줄 다음에는 청크당 한 줄의 정보가 있습니다. 줄에는 8개의 필드가 포함됩니다:
	   1 - 청크 번호
	   2 - 이 청크의 시작 시퀀스 번호
	   3 - 첫 번째 전송 시간
	   4 - 마지막 전송 시간
	   5 - 첫 번째 ack 시간
	   6 - 마지막 ack 시간
	   7 - 청크가 전송된 횟수
	   8 - 청크가 ack된 횟수
	(모든 시간은 대화 시작을 기준으로 한 십진수 초 단위입니다.)

	예를 들어, ftp 추적의 첫 번째 부분 출력은 다음과 같습니다:

	# 134 chunks.  536 packets sent.  508 acks.
	1       1       0.00    5.80    0.20    0.20    4       1
	2       513     0.28    6.20    0.40    0.40    4       1
	3       1025    1.16    6.32    1.20    1.20    4       1
	4       1561    1.86    15.00   2.00    2.00    6       1
	5       2049    2.16    15.44   2.20    2.20    5       1
	6       2585    2.64    16.44   2.80    2.80    5       1
	7       3073    3.00    16.66   3.20    3.20    4       1
	8       3609    3.20    17.24   3.40    5.82    4       11
	9       4097    6.02    6.58    6.20    6.80    2       5

	이는 134개의 청크가 전송되었으며(평균 패킷 크기가 512바이트이므로 약 70KB), 데이터를 전송하는 데 536개의 패킷이 필요했음을 나타냅니다(즉, 평균적으로 각 청크가 4번 전송되었습니다). 예를 들어 청크 4를 보면 1561에서 2048까지의 512바이트 시퀀스 공간을 나타냄을 알 수 있습니다. 대화 시작 후 1.86초에 처음 전송되었습니다. 마지막 전송은 대화 시작 후 15초였으며 총 6번 전송되었습니다(즉, 평균 2초마다 재전송되었습니다). 한 번 ack되었으며, 처음 도착한 후 140ms 후에 ack되었습니다.

stime.awk
atime.awk
	각각 send 또는 ack당 한 줄씩 출력하며, 형식은 다음과 같습니다:
		<time> <seq. number>
	여기서 <time>은 전송 시작 이후의 시간(초)이고 <seq. number>는 전송되거나 ack된 시퀀스 번호입니다. 일반적으로 이 데이터를 플로팅하여 의심스러운 패턴을 찾습니다.


제가 조사하던 문제는 일반적인 DARPA 인터넷 조건에서 중간 지연 네트워크 경로(1-6초 왕복 시간)의 대량 데이터 전송 처리량이었습니다. 대용량 파일의 ftp 전송 추적을 원시 데이터 소스로 사용했습니다. 방법은 다음과 같습니다:

  - 로컬 호스트(tcpdump를 실행하는 Sun이 아닌)에서 원격 ftp에 연결합니다.

  - 모니터 Sun에서 추적을 시작합니다. 예를 들어:
      tcpdump host local-host and remote-host and port ftp-data >tracefile

  - 로컬에서 대용량 파일(~500KB)을 get 또는 put합니다. 가능하면 널 디바이스로 수행합니다(디스크 쓰기를 기다리는 동안 수신 창을 닫는 등의 영향을 최소화하기 위해).

  - 전송이 완료되면 tcpdump를 중지합니다. awk를 사용하여 두 개의 요약 데이터 파일을 만듭니다(maxsize는 최대 패킷 크기, tracedata는 tcpdump 추적 데이터 파일):
      awk -f send-ack.awk packetsize=avgsize tracedata >sa
      awk -f packetdat.awk packetsize=avgsize tracedata >pd

  - 요약 데이터 파일이 출력되는 동안 전송 동작을 살펴봅니다:
      awk -f stime.awk tracedata | xgraph
    (배우는 것의 90%는 이 단계에서 발생하는 것 같습니다).

  - 위의 모든 단계를 여러 번 수행합니다. 양방향으로, 하루 중 다른 시간에, 상대방의 다른 프로토콜 구현에서 수행합니다.

  - Unix 데이터 분석 패키지(제 경우 S와 Gary Perlman의 Unix|Stat) 중 하나를 사용하여 몇 달 동안 데이터를 분석합니다.

  - 로컬 프로토콜 구현에서 무언가를 변경하고 위 단계를 다시 수행합니다.

  - 일주일에 한 번, 연구 자금 제공자에게 멋진 것을 발견하고 있으며 연구 보고서를 "정말 곧" 작성할 것이라고 말합니다.
도구 다운로드