Skip to content

PacketCaptureProgram using C Standard Library on Linux

Notifications You must be signed in to change notification settings

Heejeong01110/PacketCaptureProgram

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PacketCaptureProgram

리눅스 기반 패킷캡쳐 프로그램

PacketCaptureProgram using C Standard Library on Linux

1. 프로그램 설계도


image

2. 구현 순서도


image

3. 원시 데이터 가공


image

위 그림과 같은 raw 데이터 중 각 패킷 별로 핵심이 되는 정보를 저장함

image

4. 자료구조 생성


image

추출한 핵심 정보를 생성한 자료구조에 저장

image

4. 실행 방법


  1. sudo ./packetcapture

  2. 캡쳐시작 (y/n) : y

  3. 웹페이지 방문 (http://www.kpu.ac.kr/index.do?sso=ok)

  4. 별도의 다른 터미널에서 다음 명령어 수행

    • ping google.com
    • nslookup kpu.ac.kr
  5. ctrl + c 입력 - 패킷 수집 종료

  6. 패킷 검색

5. 실행 화면


시작 화면

image

Y : 패킷 캡쳐 시작 N : 프로그램 종료

캡쳐 시작 화면

image

ctrl + c 입력 전까지 모든 패킷을 수집

패킷 캡쳐 내역 저장

  • origin.txt

image

  • summary.txt

image

캡쳐한 패킷을 터미널에서 출력함과 동시에 파일에 저장한다. orign.txt : 인덱스번호, 패킷의 크기, 원시코드 summary.txt : 패킷 요약 저장

패킷 캡쳐 종료

image

시그널핸들러를 이용해 ctrl+c 입력시 검색으로 넘어가도록 구현

image

일반 검색

image

  • 인덱스 검색

image

  • 프로토콜, IP번호, PORT 번호 검색

image

-1을 입력하지 않은 정보를 바탕으로 검색

특수 검색

image

  • HTTP 특수 검색
  • 3단계 핸드쉐이크

image

  • 요청메시지, 응답메시지

image

  • 4단계 핸드쉐이크

image

  • ICMP 특수 검색

image

  • DNS 특수 검색

image

About

PacketCaptureProgram using C Standard Library on Linux

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 100.0%