TCPDUMP là gì? Tìm hiểu về các thủ thuật sử dụng TCPDUMP

Related Articles

TCPDUMP là công cụ rất hữu ích đối với những ai sử dụng hệ điều hành Unix/Linux, bạn có thể sử dụng công cụ này để kiểm tra lưu lượng mạng và lưu lại những gói tin bắt được. Vậy TCPDUMP là gì? Để hiểu rõ hơn về thuật ngữ này, bạn hãy cùng Tino Group tìm hiểu qua bài viết dưới đây nhé!

TCPDUMP là gì?

Định nghĩa TCPDUMP

TCPDUMP thực ra là công cụ được tăng trưởng nhằm mục đích mục tiêu nhận diện và nghiên cứu và phân tích những gói dữ liệu mạng theo dòng lệnh. TCPDUMP được cho phép người mua chặn và hiển thị những gói tin được truyền đi hoặc được nhận trên một mạng có sự tham gia của máy tính .

Hiểu đơn thuần, TCPDUMP là ứng dụng bắt gói tin trong mạng thao tác trên hầu hết những phiên bản hệ quản lý và điều hành Unix / Linux. TCPDUMP được cho phép bắt và lưu lại những gói tin bắt được, từ đó tất cả chúng ta hoàn toàn có thể sử dụng để nghiên cứu và phân tích .

TCPDUMP được xem là trụ cột trong việc tháo gỡ và kiểm tra yếu tố liên kết mạng và bảo mật thông tin .

tcpdump-la-gi

TCPDUMP tồn tại dưới hình thức nào?

TCPDUMP xuất ra màn hình hiển thị nội dung những gói tin ( chạy trên card mạng mà sever đang lắng nghe ) tương thích với biểu thức logic tinh lọc mà người mua nhập vào. Với từng loại tùy chọn khác nhau người mua hoàn toàn có thể xuất những miêu tả về gói tin này ra một file “ pcap ” để nghiên cứu và phân tích sau, và hoàn toàn có thể đọc nội dung của file “ pcap ” đó với option – r của lệnh TCPDUMP, hoặc sử dụng những ứng dụng khác như thể : Wireshark .

Trong trường hợp không có tùy chọn, lệnh TCPDUMP sẽ liên tục chạy cho đến khi nào nó nhận được một tín hiệu ngắt từ phía người mua. Sau khi kết thúc việc bắt những gói tin, TCPDUMP sẽ báo cáo giải trình những cột sau :

  • Packet capture: số lượng gói tin bắt được và xử lý.
  • Packet received by filter: số lượng gói tin được nhận bởi bộ lọc.
  • Packet dropped by kernel: số lượng packet đã bị dropped bởi cơ chế bắt gói tin của hệ điều hành.

Những lợi ích khi sử dụng TCPDUMP

Như định nghĩa ở trên, TCPDUMP giúp bạn phân gói những tài liệu mang theo dòng lệnh. Cụ thể TCPDUMP giúp bạn :

  • Nhìn thấy được các bản tin DUMP trên terminal
  • Bắt các bản tin và lưu vào định dạng PCAP (có thể đọc được bởi Wireshark)
  • Tạo được các bộ lọc Filter để bắt các bản tin cần thiết, ví dụ: http, ftp, ssh, …
  • Có thể nhìn được trực tiếp các bản tin điều khiển hệ thống Linux sử dụng wireshark

TCPDUMP là một công cụ vô cùng hữu dụng so với năng lực capturing packets khá can đảm và mạnh mẽ. Nó hoạt động giải trí trên network layer và hoàn toàn có thể capture tổng thể những packets ra vào máy tính. Ngoài ra, hoàn toàn có thể sử dụng TCPDUMP để capture và save những packets tới một file nào đó và nghiên cứu và phân tích sau .

tcpdump-la-gi

Định dạng chung của một dòng giao thức TCPDUMP

Định dạng chung của một dòng giao thức tcmpdump cụ thể là: time-stamp src > dst: flags data-seqno ack window urgent options

Time-stamp: hiển thị thời gian gói tin được capture.

Src và dst: hiển thị địa IP của người gởi và người nhận.

Cờ (Flag) bao gồm các giá trị sau:

  • S(SYN): Được sử dụng trong quá trình kết nối của giao thức TCP.
  • .(ACK): Được sử dụng để thông báo cho bên gửi biết là gói tin đã nhận được dữ liệu thành công.
  • F(FIN): Được sử dụng để đóng kết nối TCP.
  • P(PUSH): Thường được đặt ở cuối để đánh dấu việc truyền dữ liệu.
  • R(RST): Được sử dụng khi muốn thiết lập lại đường truyền.

Data-sqeno: Số sequence number của gói dữ liệu hiện tại.

ACK: Mô tả số sequence number tiếp theo của gói tin do bên gởi truyền (số sequence number mong muốn nhận được).

Window: Vùng nhớ đệm có sẵn theo hướng khác trên kết nối này.

Urgent: Cho biết có dữ liệu khẩn cấp trong gói tin

