Hiểu Về Cuộc Tấn Công Man-In-The-Middle - ARP Cache Poisoning (Phần 2)

Một trong những cuộc tấn công mạng phổ biến nhất được sử dụng đối với cá nhân và các tổ chức lớn cũng như là man-in-the-middle (MITM). Được coi là một cuộc tấn công nghe trộm hoạt động, MITM hoạt động bằng cách thiết lập các kết nối đến máy tính nạn nhân và chuyển tiếp tin nhắn giữa chúng. Trong những trường hợp như thế này, một trong những nạn nhân tin rằng nó là giao tiếp trực tiếp với nạn nhân khác, trong khi thực tế các thông tin liên lạc chảy qua các máy chủ thực hiện các cuộc tấn công. Kết quả cuối cùng là các máy chủ tấn công có thể không chỉ đánh chặn dữ liệu nhạy cảm, nhưng cũng có thể injection và thao tác một luồng dữ liệu để giành quyền kiểm soát thêm các nạn nhân của nó.
 
Như bạn chủ yếu sẽ tìm thấy trong thế giới thực, hầu hết các máy tính nạn nhân đều dựa trên Windows. Đó là trường hợp, loạt bài này sẽ tập trung hoàn toàn vào khai thác MITM với nạn nhân chạy các phiên bản của Windows. Khi có thể, các cuộc tấn công cũng sẽ được thực hiện từ máy chủ dựa trên Windows. Trong trường hợp khi không có công cụ có sẵn cho các cuộc tấn công được trình bày, chúng tôi sẽ được sử dụng linux

ARP Cache Poisoning

ARP cache Một trong những hình thức cổ xưa nhất của cuộc tấn công MITM hiện đại, ARP cache poisoning (đôi khi còn được gọi là ARP Poison Routing) cho phép kẻ tấn công trên mạng con tương tự như nạn nhân của nó để nghe trộm tất cả lưu lượng mạng giữa các nạn nhân. 

  Truyền tải ARP bình thường

Giao thức ARP được thiết kế ra cần thiết để tạo điều kiện cho việc dịch địa chỉ giữa các lớp thứ hai và thứ ba của mô hình OSI. Lớp thứ hai, hoặc lớp liên kết dữ liệu, sử dụng địa chỉ MAC để các thiết bị phần cứng có thể giao tiếp với nhau trực tiếp trên một quy mô nhỏ. Lớp thứ ba, hoặc tầng mạng, sử dụng địa chỉ IP (thường gặp nhất) để tạo ra các mạng khả năng mở rộng lớn, có thể giao tiếp trên toàn cầu. Các giao dịch lớp liên kết dữ liệu trực tiếp với các thiết bị kết nối với nhau, như các giao lớp mạng với các thiết bị được kết nối trực tiếp và gián tiếp kết nối. Mỗi lớp có cơ chế giải quyết riêng của mình, và họ phải làm việc cùng nhau để làm cho mạng lưới giao thông xảy ra. Vì lý do này rất, ARP được tạo với RFC 826, "An Địa chỉ Ethernet Resolution Protocol".
 

.





 
                             Hình 1: Quá trình ARP
 
Các vấn đề của hoạt động ARP được tập trung vào hai gói, một yêu cầu ARP và một bài trả lời ARP. Mục đích của yêu cầu và trả lời là để xác định vị trí các phần cứng địa chỉ MAC liên kết với một địa chỉ IP nhất định để lưu lượng có thể đạt được điểm đến của mình trên mạng. Các gói tin yêu cầu được gửi đến tất cả các thiết bị trên cùng một đoạn mạng và nói "Hey, địa chỉ IP của tôi là xx.xx.xx.xx, và địa chỉ MAC của tôi là XX: XX: XX: XX: XX: XX. Tôi cần phải gửi một cái gì đó để bất cứ ai có xx.xx.xx.xx địa chỉ IP, nhưng tôi không biết địa chỉ phần cứng của họ là gì. Sẽ bất cứ ai có địa chỉ IP này xin vui lòng trả lời lại với địa chỉ MAC của họ? "Câu trả lời sẽ đến trong các ARP reply gói và cung cấp hiệu quả câu trả lời này," Hey thiết bị truyền phát. Tôi là người bạn đang tìm kiếm với các địa chỉ IP của XX.XX.XX.XX. địa chỉ MAC của tôi là XX: XX: XX: XX: XX: XX "Một khi điều này được hoàn thành thiết bị phát sẽ cập nhật bảng ARP cache của nó và các thiết bị có thể giao tiếp với nhau..

Poisoning the Cache

ARP cache poisoning lợi dụng tính chất không an toàn của giao thức ARP. Không giống như các giao thức như DNS có thể được cấu hình để nâng cấp động chỉ chấp nhận bảo đảm, các thiết bị sử dụng ARP sẽ chấp nhận bản cập nhật bất cứ lúc nào. Điều này có nghĩa rằng bất kỳ thiết bị có thể gửi trả lời gói tin ARP đến máy chủ khác và buộc máy chủ đó để cập nhật bộ nhớ cache ARP của nó với các giá trị mới. Gửi một thư trả lời ARP khi không có yêu cầu đã được tạo ra được gọi là gửi một ARP cho không. Khi mục đích hiểm độc hiện diện kết quả của một vài vị trí tốt các gói tin ARP cho không sử dụng theo cách này có thể dẫn đến các host người nghĩ rằng họ đang giao tiếp với một máy chủ, nhưng trong thực tế đang liên lạc với một kẻ tấn công nghe lén.
 

 
                Hình 2: Chặn Thông tin ARP Cache Poisoning

