Tổng Quan Về Nghe Lén
Nghe trộm hay nghe lén trên mạng (sniffer) là một phần của kỹ thuật
tấn công MITM (Man In The Middle) đe doạ an ninh dữ liệu. Đây là kỹ
thuật tấn công phổ biến, nguy hiểm và khó phòng chống bậc nhất hiện nay.
Theo đúng như tên gọi, kỹ thuật này không tấn công trực diện vào các máy
khách hay máy chủ, mà nó nhằm vào đoạn truyền dữ liệu thông qua cable
hay tín hiệu vô tuyến giữa các máy, đặc biệt nhất là trên mạng Ethernet.
Kỹ thuật tấn công MITM
Ban đầu, sniffer được các quản trị viên dùng theo dõi, chuẩn đoán,
phát hiện các sự cố nhằm giúp cải thiện hoạt động hệ thống mạng. Về sau nó
bị biến tướng, trở thành công cụ đắc lực phục vụ mục đích thu thập trái phép
các thông tin nhạy cảm, tên tài khoản, mật khẩu, thẻ tín dụng, v.v Nói
cách khác là có khả năng lấy được mọi thông tin của người dùng khi chúng
được luân chuyển trên mạng. Cơ chế nghe trộm
Nhìn chung, sniffer chỉ xảy ra ở mặt vật lý, nghĩa là kẻ tấn công phải
tiếp cận được với hệ thống thì mới thực thi được. Ví dụ trong các điểm dịch
vụ Internet, các quán café WiFi, trong hệ thống LAN doanh nghiệp, v.v
mà chỉ cần một máy tính trong mạng bị cài đặt trình nghe lén, tất cả luồng
thông tin truyền dẫn qua mạng đó đều có thể bị ghi lại. Trường hợp hệ thống
máy tính nghe trộm và kẻ tấn công ở cách xa nhau, kẻ tấn công tìm cách
điều khiển một máy tính nào đó trong hệ thống rồi cài đặt trình nghe lén vào
máy đó để thực hiện nghe trộm từ xa.
I. Công cụ nghe lén
Hiện nay, nghe trộm mạng thực hiện rất dễ dàng, bởi có quá nhiều
công cụ giúp thực hiện như Ettercap, Ethereal, dsniff, TCPdump, Snifit, .
Các công cụ này ngày càng được “tối ưu hóa” để dễ sử dụng và tránh bị phát
hiện. So với các kiểu tấn công khác, tấn công dạng Sniffer cực kỳ nguy
hiểm, bởi nó có thể ghi lại toàn bộ thông tin được lưu chuyển qua card mạng
của các máy, và bản thân người sử dụng không biết là đang bị nghe trộm lúc
25 trang |
Chia sẻ: tlsuongmuoi | Lượt xem: 5628 | Lượt tải: 4
Bạn đang xem trước 20 trang tài liệu Tổng quan về nghe lén, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
1
Tổng Quan Về Nghe Lén
Nghe trộm hay nghe lén trên mạng (sniffer) là một phần của kỹ thuật
tấn công MITM (Man In The Middle) đe doạ an ninh dữ liệu. Đây là kỹ
thuật tấn công phổ biến, nguy hiểm và khó phòng chống bậc nhất hiện nay.
Theo đúng như tên gọi, kỹ thuật này không tấn công trực diện vào các máy
khách hay máy chủ, mà nó nhằm vào đoạn truyền dữ liệu thông qua cable
hay tín hiệu vô tuyến giữa các máy, đặc biệt nhất là trên mạng Ethernet.
Kỹ thuật tấn công MITM
Ban đầu, sniffer được các quản trị viên dùng theo dõi, chuẩn đoán,
phát hiện các sự cố nhằm giúp cải thiện hoạt động hệ thống mạng. Về sau nó
bị biến tướng, trở thành công cụ đắc lực phục vụ mục đích thu thập trái phép
các thông tin nhạy cảm, tên tài khoản, mật khẩu, thẻ tín dụng, v.v… Nói
cách khác là có khả năng lấy được mọi thông tin của người dùng khi chúng
được luân chuyển trên mạng.
2
Cơ chế nghe trộm
Nhìn chung, sniffer chỉ xảy ra ở mặt vật lý, nghĩa là kẻ tấn công phải
tiếp cận được với hệ thống thì mới thực thi được. Ví dụ trong các điểm dịch
vụ Internet, các quán café WiFi, trong hệ thống LAN doanh nghiệp, v.v…
mà chỉ cần một máy tính trong mạng bị cài đặt trình nghe lén, tất cả luồng
thông tin truyền dẫn qua mạng đó đều có thể bị ghi lại. Trường hợp hệ thống
máy tính nghe trộm và kẻ tấn công ở cách xa nhau, kẻ tấn công tìm cách
điều khiển một máy tính nào đó trong hệ thống rồi cài đặt trình nghe lén vào
máy đó để thực hiện nghe trộm từ xa.
I. Công cụ nghe lén
Hiện nay, nghe trộm mạng thực hiện rất dễ dàng, bởi có quá nhiều
công cụ giúp thực hiện như Ettercap, Ethereal, dsniff, TCPdump, Snifit,...
Các công cụ này ngày càng được “tối ưu hóa” để dễ sử dụng và tránh bị phát
hiện. So với các kiểu tấn công khác, tấn công dạng Sniffer cực kỳ nguy
hiểm, bởi nó có thể ghi lại toàn bộ thông tin được lưu chuyển qua card mạng
của các máy, và bản thân người sử dụng không biết là đang bị nghe trộm lúc
3
nào do máy tính của họ vẫn hoạt động bình thường, không có dấu hiệu bị
xâm nhập hay phá hoại. Chính điều đó dẫn đến việc phát hiện và phòng
chống nghe trộm rất khó, và hầu như chỉ có thể phòng chống trong thế bị
động (passive) - nghĩa là chỉ phát hiện được bị nghe trộm khi đang ở tình
trạng bị nghe trộm.
1.1 Sử dụng Cain & Abel
Có một vài công cụ có thể thực hiện các bước cần thiết để giả mạo
ARP cache của các máy tính nạn nhân. Công cụ bảo mật khá phổ biến mang
tên Cain & Abel. Cain & Abel thực hiện khá nhiều thứ ngoài vấn đề giả mạo
ARP cache. Việc cài đặt công cụ này khá đơn giản.
Khi lần đầu mở Cain & Abel, bạn sẽ thấy một loạt các tab ở phía trên
cửa sổ. Với mục đích của bài, chúng tôi sẽ làm việc trong tab Sniffer. Khi
kích 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 cần
kích hoạt bộ sniffer đi kèm của chương trình và quét các máy tính trong
mạng của bạn.
4
Hình 3: Tab Sniffer của Cain & Abel
Kích vào biểu tượng thứ hai trên thanh công cụ, giống như một card
mạng. Thời gian đầu thực hiện, bạn sẽ bị yêu cầu chọn giao diện mà mình
muốn sniff (đánh hơi). Giao diện cần phải được kết nối với mạng mà bạn sẽ
thực hiện giả mạo ARP cache của mình trên đó.
Khi đã chọn xong giao diện, kích OK để kích hoạt bộ sniffer đi kèm
của Cain & Abel. Tại đây, biểu tượng thanh công cụ giống như card mạng sẽ
bị nhấn xuống. Nếu không, bạn hãy thực hiện điều đó. Để xây dựng một
danh sách các máy tính hiện có trong mạng của bạn, hãy kích biểu tượng
giống như ký hiệu (+) trên thanh công cụ chính và kích OK.
5
Hình 4: Quét các thiết bị trong mạng
Những khung lưới trống rỗng lúc này sẽ được điền đầy bởi một danh
sách tất cả các thiết bị trong mạng của bạn, cùng với đó là địa chỉ MAC, IP
cũng như các thông tin nhận dạng của chúng. Đây là danh sách bạn sẽ làm
việc khi thiết lập giả mạo ARP cache.
Ở phía dưới cửa sổ chương trình, bạn sẽ thấy một loạt các tab đưa bạn
đến các cửa sổ khác bên dưới tiêu đề Sniffer. Lúc này bạn đã xây dựng được
danh sách các thiết bị của mình, nhiệm vụ tiếp theo của bạn là làm việc với
tab APR. Chuyển sang cửa sổ APR bằng cách kích tab.
6
Khi ở trong cửa sổ APR, bạn sẽ thấy hai bảng trống rỗng: một bên
phía trên và một phía dưới. Khi thiết lập chúng, bảng phía trên sẽ hiển thị
các thiết bị có liên quan trong giả mạo ARP cache và bảng bên dưới sẽ hiển
thị tất cả truyền thông giữa các máy tính bị giả mạo.
Tiếp tục thiết lập sự giả mạo ARP bằng cách kích vào biểu tượng
giống như dấu (+) 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 tất cả
các thiết bị có sẵn trong mạng. Kích địa chỉ IP của một trong những nạn
nhân, bạn sẽ thấy các kết quả hiện ra trong cửa sổ bên phải là danh sách tất
cả các host trong mạng, bỏ qua địa chỉ IP vừa chọn. Trong cửa sổ bên phải,
kích vào địa chỉ IP của nạn nhân khác và kích OK.
Hình 5: Chọn thiết bị nạn nhân của việc giả mạo
7
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 của cửa sổ ứng dụng chính. Để hoàn tất quá trình, kích vào ký hiệu
bức xạ (vàng đen) trên thanh công cụ chuẩn. Điều đó sẽ kích hoạt các tính
năng giả mạo ARP cache của Cain & Abel và cho phép hệ thống phân tích
của bạn trở thành người nghe lén tất cả các cuột truyền thông giữa hai nạn
nhân. Nếu bạn muốn thấy những gì đang diễn ra sau phông này, hãy cài
đặt Wireshark và lắng nghe từ giao diện khi bạn kích hoạt giả mạo. Bạn sẽ
thấy lưu lượng ARP đến hai thiết bị và ngay lập tức thấy sự truyền thông
giữa chúng.
Khi kết thúc, hãy kích vào ký hiệu bức xạ (vàng đen) lần nữa để
ngừng hành động giả mạo ARP cache.
1.2 Sử dụng Ettercap
Có một số công cụ khác có thể được sử dụng để thực hiện hành động
giả mạo DNS. Chúng tôi sẽ sử dụng một trong số đó là Ettercap, đây là công
cụ có thể sử dụng cho cả Windows và Linux.
Trước khi thực thi Ettercap, yêu cần bạn cần phải thực hiện một chút
cấu hình. Ettercap ở mức lõi của nó là một bộ đánh hơi (sniffer) dữ liệu, nó
sử dụng plug-in để thực hiện các tấn công khác nhau. Plug-in dns_spoof là
những gì mà chúng ta sẽ thực hiện trong ví dụ này, vì vậy chúng ta phải điều
chỉnh file cấu hình có liên quan với plug-in đó. Trên hệ thống Windows, file
này có thể download tại C:\Program Files (x86)\EttercapNG\share\etter.dns,
và tại /usr/share/ettercap/etter.dns.
8
Đây là mộ file khá đơn giản và có chứa các bản ghi DNS mà bạn
muốn giả mạo. Với mục đích thử nghiệm, chúng ta muốn bất cứ người dùng
nào đang cố gắng truy cập vào yahoo.com đều bị hướng (direct) đến một
host trên mạng nội bộ, hãy thêm một entry được đánh dấu trong hình.
9
Hình 5: Bổ sung bản ghi DNS giả mạo vào etter.dns
Các entry này sẽ chỉ dẫn cho plug-in dns_spoof rằng khi thấy truy vấn DNS
10
cho yahoo.com hoặc www.yahoo.com (với một bản ghi tài nguyên kiểu A),
nó sẽ sử dụng địa chỉ IP 172.16.16.100 để đáp trả. Trong kịch bản thực, thiết
bị tại địa chỉ IP 172.16.16.100 sẽ chạy một phần mềm máy chủ web và hiển
thị cho người dùng website giả mạo.
II. Cơ chế nghe lén
Để hiểu quá trình cần hiểu được nguyên tắc chuyển tải các gói tin
(packet) giữ các máy qua 2 loại thiết bị tập trung các node mạng sử dụng
phổ biến hiện nay là Hub và Switch trên hệ thống mạng Ethernet, biết được
các điểm yếu bị lợi dụng lúc truyền dẫn để nghe trộm.
2.1 Trong môi trường Hub
Khi gói tin được chuyển từ máy A sang máy B thì đồng thời nó được
gửi đến tất cả các máy khác đang kết nối cùng Hub. Các máy khác nhận
được gói tin này và tiến hành so sánh với frame của gói tin để kiểm tra địa
chỉ đích. Nếu trùng lập thì sẽ nhận, còn không thì cho qua. Do gói tin từ A
được gửi đến B nên khi so sánh thì chỉ có B mới giống địa chỉ đích đến nên
chỉ có B mới thực hiện tiếp nhận.
Dựa vào nguyên tắc đó, máy được cài đặt chương trình nghe trộm sẽ
“tự nhận” bất cứ gói tin được lưu chuyển trong mạng qua Hub, kể cả khi
đích đến gói tin có đích đến không phải là nó, nhờ card mạng được đặt ở chế
độ hỗn tạp (promiscuous mode). Promiscuous mode là chế độ đặc biệt mà
11
khi card mạng được đặt dưới chế độ này, nó có thể nhận tất cả các gói tin mà
không bị ràng buộc kiểm tra địa chỉ đích đến.
2.2 Trong môi trường Switch
Khác với Hub, Switch chỉ chuyển tải các gói tin đến những địa chỉ xác
định trước nên nghe trộm kiểu “tự nhận” như ở Hub không thực hiện được.
Theo hình minh họa, máy A khi truyền dữ liệu cho máy B thông qua
switch thì sẽ chỉ chuyển tới A, không qua C – chỉ có (1) và (4), không có
bước 2,3. Ý tưởng ở đây là nếu máy C muốn nghe trộm dữ liệu truyền giữa
A và B thì nó tìm cách đóng vai trò như một gateway để đón và tiếp vận dữ
liệu. Theo hình trên, dữ liệu từ máy A đến switch, rồi đến máy C, sau đó trở
lại switch rồi mới đến B. Lúc đó máy C “nói” với máy A nó là B để A
truyền dữ liệu cho nó, sau đó “nói” với B nó là A để truyền dữ liệu đến B.
Mở rộng ra, nếu máy C sẽ nhận dữ liệu trung gian đối với tất cả các máy
trong cùng kết nối đến switch. Và như vậy dữ liệu qua C sẽ bị ghi lại, tức bị
nghe lén. Các kỹ thuật áp dụng chủ yếu trong môi trường Switch gồm ARP
spoofing, MAC flooding, MAC duplicating,…
2.3 Trong môi trường WAN
Trong trường hợp này, để tạo ra một mạng lưới theo dõi điều cần thiết
là hệ thống trở thành một bộ định tuyến giữa các máy chủ truyền thông của
khách hàng. Một cách để thực hiện khai thác này là với một cuộc tấn công
giả mạo hoàn toàn với hệ thống khách hàng
2.4Trong môi trường mạng WLAN
12
Hacker có thể tấn công mạng WLAN bằng các cách sau:
Passive Attack (eavesdropping), Active Attack (kết nối, thăm dò và cấu hình
mạng), Jamming Attack, Man-in-the-middle Attack
Các phương pháp tấn công trên có thể được phối hợp với nhau theo
nhiều cách khác nhau
2.5 Passive Attack (eavesdropping):
Passive Attack hay nghe lén (eavesdropping) có lẽ là một phương
pháp tấn công WLAN đơn giản nhất nhưng vẫn rất hiệu quả. Passive attack
không để lại một dấu vết nào chứng tỏ đã có sự hiện diện của hacker trong
mạng vì hacker không thật sự kết nối với AP để lắng nghe các gói tin truyền
trên đoạn mạng không dây. WLAN sniffer hay các ứng dụng miễn phí có thể
được sử dụng để thu thập thông tin về mạng không dây ở khoảng cách xa
bằng cách sử dụng anten định hướng. Phương pháp này cho phép hacker giữ
khoảng cách với mạng, không để lại dấu vết trong khi vẫn lắng nghe và thu
thập được những thông tin quý giá.
Có nhiều ứng dụng có khả năng thu thập được password từ những dịa
chỉ HTTP, email, instant message, phiên làm việc FTP, telnet. Những kiểu
kết nối trên đều truyền password theo dạng clear text (không mã hóa). Nhiều
ứng dụng có thể bắt được password hash (mật mã đã được băm) truyền trên
đoạn mạng không dây giữa client và server lúc client đăng nhập vào. Bất kỳ
thông tin nào truyền trên đoạn mạng không dây theo kiểu này đều rất dễ bị
13
tấn công bởi hacker. Hãy xem xét những tác động nếu như hacker có thể
đăng nhập vào mạng bằng thông tin của một người dùng nào đó và gây ra
những thiệt hại cho mạng. Hacker là thủ phạm nhưng những thông tin log
được lại chỉ đến người dùng mà hacker đã đăng nhập vào. Điều này có thể
làm cho nhân viên đó mất việc.
Một hacker có thể ở đâu đó trong bãi đậu xe, dùng những công cụ để
đột nhập vào mạng WLAN của bạn. Các công cụ có thể là một packet
sniffer, hay một số phần mềm hacking miễn phí để có thể crack được WEP
key và đăng nhập vào mạng.
2.6 Active Attack:
Hacker có thể tấn công chủ động (active) để thực hiện một số tác vụ
trên mạng. Một cuộc tấn công chủ động có thể được sử dụng để truy cập vào
server và lấy được những dữ liệu có giá trị hay sử dụng đường kết nối
Internet của doanh nghiệp để thực hiện những mục đích phá hoại hay thậm
chí là thay đổi cấu hình của hạ tầng mạng. Bằng cách kết nối với mạng
không dây thông qua AP, hacker có thể xâm nhập sâu hơn vào mạng hoặc có
thể thay đổi cấu hình của mạng. Ví dụ, một hacker có thể sửa đổi để thêm
MAC address của hacker vào danh sách cho phép của MAC filter trên AP
hay vô hiệu hóa tính năng MAC filter giúp cho việc đột nhập sau này dễ
dàng hơn. Admin thậm chí không biết được thay đổi này trong một thời gian
dài nếu như không kiểm tra thường xuyên.
Một số ví dụ điển hình của active attack có thể bao gồm các Spammer
hay các đối thủ cạnh tranh muốn đột nhập vào cơ sở dữ liệu của công ty bạn.
14
Một spammer (kẻ phát tán thư rác) có thể gởi một lúc nhiều mail đến mạng
của gia đình hay doanh nghiệp thông qua kết nối không dây WLAN. Sau khi
có được địa chỉ IP từ DHCP server, hacker có thể gởi cả ngàn bức thư sử
dụng kết nối internet của bạn mà bạn không hề biết. Kiểu tấn công này có
thể làm cho ISP của bạn ngắt kết nối email của bạn vì đã lạm dụng gởi nhiều
mail mặc dù không phải lỗi của bạn.
Đối thủ cạnh tranh có thể muốn có được danh sách khách hàng của
bạn cùng với những thông tin liên hệ hay thậm chí là bảng lương để có mức
cạnh tranh tốt hơn hay giành lấy khách hàng của bạn. Những kiểu tấn công
này xảy ra thường xuyên mà admin không hề hay biết.
Một khi hacker đã có được kết nối không dây vào mạng của bạn, hắn
có thể truy cập vào server, sử dụng kết nối WAN, Internet hay truy cập đến
laptop, desktop người dùng. Cùng với một số công cụ đơn giản, hacker có
thể dễ dàng thu thập được những thông tin quan trọng, giả mạo người dùng
hay thậm chí gây thiệt hại cho mạng bằng cách cấu hình sai. Dò tìm server
bằng cách quét cổng, tạo ra phiên làm việc NULL để chia sẽ hay crack
password, sau đó đăng nhập vào server bằng account đã crack được là những
điều mà hacker có thể làm đối với mạng của bạn.
2.7 Jamming (tấn công bằng cách gây nghẽn):
Jamming là một kỹ thuật được sử dụng chỉ đơn giản để làm hỏng
(shut down) mạng không dây của bạn. Tương tự như những kẻ phá hoại sử
dụng tấn công DoS vào một web server làm nghẽn server đó thì mạng
WLAN cũng có thể bị shut down bằng cách gây nghẽn tín hiệu RF. Những
15
tín hiệu gây nghẽn này có thể là cố ý hay vô ý và có thể loại bỏ được hay
không loại bỏ được. Khi một hacker chủ động tấn công jamming, hacker có
thể sử dụng một thiết bị WLAN đặc biệt, thiết bị này là bộ phát tín hiệu RF
công suất cao hay sweep generator.
Jamming do vô ý xuất hiện thường xuyên do nhiều thiết bị khác nhau
chia sẽ chung băng tần 2.4 ISM với mạng WLAN. Jamming một cách chủ
động thường không phổ biến lắm, lý do là bởi vì để thực hiện được jamming
thì rất tốn kém, giá của thiết bị rất mắc tiền, kết quả đạt được chỉ là tạm thời
shut down mạng trong thời gian ngắn.
2.8 Man-in-the-middle Attack:
Tấn công theo kiểu Man-in-the-middle là trường hợp trong đó hacker
sử dụng một AP để đánh cắp các node di động bằng cách gởi tín hiệu RF
mạnh hơn AP hợp pháp đến các node đó. Các node di động nhận thấy có AP
phát tín hiệu RF tốt hơn nên sẽ kết nối đến AP giả mạo này, truyền dữ liệu
có thể là những dữ liệu nhạy cảm đến AP giả mạo và hacker có toàn quyền
xử lý.
Để làm cho client kết nối lại đến AP giả mạo thì công suất phát của
AP giả mạo phải cao hơn nhiều so với AP hợp pháp trong vùng phủ sóng
của nó. Việc kết nối lại với AP giả mạo được xem như là một phần của
roaming nên người dùng sẽ không hề biết được. Việc đưa nguồn nhiễu toàn
kênh (all-band interference - chẳng hạn như bluetooth) vào vùng phủ sóng
của AP hợp pháp sẽ buộc client phải roaming.
16
Hacker muốn tấn công theo kiểu Man-in-the-middle này trước tiên
phải biết được giá trị SSID là các client đang sử dụng (giá trị này rất dễ dàng
có được). Sau đó, hacker phải biết được giá trị WEP key nếu mạng có sử
dụng WEP. Kết nối upstream (với mạng trục có dây) từ AP giả mạo được
điều khiển thông qua một thiết bị client như PC card hay Workgroup Bridge.
Nhiều khi, tấn công Man-in-the-middle được thực hiện chỉ với một laptop và
2 PCMCIA card. Phần mềm AP chạy trên máy laptop nơi PC card được sử
dụng như là một AP và một PC card thứ 2 được sử dụng để kết nối laptop
đến AP hợp pháp gần đó. Trong cấu hình này, laptop chính là man-in-the-
middle (người ở giữa), hoạt động giữa client và AP hợp pháp. Từ đó hacker
có thể lấy được những thông tin giá trị bằng cách sử dụng các sniffer trên
máy laptop.
Điểm cốt yếu trong kiểu tấn công này là người dùng không thể nhận
biết được. Vì thế, số lượng thông tin mà hacker có thể thu được chỉ phụ
thuộc vào thời gian mà hacker có thể duy trì trạng thái này trước khi bị phát
hiện. Bảo mật vật lý (Physical security) là phương pháp tốt nhất để chống lại
kiểu tấn công này.
Một số hình thức tấn công MITM hay được sử dụng nhất, chẳng hạn
như tấn công giả mạo ARP Cache, DNS Spoofing, chiếm quyền điều khiển
(hijacking) HTTP session,.. Hầu hết các máy tính nạn nhân đều là các máy
tính Windows. Có thể tấn công sẽ được thực hiện từ các máy tính Windows.
Tuy nhiên trong một số trường hợp, khi không có công cụ nào cho các tấn
công hiện diện, Backtrack Linux 4 sẽ được sử dụng.
17
2.8.1 Giả mạo ARP Cache (ARP Cache Poisoning)
Đây là một hình thức tấn công MITM hiện đại có xuất sứ lâu đời nhất
(đôi khi còn được biết đến với cái tên ARP Poison Routing), tấn công này
cho phép kẻ tấn công (nằm trên cùng một subnet với các nạn nhân của nó)
có thể nghe trộm tất cả các lưu lượng mạng giữa các máy tính nạn nhân. Đây
là một trong những hình thức tấn công đơn giản nhất nhưng lại là một hình
thức hiệu quả nhất khi được thực hiện bởi kẻ tấn công.
Truyền thông ARP thông thường
Giao thức ARP được thiết kế để phục vụ cho nhu cầu thông dịch các
địa chỉ giữa các lớp thứ hai và thứ ba trong mô hình OSI. Lớp thứ hai (lớp
data-link) sử dụng địa chỉ MAC để các thiết bị phần cứng có thể truyền
thông với nhau một cách trực tiếp. Lớp thứ ba (lớp mạng), sử dụng địa chỉ
IP để tạo các mạng có khả năng mở rộng trên toàn cầu. Lớp data-link xử lý
trực tiếp với các thiết bị được kết nối với nhau, còn lớp mạng xử lý các thiết
bị được kết nối trực tiếp và không trực tiếp. Mỗi lớp có cơ chế phân định địa
chỉ riêng, và chúng phải làm việc với nhau để tạo nên một mạng truyền
thông. Với lý do đó, ARP được tạo với RFC 826, “một giao thức phân định
địa chỉ Ethernet - Ethernet Address Resolution Protocol”.
18
Thực chất trong vấn đề hoạt động của ARP được tập trung vào hai
gói, một gói ARP request và một gói ARP reply. Mục đích của request và
reply là tìm ra địa chỉ MAC phần cứng có liên quan tới địa chỉ IP đã cho để
lưu lượng có thể đến được đích của nó trong mạng. Khi quá trình này hoàn
tất, thiết bị phát sẽ cập nhật bảng ARP cache của nó và hai thiết bị này có thể
truyền thông với nhau.
Việc giả mạo Cache
Việc giả mạo bảng ARP chính là lợi dụng bản tính không an toàn của
giao thức ARP. Không giống như các giao thức khác, chẳng hạn như DNS
19
(có thể được cấu hình để chỉ chấp nhận các nâng cấp động khá an toàn), các
thiết bị sử dụng giao thức phân giải địa chỉ (ARP) sẽ chấp nhận nâng cấp bất
cứ lúc nào.
Điều này có nghĩa rằng bất cứ thiết bị nào có thể gửi gói ARP reply
đến một máy tính khác và máy tính này sẽ cập nhật vào bảng ARP cache của
nó ngay giá trị mới này. Việc gửi một gói ARP reply khi không có request
nào được tạo ra được gọi là việc gửi ARP “vu vơ”. Khi các ARP reply vu vơ
này đến được các máy tính đã gửi request, máy tính request này sẽ nghĩ rằng
đó chính là đối tượng mình đang tìm kiếm để truyền thông, tuy nhiên thực
chất họ lại đang truyền thông với một kẻ tấn công.
2.8.2Giả mạo DNS
20
Giả mạo DNS là một kỹ thuật MITM được sử dụng nhằm cung cấp
thông tin DNS sai cho một host để khi người dùng duyệt đến một địa chỉ nào
đó, ví dụ, www.bankofamerica.com có IP XXX.XX.XX.XX, thì cố gắng này
sẽ được gửi đến một địa chỉwww.bankofamerica.com giả mạo cư trú ở địa
chỉ IP YYY.YY.YY.YY, đây là địa chỉ mà kẻ tấn công đã tạo trước để đánh
cắp các thông tin tài khoản ngân hàng trực tuyến từ người dùng.
Tấn công này có thể thực hiện khá dễ dàng và trong bài này chúng ta
sẽ đi nghiên cứu cách làm việc của nó, cách nó thực hiện tấn công thế nào
Có nhiều cách để có thể thực hiện vấn đề giả mạo DNS. Chúng tôi sẽ
sử dụng một kỹ thuật mang tên giả mạo DNS ID.
Mỗi truy vấn DNS được gửi qua mạng đều có chứa một số nhận dạng
duy nhất, mục đích của số nhận dạng này là để phân biệt các truy vấn và đáp
trả chúng. Điều này có nghĩa rằng nếu một máy tính đang tấn công của
chúng ta có thể chặn một truy vấn DNS nào đó được gửi đi từ một thiết bị cụ
thể, thì tất cả những gì chúng ta cần thực hiện là tạo một gói giả mạo có
chứa số nhận dạng đó để gói dữ liệu đó được chấp nhận bởi mục tiêu.
Chúng ta sẽ hoàn tất quá trình này bằng cách thực hiện hai bước với
một công cụ đơn giản. Đầu tiên, chúng ta cần giả mạo ARP cache thiết bị
mục tiêu để định tuyến lại lưu lượng của nó qua host đang tấn công của
mình, từ đó có thể chặn yêu cầu DNS và gửi đi gói dữ liệu giả mạo. Mục
đích của kịch bản này là lừa người dùng trong mạng mục tiêu truy cập vào
21
website độc thay vì website mà họ đang cố gắng truy cập. Để rõ hơn bạn có
thể tham khảo thêm hình tấn công bên dưới.
Hình 4: Tấn công giả mạo DNS bằng phương pháp giả mạo DNS ID
III. Phòng tránh nghe lén
Dưới đây là một số biện pháp phòng chống tổng hợp:
Thay thế thiết bị tập trung Hub bằng Switch, và giám sát chặt chẽ sự
thay đổi địa chỉ MAC (Media Access Control) của card mạng.
Áp dụng cơ chế one-time password – thay đổi password liên tục.
Mã hóa dữ liệu truyền dẫn bằng các cơ chế truyền thông dữ liệu an
toàn SSL (Secure Sockets Layer), thiết lập IPSec và mạng riêng ảo VNP
(Virtual Private Network),… Hạn chế hay thay thế các chương trình không
22
chức năng mã hóa dữ liệu hay mã hóa mật khẩu, như: sử dụng SSH (Secure
Shell Host) thay cho Telnet, Rlogin; dùng SFTP (secure FTP) thay vì FTP;
dùng Trillian ( hay Jabber ( làm chương
trình chat; dùng giao thức https thay cho http v.v…
Sử dụng các phần mềm phát hiện sự hoạt động của các chương trình
nghe lén trên mạng như AntiSniff, PromiScan, Promqry and PromqryUI,
ARPwatch, Ettercap, v.v… Riêng với Ettercap
( chương trình này vừa dùng để nghe trộm,
nhưng cũng vừa có khả năng phát hiện nghe trộm nhờ được hỗ trợ các
plugin như arp_cop (phát hiện trạng thái ARP posioning); find_ettercap
(phát hiện các trình ettercap khác đang chạy); scan_poisoner (phát hiện máy
đang thực hiện posioning); seach_promisc (phát hiện máy đang nghe trộm ở
chế độ “hỗn tạp”),…
Dùng các chương trình giám sát hoạt động của mạng. Thiết lập hệ
thống phát hiện xâm nhập IDS (Intrusion Detection System) như trình miễn
phí Snort ( nhằm phát hiện những hiện tượng lạ trong
mạng, trong đó có ARP spoofing, để có biện pháp đối phó thích hợp.
Trong số giải pháp trên, sử dụng phần mềm phát hiện nghe trộm và
mã hóa dữ liệu để chống là giải pháp nhanh và thuận tiện nhất đối với người
dùng cuối. Tuy nhiên hạn chế lớn của các chương trình này là cũng chỉ phát
hiện được sau khi đã bị nghe lén – phát hiện trong thế bị động, vì đa phần
các chương trình chống đều dựa vào việc phát hiện tình trạng Promiscuous
(hỗn độn) và ARP spoofing để cảnh báo tình trạng bị nghe trộm.
23
Đối với hệ thống mạng công ty, cách bảo vệ tốt nhất là ngăn chặn,
phòng ngừa ngay từ đầu bằng cách xây dựng Chính sách bảo mật mạng
(Network Security Policy). Trong đó có những chính sách quản lý truy xuất,
quản lý bảo vệ vật lý hệ thống mạng với những quy định như: ai được phép
tiếp xúc với các máy; được phép sử dụng máy; được phép gắn thêm máy;
được phép cài đặt những loại chương trình nào, v.v… nhằm hạn chế đến
mức tối đa khả năng xâm nhập về mặt vật lý đế cài đặt các chương trình
nghe lén trong mạng. Không có giải pháp hoàn hảo để chống nghe trộm, đề
phòng trước khi xảy ra sự cố xem ra là giải pháp khả thi nhất!
Bảo mật LAN
Giả mạo ARP Cache chỉ là một kỹ thuật tấn công mà nó chỉ sống sót
khi cố gắng chặn lưu lượng giữa hai thiết bị trên cùng một LAN. Chỉ có một
lý do khiến cho bạn lo sợ về vấn đề này là liệu thiết bị nội bộ trên mạng của
bạn có bị thỏa hiệp, người dùng tin cậy có ý định hiểm độc hay không hoặc
liệu có ai đó có thể cắm một thiết bị không tin cậy vào mạng.
Mặc dù chúng ta thường tập trung toàn bộ những cố gắng bảo mật của
mình lên phạm vi mạng nhưng việc phòng chống lại những mối đe dọa ngay
từ bên trong và việc có một thái độ bảo mật bên trong tốt có thể giúp bạn
loại trừ được sự sợ hãi trong tấn công được đề cập ở đây.
Mã hóa ARP Cache
Một cách có thể bảo vệ chống lại vấn đề không an toàn vốn có trong
các ARP request và ARP reply là thực hiện một quá trình kém động hơn.
24
Đây là một tùy chọn vì các máy tính Windows cho phép bạn có thể bổ sung
các entry tĩnh vào ARP cache. Bạn có thể xem ARP cache của máy tính
Windows bằng cách mở nhắc lệnh và đánh vào đó lệnh arp –a.
Hình 7: Xem ARP Cache
Trong các trường hợp, nơi cấu hình mạng của bạn không mấy khi thay
đổi, bạn hoàn toàn có thể tạo một danh sách các entry ARP tĩnh và sử dụng
chúng cho các client thông qua một kịch bản tự động. Điều này sẽ bảo đảm
được các thiết bị sẽ luôn dựa vào ARP cache nội bộ của chúng thay vì các
ARP request và ARP reply.
Kiểm tra lưu lượng ARP với chương trình của hãng thứ ba
Tùy chọn cuối cùng cho việc phòng chống lại hiện tượng giả mạo
ARP cache là 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 các thiết bị. Bạn có thể thực hiện điều này với một vài hệ
thống phát hiện xâm phạm (chẳng hạn như Snort) hoặc thông qua các tiện
ích được thiết kế đặc biệt cho mục đích này (như xARP). Điều này có thể
25
khả thi khi bạn chỉ quan tâm đến một thiết bị nào đó, tuy nhiên nó vẫn khá
cồng kềnh và vướng mắc trong việc giải quyết với toàn bộ đoạn mạng.
Giả mạo ARP Cache là một chiêu khá hiệu quả trong thế giới những
kẻ tấn công thụ động “man-in-the-middle” vì nó rất đơn giản nhưng lại hiệu
quả. Hiện việc giả mạo ARP Cache vẫn là một mối đe dọa rất thực trên các
mạng hiện đại, vừa khó bị phát hiện và khó đánh trả.
Các file đính kèm theo tài liệu này:
- Tổng Quan Về Nghe Lén.pdf