tcpdump-la-gi

Định dạng đầu ra TCPDUMP

Định dạng bản ghi được sử dụng để ghi những gói mạng vào tệp đã trở thành một tiêu chuẩn được nhiều trình nhìn nhận gói tin và nghiên cứu và phân tích lưu lượng mới hơn vận dụng .

Tiêu chuẩn này khá phức tạp và được kiểm soát và điều chỉnh cho từng giao thức. Định dạng được gọi là pcap, là tên của quy trình bắt gói được TCPDUMP sử dụng. Các tệp ở định dạng này thường có phần lan rộng ra. pcap .

Các thủ thuật sử dụng TCPDUMP 

Một số tùy chọn thông dụng trong lệnh TCPDUMP

Lệnh TCPDUMP được theo sau bởi các tùy chọn, chúng được biểu thị bằng một dấu gạch nối theo sau là một chữ cái. Dưới đây là danh sách các tùy chọn:

  • -i: Sử dụng tùy chọn này khi khách hàng muốn chụp các gói tin trên một interface được chỉ định.
  • -D: Khi sử dụng tùy chọn này, TCPDUMP sẽ liệt kê ra tất cả các interface đang hiện hữu trên máy tính mà nó có thể capture được.
  • -c N : khi sử dụng tùy chọn này, TCPDUMP sẽ dừng hoạt động sau khi capture N gói tin.
  • -n: Khi sử dụng tùy chọn này, TCPDUMP sẽ không phân giải từ địa chỉ IP sang hostname.
  • -nn: Tương tự như tùy chọn –n, tuy nhiên TCPDUMP sẽ không phân giải cả portname.
  • -v:Tăng số lượng thông tin về gói tin mà bạn có thể nhận được, thậm chí có thể tăng thêm với option –vv hoặc –vvv.
  • -s: Định nghĩa snaplength (kích thước) gói tin sẽ lưu lại, sử dụng 0 để mặc định.
  • -q: Khi sử dụng tùy chọn này, TCPDUMP sẽ hiển thị ít thông tin hơn.
  • -w filename: Khi sử dụng tùy chọn này, TCPDUMP sẽ capture các packet và lưu xuống file chỉ định.
  • -r filename: Sử dụng kèm với tùy chọn –w, dùng để đọc nội dung file đã lưu từ trước.
  • -x: Hiển thị dữ liệu của gói tin capture dưới dạng mã Hex.
  • -xx: Tương tự tùy chọn –x tuy nhiên sẽ chuyển đổi cả ethernet header.
  • -X: Hiển thị dữ liệu của gói tin capture dưới dạng mã Hex và ASCII
  • -XX: Tương tự như tùy chọn –X  tuy nhiên sẽ chuyển đổi luôn cả ethernet header.
  • -A: Hiển thị các packet được capture dưới dạng mã ACSII.
  • -S: Khi TCPDUMP capture packet, thì nó sẽ chuyển các số sequence number, ACK thành các relative sequense number, relative ACK. Nếu sử dụng option –Snày thì nó sẽ không chuyển mà sẽ để mặc định.
  • -F  filename: Dùng để filter các packet với các luật đã được định trước trong tập tin filename.
  • -e: Khi sử dụng tùy chọn này, thay thì hiển thị địa chỉ IP của người gửi và người nhận, TCPDUMP sẽ thay thế các địa chỉ này bằng địa chỉ MAC.
  • -t: Khi sử dụng tùy chọn này, TCPDUMP sẽ bỏ qua thời gian bắt được gói tin khi hiển thị cho khách hàng.
  • -tt: Khi sử dụng tùy chọn này, thời gian hiển thị trên mỗi dòng lệnh sẽ không được format theo dạng chuẩn.
  • -ttt: Khi sử dụng tùy chọn này, thời gian hiển thị chính là thời gian chênh lệnh giữa thời gian TCPDUMP bắt được gói tin của gói tin và gói tin đến trước nó.
  • -tttt: Khi sử dụng tùy chọn này, sẽ hiển thị thêm ngày vào mỗi dòng lệnh.
  • -ttttt: Khi sử dụng tùy chọn này, thời gian hiển thị trên mỗi dòng chính là thời gian chênh lệch giữa thời gian TCPDUMP bắt được gói tin của gói tin hiện tại và gói tin đầu tiên.
  • -K: Với tùy chọn này, TCPDUMP sẽ bỏ qua việc checksum các gói tin.
  • -N: Khi sử dụng tùy chọn này, TCPDUMP sẽ không in các quality domain name ra màn hình.
  • -B size: Sử dụng tùy chọn này để cài đặt buffer_size.
  • -L: Hiển thị danh sách các datalink type mà interface hỗ trợ.
  • -y: Lựa chọn datalinktype khi bắt các gói tin.

tcpdump-la-gi

