Tuyển dụng
Phân tích các kịch bản tấn công hệ thống DNS
Trong phạm vi bài viết này, tôi muốn trình bày một số lỗ hổng đã xảy ra với hệ thống DNS cũng như các kịch bản tấn công hệ thống DNS và tác hại nó gây ra với người dùng. Qua đó giúp người sử dụng internet có cái nhận thức tốt hơn để phòng ngừa những nguy cơ có thể xảy ra và sử dụng internet hiệu quả hơn.
Hệ thống tên miền – DNS (Domain Name System) được phát minh vào năm 1984 cho Internet, đây là một hệ thống cho phép thiết lập quan hệ tương ứng giữa địa chỉ IP và tên miền.
Hệ thống tên miền DNS và những điều cần biết
DNS viết tắt từ Domain Name System (hệ thống tên miền) là hệ thống phân giải tên miền được phát minh vào năm 1984. DNS là chìa khóa chủ chốt của nhiều dịch vụ mạng như duyệt Internet, mail server, web server…
Không có hệ thống tên miền DNS, internet sẽ mau chóng lụi tàn và khó có thể tồn tại được.
Các tài nguyên mạng được định danh bằng những địa chỉ IP dạng như 10.0.0.10. Mỗi máy tính khi kết nối vào mạng được gán cho 1 địa chỉ IP riêng biệt. Địa chỉ IP này không trùng với bất kỳ máy tính nào khác. Tương tự với website cũng có các địa chỉ IP riêng biệt. Tuy nhiên, bạn không thể nhớ: 34.73.33.21 sẽ dẫn đến website DVMS thay vì đó ta chỉ cần nhớ DVMS.COM.VN. Đây là lúc DNS “trổ tài”, ánh xạ các con số địa chỉ IP thành ký tự ABC thân thiện.
DNS cũng giống như một danh bạ điện thoại cho Internet. Nếu bạn biết tên một người nhưng không biết số điện thoại hay ngược lại, bạn có thể tra sổ danh bạ.
DNS khi triển khai sử dụng 2 thành phần: máy chủ DNS (DNS server) và máy trạm DNS (DNS client).
Tìm thông số DNS Server đang dùng
Muốn xem DNS đang sử dụng khá đơn giản, chỉ cần vào Start, ở hộp thoại Run/cmd/Enter. Cửa sổ “đen xì” xuất hiện, gõ tiếp câu lệnh ipconfig /all để hiển thị địa chỉ IP và DNS Server.
DNS Servers ở phần đóng khung đỏ
Hệ thống tên miền công cộng (DNS Public Server)
Các nhà mạng (ISP) có địa chỉ DNS riêng, mỗi DNS có tốc độkhác nhau, nên người dùng có thể sử dụng DNS tùy theo lựa chọn. Đó là lý do các DNS Server công cộng (Public DNS Server) ra đời để đáp ứng nhu cầu sử dụng của người dùng.
Để thay đổi DNS trên hệ điều hành windows: Start -> Settings – Network connections -> nhấn double-click vào Local Area Connection. Nhấn vào nút Properties rồi chọn Internet Protocol (TCP/IP) và nhấn tiếp nút Properties ở góc phải.
Chỉ cần điền thông số DNS Server vào 2 ô “Preferred DNS Server” và “Alternate DNS Server”. Mỗi địa chỉ DNS Server sẽ gồm 4 con số phân cách bởi dấu chấm.
Bạn có thể tham khảo một số DNS Server công cộng khá uy tín sau:
- OpenDNS: 208.67.222.222 và 208.67.220.220
- Google Public DNS: 8.8.8.8 và 8.8.4.4
- ScrubIt: 67.138.54.100 và 207.225.209.66
- DNS Advantage: 156.154.70.1 và 156.154.71.1
Tại sao DNS lại tồn tại các lỗ hổng?
Hệ thống DNS thực chất là một tập hợp hệ thống phần cứng và các công cụ phần mềm phục vụ cho nhiệm vụ phân giải tên miền.
Ngoài các hệ thống phần cứng và các công cụ phần mềm chạy dưới dạng dịch vụ thì cần có các giao thức DNS (Bao gồm định dạng gói tin, giao thức truyền, …) để có thể tiến hành trao đổi thông tin giữa máy client với các máy chủ DNS và giữa các máy chủ DNS với nhau.
Chính vì DNS hội tụ đầy đủ các yếu tố: Phần cứng, phần mềm và giao thức như đã trình bày ở trên nên hệ thống DNS luôn luôn tiềm ẩn các lỗ hổng mà hacker có thể sử dụng để khai thác và làm chủ hệ thống, từ đó gây ra các ảnh hưởng tới người dùng.
Các kịch bản tấn công hệ thống DNS đã xảy ra
1. DNS spoofing (DNS cache poisoning)
Đây là một phương pháp tấn công máy tính nhờ đó mà dữ liệu được thêm vào hệ thống cache của các DNS server. Từ đó, các địa chỉ IP sai (thường là các địa chỉ IP do attacker chỉ định) được trả về cho các truy vấn tên miền nhằm chuyển hướng người dùng tư một website này sang một website khác.
Để khai thác theo hướng này, attacker lợi dụng lỗ hổng của phần mềm DNS, do các DNS responses không được xác nhận để đảm bảo chúng được gửi từ các server được xác thực, các bản ghi không đúng đắn sẽ được cache lại và phục vụ cho các user khác.
Ví dụ: Attacker thay thế địa chỉ IP cho một bản ghi DNS trên DNS server thành địa chỉ IP của server mà attacker đang có quyền điều khiển. Trên server này, attacker có triển khai một số phần mềm mã độc để khi người dùng bị chuyển qua sẽ dễ dàng bị nhiễm mã độc.
2. DNS Amplification Attack
Đây là một trong những phương pháp được sử dụng để tấn công từ chối dịch vụ, thuộc vào lớp reflection attack.
Có hai yếu tố cơ bản cho cách thức tấn công này:
– Địa chỉ tấn công được che giấu nhờ ánh xạ sang một bên thứ ba (Reflection)
– Traffic mà người bị hại nhận được sẽ lớn hơn traffic gửi từ attacker (Amplification)
3. Giả mạo máy chủ DNS
Đây là cách một số phần mềm quảng cáo hay trojan thường hay thực hiện. Đầu tiên, chúng dựng lên các DNS server, giống với chức năng DNS server thông thường. Tuy nhiên, các DNS server này có khả năng điều khiển được để thêm, bớt hay chỉnh sửa các bản ghi DNS nhằm chuyển hướng người dùng tới các địa chỉ IP không chính xác với mục đích: gia tăng quảng cáo, cài mã độc, thay đổi kết quả tìm kiếm…
Để thực hiện hành vi này, các phần mềm độc hại sau khi được cài vào máy tính người dùng, chúng sẽ tìm cách để thay đổi cấu hình DNS của người dùng thành địa chỉ DNS của phần mềm đã thiết lập từ trước. Qua đó, các truy vấn DNS của người dùng thay vì đi qua các DNS server của ISP hoặc do người dùng thiết lập thì lại đi qua các DNS server của attacker.
Một biến thể của hình thức này chính là việc các phần mềm độc hại thay đổi file host (Trên hệ điều hành Windows) để chỉ định địa chỉ IP cho một số website mà attacker mong muốn.
Attacker tấn công hệ thống DNS với mục đích gì?
Khi tấn công hệ thống DNS, attacker mong muốn thực hiện một số hành vi:
- Lừa người sử dụng truy cập tới các website giả mạo do attacker lập ra để thực hiện các hành vi lừa đảo, ăn cắp mật khẩu, thông tin đăng nhập, cài cắm các phần mềm độc hại. Các thông tin này có thể vô cùng quan trọng: tài khoản ngân hàng, tài khoản quản trị, …
- Tăng traffic cho website: attacker chuyển hướng người dùng khi họ truy cập các website phổ biến về địa chỉ website mà attacker muốn tăng traffic. Mỗi khi người dùng truy cập một trong các website kia thì trả về địa chỉ IP website mà attacker mong muốn, qua đó làm tăng traffic cho website.
- Gián đoạn dịch vụ: mục đích này nhằm ngăn chặn người dùng sử dụng một dịch vụ của một nhà cung cấp nào đó.
Cách phát hiện và một số biện pháp phòng tránh
Thông thường thì rất khó để người dùng có thể nhận biết được máy tính cá nhân của mình đang bị tấn công thông qua hệ thống DNS.
Đơn giản nhất chúng ta có thể kiểm tra địa chỉ DNS server trên máy tính của mình, kiểm tra nội dung file host (Hệ điều hành windows). Chú ý sự thay đổi bất thường về giao diện, nội dung của các website thông thường.
Để phòng tránh, chúng ta cần thiết lập địa chỉ DNS server trỏ về các DNS server tin cậy, thường xuyên kiểm tra các thông số cấu hình DNS, cài đặt các phần mềm antivirus để bảo vệ máy tính và truy cập tốt hơn.
Một số tấn công DNS trong thực tế
- Public DNS server của google bị tấn công chiếm quyền điều khiển: http://thehackernews.com/2014/03/google-public-dns-server-traffic.html
- Tháng 8/2013 hai website: thegioididong.com và facebook.com.vn bị nhóm hacker 1937cn (nhóm hacker mạnh nhất của Trung Quốc).
Tổng quan về hệ thống giám sát an ninh mạng
Trong phần này tôi sẽ nêu ra những khái niệm cơ bản được nhắc đến trong các hệ thống giám sát an ninh mạng. Yêu cầu trong việc triển khai một hệ thống giám sát an ninh mạng. Những công việc mà một hệ thống giám sát an ninh mạng cần thực hiện. Các nội dung dưới đây là kinh nghiệm của bản thân tôi khi làm việc với dự án xây dựng một hệ thống giám sát an ninh mạng cho doanh nghiệp.
1. Một số khái niệm cơ bản
Các thành phần trong hệ thống mạng
Để một hệ thống mạng hoạt động tốt nó bao gồm rất nhiều thành phần, hoạt động trên các nền tảng và mỗi trường khác nhau
Các máy trạm
Các máy chủ
Các thiết bị hạ tầng mạng: Router, switch, Hub…
Các thiết bị, hệ thống phát hiện và phòng chống xâm nhập: IDS/IPS, Snort, FireWall…
Các ứng dụng chạy trên các máy chủ và máy trạm
Các thành phần trong hệ thống mạng
Log hệ thống
Là một thành phần quan trọng của hệ thống mạng. Nó lưu lại một cách chính xác mọi hoạt động của hệ thống, tình trạng hoạt động của hệ thống, các ứng dụng, các thiết bị đã và đang hoạt động trong hệ thống.
Các loại log chính trong hệ thống
- Log Access: Là log ghi lại toàn bộ thông tin truy cập của người dùng tới hệ thống, truy cập của các ứng dụng tới cơ sở dữ liệu…
- Log Event: là log ghi lại chi tiết những sự kiện mà hệ thống đã thực hiện. Log ứng dụng, log của hệ điều hành…
- Log Device: là log ghi lại tình trạng hoạt động của các thiết bị phần cứng và phần mềm đang được sử dụng: Router, Switch, IDS, IPS…
Log là một thành phần cực kỳ hữu hiệu cho việc giám sát cũng như khắc phục các sự cố trong hệ thống mạng. Tuy nhiên, với những hệ thống lớn, chạy nhiều ứng dụng, lượng truy cập cao thì công việc phân tích Log thực sự là một điều vô cùng khó khăn.
Giám sát an ninh mạng (Network Security Mornitoring – NSM)
Giám sát an ninh mạng là việc thu thập các thông tin trên các thành phần của hệ thống, phân tích các thông tin, dấu hiệu nhằm đánh giá và đưa ra các cảnh báo cho người quản trị hệ thống.
Đối tượng của giám sát an ninh mạng là tất cả các thành phần, thiết bị trong hệ thống mạng
- Các máy trạm
- Cơ sở dữ liệu
- Các ứng dụng
- Các server
- Các thiết bị mạng
2. Các bước cần thực hiện của một hệ thống NSM
Thu thập dữ liệu (Collection)
Việc thu thập dữ liệu ở đây chính là việc lấy các thông tin liên quan đến tình trạng hoạt động của các thiết bị trong hệ thống mạng. Tuy nhiên, trong những hệ thống mạng lớn thì các dịch vụ hay các thiết bị không đặt tại trên máy, một địa điểm mà nằm trên các máy chủ, các hệ thống con riêng biệt nhau. Các thành phần hệ thống cũng hoạt động trên những nền tảng hoàn toàn khác nhau. Mô hình Log tập trung được đưa ra để giải quyết vấn đề này. Cụ thể, là tất cả Log sẽ được chuyển về một trung tâm để phân tích và xử lý.
Với mỗi thiết bị có những đặc điểm riêng và các loại log cũng khác nhau. Như log của các thiết bị mạng như: Router, Swich. Log của các thiết bị phát hiện xâm nhập: IDS, IPS, Snort … Log của các Web Server, Application Server, Log Event, Log Registry của các Server Windows, Unix/Linux.
Cách thức thu thập dữ liệu trong hệ thống NSM
1. The Push Method (Phương pháp đẩy): Các sự kiện từ các thiết bị, Các máy trạm, Server sẽ được tự động chuyển về các Collector theo thời gian thực hoặc sau mỗi khoảng thời gian phụ thuộc vào việc cấu hình trên các thiết bị tương ứng. Các Collector của Log Server sẽ thực hiện việc nghe và nhận các sự kiện khi chúng xảy ra. Ví dụ như: NetFlow, Syslog-ng Message(Syslog-ng gồm 2 thành phần là Syslog-Agent và Syslog-Server), Access-list (ACL) logs …
Phân tích dữ liệu
Khi đã thu thập được những thông tin về hệ thống thì công việc tiếp theo là phân tích thông tin, cụ thể là việc thực hiện chỉ mục hóa dữ liệu, phát hiện những điều bất thường, những mối đe dọa của hệ thống. Dựa trên những thông tin về lưu lượng truy cập, trạng thái truy cập, định dạng request… Ví dụ như lưu lượng truy cập bỗng dưng tăng vọt tại một thời điểm. Đây có lẽ là nơi thích hợp để Big data lên tiếng.
Sau khi đã thực hiện việc phân tích dữ liệu từ các thông tin thu thập được việc tiếp theo là thực hiện việc đánh giá, đưa thông tin cảnh báo tới người quản trị và thực hiện những công tác nhằm chống lại những mỗi đe dọa, khắc phục các sự cố có thể sảy ra.
Cảnh báo có thể thông qua email, SMS, hoặc thực thi các mã script nhằm hạn chế hậu quả của sự cố. Khi xảy ra sự cố, hệ thống sẽ tự động gửi email, sms cho người quản trị và cũng có thể chạy script để thêm một địa chỉ IP có biểu hiện tấn công và danh sách đen của Firewall. Việc này đòi hỏi người lập trình phải có hiểu biết sâu và kinh nghiệm về hệ thống.
Ứng dụng trò chơi Android độc hại ảnh hưởng hơn 1 triệu người dùng
Không ngạc nhiên khi Google Play Store tràn ngập vô số ứng dụng độc hại khiến người dùng trở thành nạn nhân của chúng. Các nhà nghiên cứu công ty bảo mật ESET vừa phát hiện Trojan đánh cắp tài khoản Facebook trong một Android game với hơn 1 triệu người dùng.
Ứng dụng độc hại đã được tải về khoảng 50,000-1,000,000 lần
Game Android có tên “Cowboy Adventure” và “Jump Chess” đã bị loại bỏ khỏi Google Play Store. Điều đáng sợ là chưa có thông tin cụ thể số lượng tài khoản Facebook bị đánh cắp thông qua hai ứng dụng này. Cả hai game đều được tạo ra bởi cùng một nhà phát triển phần mềm Tinker Studio.
Làm thế nào Cowboy Adventure biến người dùng Android thành nạn nhân?
Khi đã được cài đặt, Cowboy Adventure tạo ra một cửa sổ đăng nhập Facebook giả mạo yêu cầu người dùng nhập tên Facebook và mật khẩu. Nếu người dùng cung cấp thông tin, mã độc trong ứng dụng game sẽ gửi dữ liệu đến máy chủ của tin tặc.
Nếu bạn đã tải về Cowboy Adventure hay Jump Chess, bạn nên thay đổi ngay mật khẩu Facebook và những tài khoản sử dụng kết hợp với Facebook.
Chuyên gia ESET tin rằng ứng dụng độc hại này không phải lỗi vô ý của nhà phát triển mà có liên quan đến tội phạm công nghệ cao thu thập dữ liệu người dùng.
Một vài bước cơ bản bạn cần nhớ:
- Luôn tải những ứng dụng từ nguồn chính thức như Google Play Store or Apple App Store.
- Đọc nhận xét từ phía người dù”Cowboy Adventure”ng trước khi tải về một ứng dụng (Rất nhiều người dùng tải game “Cowboy Adventure” than phiền rằng game đã khóa tài khoản Facebook của họ)
- Luôn sử dụng xác thực hai nhân tố khiến tin tặc khó có thể truy cập tài khoản của bạn.
- Luôn cài đặt phần mềm diệt virus trên điện thoại như Avast, AVG, ESET, Kaspersky và Bitdefender.
(Theo: securitydaily)
Có thể bạn quan tâm:
Android, iOS, BlackBerry hệ điều hành nào bảo mật hơn
Tài liệu hay về mạng và bảo mật
Series Bảo Mật Nhập Môn – Bảo mật cơ bản cho developer
GitHub thêm cảnh báo bảo mật cho Java và .NET
5 lỗi bảo mật cơ bản trong Rails app hay gặp trong thực tế
Đặt mã bảo vệ cho ứng dụng bất kỳ trên thiết bị Android
Toàn văn Luật An ninh mạng năm 2018 của Việt Nam
Mật khẩu mặc định của các camera an ninh thông dụng trên thị trường
Mã hóa giọng nói qua di động trở thành xu hướng mới
Xóa mật khẩu file excel chỉ với 6 bước đơn giản
Lấy lại mật khẩu của mysql | Mobile Solution
Tài khoản mặc định của các loại Modem internet
Đổi DNS cho điện thoại và tablet Android
Quá trình kết nối và các giao tiếp giữa mạng với máy điện thoại
Điện thoại thông minh (smartphone) là gì?
Tất tần tật về tác chiến điện tử
Giới thiệu nền tảng hệ điều hành (OS) trên điện thoại
Facebook bị hack và những nguy hiểm khó lường hết
DVMS chuyên:
- Tư vấn, xây dựng, chuyển giao công nghệ Blockchain, mạng xã hội,...
- Tư vấn ứng dụng cho smartphone và máy tính bảng, tư vấn ứng dụng vận tải thông minh, thực tế ảo, game mobile,...
- Tư vấn các hệ thống theo mô hình kinh tế chia sẻ như Uber, Grab, ứng dụng giúp việc,...
- Xây dựng các giải pháp quản lý vận tải, quản lý xe công vụ, quản lý xe doanh nghiệp, phần mềm và ứng dụng logistics, kho vận, vé xe điện tử,...
- Tư vấn và xây dựng mạng xã hội, tư vấn giải pháp CNTT cho doanh nghiệp, startup,...
Vì sao chọn DVMS?
- DVMS nắm vững nhiều công nghệ phần mềm, mạng và viễn thông. Như Payment gateway, SMS gateway, GIS, VOIP, iOS, Android, Blackberry, Windows Phone, cloud computing,…
- DVMS có kinh nghiệm triển khai các hệ thống trên các nền tảng điện toán đám mây nổi tiếng như Google, Amazon, Microsoft,…
- DVMS có kinh nghiệm thực tế tư vấn, xây dựng, triển khai, chuyển giao, gia công các giải pháp phần mềm cho khách hàng Việt Nam, USA, Singapore, Germany, France, các tập đoàn của nước ngoài tại Việt Nam,…
Quý khách xem Hồ sơ năng lực của DVMS tại đây >>
Quý khách gửi yêu cầu tư vấn và báo giá tại đây >>