Sử dụng Cain & Abel

Chúng ta hãy lấy tình huống nhất định và mang nó từ lý thuyết đến thực tế. Có một vài công cụ khác nhau mà sẽ thực hiện các bước cần thiết để đầu độc bộ nhớ cache ARP của máy tính nạn nhân. Chúng tôi sẽ sử dụng các công cụ bảo mật phổ biến Cain & Abel từ Oxid.it . Cain & Abel hiện khá một vài điều ngoài giả mạo ARP cache và là một công cụ rất hữu ích để có trong kho vũ khí của bạn. Việc lắp đặt của công cụ này là cắt giảm khá rõ ràng vì vậy tôi sẽ không đi qua đó ở đây.
 
Trước khi bắt đầu, bạn cần phải thu thập một số thông tin bổ sung. Điều này bao gồm các giao diện mạng bạn muốn bạn để sử dụng cho các cuộc tấn công, và hai địa chỉ IP của nạn nhân giao tiếp của bạn.
 
Khi bạn lần đầu tiên mở Cain & Abel, bạn sẽ thấy một loạt các tab gần phía trên cùng của cửa sổ. Đối với mục đích của chúng tôi, chúng tôi sẽ được làm việc trong tab Sniffer. Khi bạn nhấp vào tab này, bạn sẽ thấy một bảng trống. Để điền vào bảng này, bạn sẽ cần phải kích hoạt được xây dựng trong sniffer của chương trình và quét mạng của bạn cho các máy.
 

 
                        Hình 3: Cain và Abel Sniffer Tab
 
Nhấp vào biểu tượng thứ hai trên thanh công cụ, giống như một card mạng. Lần đầu tiên bạn cần làm điều này, bạn sẽ được yêu cầu chọn giao diện bạn muốn sniff. Giao diện này sẽ là một trong đó được kết nối với mạng bạn sẽ biểu diễn mạo ARP cache của bạn trên. Một khi bạn đã chọn giao diện này, nhấn OK để kích hoạt Cain & Abel của sniffer được xây dựng. Tại thời điểm này, các biểu tượng trên thanh công cụ giống như một card mạng nên bị giảm màu xuống. Để xây dựng một danh sách các máy có sẵn trên mạng của bạn, nhấp vào biểu tượng tương tự như một biểu tượng (+) cộng trên thanh công cụ chính, và nhấn OK.

 

 
           Hình 4: Quét cho máy chủ
 
Khi có sản phẩm nào kết nối bây giờ sẽ được làm đầy với một danh sách của tất cả các host trên mạng đính kèm của bạn, cùng với địa chỉ của họ MAC, địa chỉ IP, và nhà cung cấp thông tin nhận dạng. Đây là danh sách bạn sẽ làm việc từ khi thiết lập giả mạo ARP cache của bạn.
 
Ở dưới cùng của cửa sổ chương trình, bạn sẽ thấy một loạt các tab sẽ đưa bạn đến cửa sổ khác dưới tiêu đề Sniffer. Bây giờ bạn đã xây dựng được danh sách máy chủ của bạn, bạn sẽ được làm việc với tab APR. Chuyển sang cửa sổ APR bằng cách nhấn vào tab.
 
Khi ở trong cửa sổ APR, bạn sẽ thấy hai bảng trống rỗng: một phía trên và một phía dưới. Khi bạn thiết lập chúng, bảng phía trên sẽ hiển thị các thiết bị liên quan đến ngộ độc ARP cache của bạn, và các bảng bên dưới sẽ hiển thị tất cả thông tin liên lạc giữa các máy mạo.
 
Tiếp tục thiết lập giả mạo ARP bằng cách nhấn vào biểu tượng giống như biểu tượng (+) cộng trên thanh công cụ chuẩn của chương trình. Cửa sổ xuất hiện có hai cột đặt cạnh nhau. Ở phía bên trái, bạn sẽ thấy một danh sách của tất cả các máy tính hiện có trên mạng của bạn. Nhấp vào địa chỉ IP của một trong những nạn nhân của bạn. Điều này sẽ cho kết quả trong cửa sổ bên phải hiển thị một danh sách của tất cả các host trong mạng, bỏ qua các địa chỉ IP mà bạn vừa chọn. Trong cửa sổ bên phải, nhấp vào địa chỉ IP của các nạn nhân khác, và nhấn OK.
  

 
               Hình 5: Chọn Nạn nhân máy chủ cho Ngộ độc
 