Những thủ thuật thường dùng với TCPDUMP

  • Hiển thị tất cả các interface trên máy tính mà TCPDUMP có thể lắng nghe được.

    # tcpdump -D
  • Lọc các gói tin trên card mạng eth0, có địa chỉ đích là 192.168.1.0 hoặc địa chỉ nguồn là 192.168.1.0

    # tcpdump –i eth0 host 192.168.1.0

    # tcpdump –i eth0 src 192.168.1.0 or host 192.168.1.0
  • Lọc các gói tin ARP chạy trên card mạng eth0, xuất phát từ dãy mạng 192.168.1.0/24

    # tcpdump –i eth0 arp src net 192.168.1.0/24
  • Lọc các gói tin ICMP chạy trên mạng eth0, đi đến máy đích có địa chỉ MAC là 00-23-14-43-E8-08. Khi xuất ra màn hình không cho phân giải tên miền, cũng như không sử dụng số relative sequence. Lưu output vào file test.cap. Khi đọc file đó lên: không hiển thị số sequence number, không phân giải hostname.

    # tcpdump –i eth0 –w test.cap ether dst host 00:23:14:42:E8:08

    # tcpdump –Snnr test.cap
  • Lọc gói tin ICMP request and reply: sử dụng option icmp[icmptype]

    # tcpdump icmp[icmptype] != icmp-echo and icmp[icmptype] != icmp-echoreply
  • Lọc một số cờ TCP bằng tcpdump: sử dụng option tcp[tcpflags] && tcp-syn!=0. (Giá trị của các cờ TCP lần lượt là U (32) – A (16) – P (8) – R (4) – S (2) – F (1)).
  • Lọc các gói tin TCP có cờ URG được bật:

    # tcpdump tcp[13] & 2 != 0 hay #tcpdump tcp[tcpflags] & tcp-urg != 0
  • Lọc các gói tin TCP có cờ ACK được bật:

    # tcpdump tcp[13] & 16 != 0 hay #tcpdump tcp[tcpflags] & tcp-ack != 0
  • Lọc các gói tin TCP có cờ PSH được bật:

    # tcpdump tcp[13] & 8 != 0 hay #tcpdump tcp[tcpflags] & tcp-push != 0
  • Lọc các gói tin TCP có cờ SYN/ACK được bật:

    # tcpdump tcp[13]=18

tcpdump-la-giMặc dù nhìn có vẻ như hơi phức tạp, nhưng nếu sử dụng thành thạo TCPDUMP, bạn sẽ thấy lệnh này rất tuyệt vời. Qua bài viết trên, kỳ vọng bạn sẽ nắm được những thông tin cơ bản về TCPDUMP và biết cách sử dụng lệnh này. Chúc những bạn thành công xuất sắc .

Những câu hỏi thường gặp về TCPDUMP

Làm sao để dừng lệnh TCPDUMP?

Bạn hãy sử dụng tổ hợp phím Ctrl + C để gửi tín hiệu ngắt và dừng lệnh. Sau khi bắt được các gói, TCPDUMP sẽ dừng lại. Khi không có giao diện nào được chỉ định, TCPDUMP sử dụng giao diện đầu tiên mà nó tìm thấy và kết xuất tất cả các gói đi qua giao diện đó.

TCPDUMP có miễn phí không?

TCPDUMP là ứng dụng mã nguồn mở và bất kể ai cũng hoàn toàn có thể góp phần để tăng trưởng. Phần mềm này được phân phối theo giấy phép BSD và trọn vẹn không lấy phí .

Hệ điều hành Windows có sử dụng được TCPDUM không?

Có một phiên bản TCPDUMP trên Windows được gọi là Windump và dựa vào Wincap để chụp gói tựa như như TCPDUMP cho Linux

WinPcap thuộc chiếm hữu của Riverbed Technology, công ty này cũng là nhà hỗ trợ vốn chính của Wireshark – một công cụ dò tìm gói tin nổi tiếng và được sử dụng thoáng đãng nhất trên quốc tế. Có một phiên bản không dây của WinPcap được gọi là AirPcap. Bạn hoàn toàn có thể tải xuống WinDump, WinPcap và AirPcap không tính tiền từ website WinPcap .

TCPDUMP có hỗ trợ cho an ninh mạng không?

TCPDUMP được xem là trụ cột trong việc tháo gỡ và kiểm tra yếu tố liên kết mạng và bảo mật thông tin. Vì vậy, đây là một bổ trợ quan trọng cho bất kể chuyên viên bảo mật an ninh mạng nào .

CÔNG TY CỔ PHẦN TẬP ĐOÀN TINO

  • Trụ sở chính: L17-11, Tầng 17, Tòa nhà Vincom Center, Số 72 Lê Thánh Tôn, Phường Bến Nghé, Quận 1, Thành phố Hồ Chí Minh

    Văn phòng đại diện: 42 Trần Phú, Phường 4, Quận 5, Thành phố Hồ Chí Minh
  • Điện thoại: 0364 333 333

    Tổng đài miễn phí: 1800 6734
  • Email: [email protected]
  • Website: www.tino.org

5/5 – ( 2 bầu chọn )

More on this topic

Comments

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Advertismentspot_img

Popular stories