Trình xem điểm cuối của bạn liệt kê một tiến trình VPN bên cạnh tên miền của một công ty quảng cáo, và cặp đôi đó bắt đầu một câu chuyện mà dữ liệu không thể chống đỡ. Tên là một phép tra ngược được vẽ đè lên một điểm cuối số, và nó thay đổi mỗi khi phép tra thay đổi. Những cột trụ được qua kiểm tra là các địa chỉ, trạng thái kết nối và PID sở hữu socket.

Không có gì trong bảng socket mô tả những gì đã đi qua bên trong một kết nối. Bất cứ thứ gì mang tên máy chủ đều đã được diễn giải thay bạn.

Một tên đã phân giải là bản dịch, không phải trường

Trình xem yêu cầu bộ phân giải biến một địa chỉ thành tên, giống như một truy vấn PTR hoạt động trong DNS. Câu trả lời có thể đến từ bộ nhớ đệm cục bộ, từ một mục trong tệp hosts, từ một thông báo phát hiện hàng xóm hoặc từ một nhà cung cấp đã trao địa chỉ cho người khác tuần trước, và công cụ không có cách nào phân biệt các nguồn đó. Hai máy cùng quan sát một kết nối có thể in ra những tên khác nhau cho cùng một địa chỉ đối tác, điều khó giải thích nếu bạn tin rằng tên đến từ dây dẫn. Hãy coi nhãn là tiện ích cho mắt người chứ không phải một tuyên bố về việc ai đã nhận các byte.

Tài liệu TCPView mô tả các cột điểm cuối, trạng thái và tiến trình và ghi lại việc tắt các tên đã phân giải, điều đáng làm trước khi bạn đọc bất kỳ ý nghĩa nào vào một tên miền. Tắt phân giải làm cho sự không chắc chắn trở nên nhìn thấy được thay vì tạo ra nó: bạn vẫn giữ một địa chỉ, và công việc quyết định nó nghĩa là gì chỉ đơn giản quay về với bạn.

Đọc các cột số theo thứ tự

Làm việc từ trái sang phải và dừng ở cột đầu tiên trả lời câu hỏi của bạn. Điểm cuối cục bộ cho biết tiến trình đã gắn vào đâu, điểm cuối từ xa cho biết có đối tác hay không, trạng thái cho biết liên kết còn sống hay không, và PID nối hàng với một tệp thực thi.

Ba quan sát dưới đây là những hình dạng minh họa chứ không phải đầu ra thu được từ bất kỳ máy nào ở đây. Chúng được nhóm theo điều mà mỗi cái có thể chống đỡ, vì đó là câu hỏi mà người ta thực sự đặt cho một hàng socket:

What the row showsWhat it rules outWhat it cannot show
An open listener with no peer addressAny remote party; nothing beyond this host has reached the portWhether the local service is well configured, or who is allowed to use it
An association in the open stateThat the entry is cosmetic; a peer address exists and was acceptedWhich application data crossed it, or whether that peer is trustworthy
An association whose counters moveThat the conversation is idle or already staleWhat was requested, what came back, or who started it

Một bộ lắng nghe mở mà các máy khác không thể chạm tới, gắn với địa chỉ vòng lặp, là cách nhiều ứng dụng khách VPN phơi bày kênh điều khiển của chính chúng. Một liên kết ký tự đại diện nghĩa là tiến trình đã chấp nhận kết nối trên mọi giao diện, và liệu điều đó có nguy hiểm hay không phụ thuộc vào tường lửa của máy chủ chứ không phải vào chính hàng đó. Chỉ một liên kết tồn tại và mang bộ đếm mới giống lời buộc tội mà người ta thường muốn đưa ra, và ngay cả hàng đó cũng dừng trước phần tải.

Xác minh quyền sở hữu trước khi gọi tên thủ phạm

Danh tính tiến trình là nơi phần lớn các lời buộc tội thực sự thất bại. PID được tái sử dụng, các trình cập nhật và trợ lý trình duyệt sinh ra những đứa con ngắn hạn, và một ứng dụng khách VPN có thể giao lưu lượng của mình cho một dịch vụ hệ thống có đặc quyền. Hãy so sánh đường dẫn của tệp thực thi và tiến trình cha thay vì tên hiển thị, vì tên hiển thị do người đã xây dựng tệp nhị phân chọn.

tcpvcon -n -a
Get-Process -Id 4188 | Select-Object Id, ProcessName, Path

Cách đọc tương tự tồn tại trên Linux, nơi thống kê socket có thể mang thông tin tiến trình khi bạn có đủ đặc quyền để nhìn thấy socket của người dùng khác. Yêu cầu các socket đã thiết lập được gắn với hoặc từ cổng 443 thu hẹp đầu ra vào những hàng quan trọng:

ss -tunp state established '( sport = :443 or dport = :443 )'

Ghi lại dấu thời gian cùng với hàng. Một PID đơn lẻ là một tham chiếu di động, vì khi bạn mở trình quản lý tiến trình, socket có thể đã thuộc về một kẻ kế nhiệm và đường dẫn bạn kiểm tra có thể không phải là đường dẫn đã giữ kết nối. Ghi lại cặp điểm cuối, trạng thái và PID như một quan sát duy nhất, và phát hiện sẽ sống sót qua một lần khởi động lại hoặc một ý kiến thứ hai.

Một cái tên còn đáng giá bao nhiêu

Tên máy chủ không phải là bằng chứng vô giá trị. Nó ghi lại rằng ai đó đã từng liên kết địa chỉ đó với cái tên đó tại một thời điểm. Mối liên kết đó đáng được chú ý khi địa chỉ thuộc về một nhà cung cấp phục vụ hàng nghìn khách hàng không liên quan. Đó là một khẳng định yếu hơn một đích đến, và đó là khẳng định duy nhất mà nhãn có thể chống đỡ.

Khi một cái tên có vẻ sai, hãy so sánh địa chỉ với các dải đã công bố của nhà cung cấp và sau đó hỏi tiến trình đang làm gì vào thời điểm đó: kiểm tra cập nhật, gọi giấy phép, gửi đo từ xa hay bắt tay đường hầm. Những hoạt động đó để lại những hình dạng kết nối khác nhau, và việc khớp hình dạng với thời điểm cho biết nhiều hơn việc khớp cái tên với một công ty mà bạn không tin tưởng.

Hãy giữ lại hàng đó trước khi bạn kết thúc một trợ lý dùng chung hoặc gỡ cài đặt bất cứ thứ gì. Một kết luận có thể bảo vệ được bao gồm một điểm cuối đã quan sát, trạng thái và chủ sở hữu của nó; một phán quyết trên toàn thương hiệu được xây dựng trên một nhãn đã phân giải không phải là bằng chứng, và sự yên tâm rằng một máy chủ tải xuống quen thuộc hẳn phải vô hại cũng không phải là bằng chứng.

Bài viết liên quan