Các địa chỉ IP của cả hai thiết bị lúc này sẽ được liệt kê trong bảng phía trên trong cửa sổ ứng dụng chính. Để hoàn tất quá trình, nhấp vào biểu tượng bức xạ màu vàng và đen trên thanh công cụ chuẩn. Điều này sẽ kích hoạt tính năng ARP cache poisoning Cain & Abel và cho phép phân tích hệ thống của bạn là người trung gian cho tất cả các thông tin liên lạc giữa hai nạn nhân. Nếu bạn tò mò để xem những gì đang xảy ra đằng sau hậu trường thử cài đặt Wireshark và lắng nghe để giao diện khi bạn kích hoạt ngộ độc. Bạn sẽ thấy một loạt các lưu lượng ARP để cả hai máy chủ và ngay lập tức bắt đầu nhìn thấy các thông tin liên lạc giữa họ.

 

 
                                    Hình 6: Ép ARP giao thông
 
Khi bạn kết thúc, chỉ cần nhấp vào biểu tượng bức xạ màu vàng và đen một lần nữa để ngăn chặn giả mạo ARP cache.

Chống lại ARP Cache Poisoning

Nhìn vào ARP cache poisoning từ hậu vệ quan điểm chúng ta đang ở một chút bất lợi. Quá trình ARP xảy ra trong nền với rất ít khả năng được kiểm soát trực tiếp của chúng tôi. Không có bắt tất cả các giải pháp, nhưng quan điểm chủ động và phản ứng có thể được thực hiện nếu bạn đang lo ngại về độc bộ nhớ cache ARP trên mạng của bạn.

Bảo mật mạng LAN

ARP Cache Poisoning chỉ là một kỹ thuật tấn công khả thi khi cố gắng để ngăn chặn giao thông giữa hai máy chủ trên mạng cùng một khu vực địa phương. Lý do duy nhất mà bạn sẽ phải lo sợ điều này là nếu một thiết bị cục bộ trên mạng của bạn đã bị xâm nhập, người dùng đáng tin có nội dung độc hại, hoặc ai đó đã quản lý để cắm một thiết bị không tin cậy vào hệ thống mạng. Mặc dù chúng ta thường tập trung toàn bộ nỗ lực an ninh của chúng tôi trên chu vi mạng, bảo vệ chống lại các mối đe dọa nội bộ và có tốt thế trận an ninh nội bộ có thể giúp loại bỏ sự sợ hãi của các cuộc tấn công được đề cập ở đây.

Hard Coding the ARP Cache

Một cách để bảo vệ chống lại các chức năng động không có bảo đảm các yêu cầu ARP và trả lời là làm cho quá trình này một chút ít ... năng động. Đây là một lựa chọn vì chủ dựa trên Windows cho phép bổ sung các entry tĩnh vào ARP cache. Bạn có thể xem cache ARP của một máy chủ Windows bằng cách mở một dấu nhắc lệnh và gõ lệnh arp -a.
 

 
                            Hình 7: Xem ARP Cache
 
Bạn có thể thêm các mục vào danh sách này bằng cách sử dụng các lệnh, arp -s <IP ĐỊA CHỈ> <MAC ĐỊA CHỈ>.
Trong trường hợp cấu hình mạng của bạn không thay đổi thường xuyên, nó là hoàn toàn khả thi để thực hiện một danh sách các mục ARP tĩnh và triển khai chúng cho khách hàng thông qua một kịch bản tự động. Điều này sẽ đảm bảo rằng thiết bị này sẽ luôn luôn dựa vào ARP cache tại địa phương của họ hơn là dựa trên các yêu cầu ARP và trả lời.

Giám sát ARP với một chương trình của bên thứ ba

Tùy chọn cuối cùng để bảo vệ chống lại ARP cache là một phương pháp phản ứng có liên quan đến việc kiểm tra lưu lượng mạng của mạng. Điều này có thể được thực hiện với một vài hệ thống phát hiện xâm nhập khác nhau (chẳng hạn như Snort) hoặc thông qua tiện ích tải về thiết kế đặc biệt cho mục đích này (chẳng hạn như xARP). Điều này có thể khả thi khi bạn chỉ quan tâm đến một máy chủ duy nhất, nhưng có thể là một chút rườm rà để đối phó với khi liên quan với toàn bộ các phân đoạn mạng.

Kết Luận

ARP Cache Poisoning là một giới thiệu rất tốt vào thế giới của các cuộc tấn công thụ động man-in-the-middle vì nó rất đơn giản để thực hiện, là một mối đe dọa rất thực tế trên mạng hiện đại, và rất khó để phát hiện và bảo vệ chống lại. 

Xem Thêm 

Hiểu Về Cuộc Tấn Công Man-In-The-Middle - Phần 1: DNS Spoofing  
 
Share on Google Plus

About Vo Uu

Tác Giả là người chuyên nghiên cứu về các kỹ thuật hacking, security, marketing, là người có góc nhìn lạ và đi sâu vấn đề cũng như là một con người thẳng thắn góp ý. Nếu sử dụng bài trên blog mong các bạn dẫn lại nguồn tác giả!!! Tác Giả rất mong có sự đóng góp hội ý từ cộng đồng để cho an toàn an ninh mạng việt nam ngày càng được an toàn hơn!!

0 nhận xét:

Post a Comment