Brute force attack – khái niệm và ứng phó
Khái niệm:
Brute force attack là tên gọi của một loại hình tấn công mạng nhằm mục đích Truy cập được vào chế độ điều khiển bên trong theo cơ chế Login. Tùy mục đích mà ta sẽ thấy mục tiêu là gì.
Ví dụ: Để tìm cách truy cập vào 1 tài khoản web, mục tiêu của Brute Force là giao diện truy cập.
Để tìm cách xâm nhập vào 1 hệ thống khóa mã màn hình (login vào window chẳng hạn), mục tiêu của nó có thể là giao diện login window hay giao thức truy cập nào đó.
Để tham gia vào một cái wifi mã hóa, mục tiêu của nó tất nhiên là giao diện login của card mạng, máy phát.
Nôm na lại về mặt mục đích, Brute force là loại tấn công nhằm vào mật khẩu – quyền truy cập.
Cơ chế hành sự:
Brute force là thể loại củ chuối và tầm thường nhất quả đất, nhưng về mặt lý thuyết thì nó lại … luôn có tỷ lệ thành công cao. Lý do nằm ở cơ chế của nó:
– Brute force đơn giản là thử lần lượt các mật mã (đôi khi là ghép với cả tên tài khoản nếu tin tặc chưa có) vào giao diện truy cập.
– Kết quả: Theo lý thuyết xác xuất thì tỷ lệ của nó là rất thấp và tốn công.
– Nâng cấp: Tin tặc sẽ cho ra đời các phần mềm có chức năng tự chạy thử các đoạn code và truy cập liên tục, được thì ngon, không được thì thử lại cái khác theo cơ chế vòng lặp thành công mới dừng.
– Hậu quả: Trang web bị tấn công bằng cách này sẽ bị tăng truy cập địa chỉ login một cách chóng mặt, thông thường là các trang web có hệ thống mã nguồn mở (tên của file truy cập bị công khai) mà không có hệ thống “bảo an truy cập” . Nếu là wifi? Chắc là mất pass :)) …
– Hiệu quả: Lý thuyết xác xuất chỉ ra rằng cái này rất hên xui, tuy nhiên, tỷ lệ thành công của brute force tăng cao khi:
+ Người dùng đặt mật khẩu quả lởm, ít ký tự và dễ đoán (thường thì phần mềm tấn công sẽ thử với 1 loạt các mật khẩu thông thường trước rồi mới thử các mật khẩu phi logic)
+ Thời gian hành sự. Khỏi phải nói, với 1 000 000 phép thử không thành công liên tiếp, trung bình mỗi phép là 10s thì bạn cần 10 000 000 giây = 2777 giờ = 115 ngày = 3,8 tháng.
–> So? chờ mùa quít thôi :))
Brute force và web wordpress
Thật ức chế là wordpress web với hệ thống nguồn mở cũng là một mục tiêu phổ biến của BF (brute force). File wp-admin.php quá thông dụng để 1 tên Amateur gõ địa chỉ, còn tên truy cập thì đơn giản là xem bài viết, check url.
Tất nhiên, bạn có thể tự bảo vệ mình, nhưng trước hết hãy nói đến những phiền toái mà nó gây ra.
Đa phần các dịch vụ hosting đều đề ra cơ chế tự bảo vệ mình khi lượng truy cập của một khách hàng nào đó vào file login tăng cao, hệ thống của họ (server service ) sẽ tự động coi đó là một cuộc tấn công Brute attack. –> Bất kể là ai, nó đồng nghĩa vỡi việc làm tăng bandwidth của máy chủ và còn ảnh hưởng đến người dùng khác nữa. –> Hệ thống tự kích hoạt cơ chế mã Captcha của mình mỗi khi có truy cập đến file log in đó.
“WordPress attack protection CAPTCHA. Enter username: 6wybg Password: The result of math 32+5“
– Đây là một thông báo captcha mỗi khi bạn truy cập trang login trên 1 hosting đã kích hoạt cơ chế bảo vệ truy cập – bạn cần nhập tài khoản 6wybg với mật khẩu là 37 để có thể vào trang truy cập tài khoản.
Hậu quả là mỗi lần bạn truy cập sau đó, bạn có thể thấy cái thông báo điền Mật khẩu và user Random của Server thì mới được truy cập. Phiền quá!
Xử lý cái vụ này thì bạn phải liên hệ với bộ phận hỗ trợ mà đề nghị hủy cơ chế Captcha rồi.
Ứng phó Brute Force attack dành cho wordpress web
Nói là cho wordpress vì mình xài wordpress, bạn có thể áp dụng vài cách cho các nền tảng web khác. Nguyên tắc giống nhau mà: Triệt hạ cơ chế auto của tin tặc.
– Đề phòng:
+ Đặt tên hiển thị user khác tên truy cập. Khà khà, bạn có thể thấy tôi là Giangliao, nhưng khi truy cập, tôi có thể là KittyBabe thì sao @@. Bằng cách này thì tin tặc đã mất đi định hướng đầu tiên rồi.
+ Đặt mật khẩu cấp cao. Bạn đã thử tạo mật khẩu khi lập tài khoản Gmail chưa? Nguyên tắc của một mật khẩu cấp cao là: Dài, nhiều ký tự, có lẫn số, vị trí ký tự đảo điên – cái này thì chống keylogger ế. À mà hiện tại WordPress đã cập nhật hỗ trợ đặt mật khẩu rồi nhé. Bạn vào giao diện Dashboard > User để thử xem, cứ đặt mật khẩu được đánh giá mạnh mà xài : ))
+ Che giấu file/địa chỉ login – Có nhiều cách, bạn có thể sử dụng plugin security nào đó, bạn cũng có thể tự mình cấu tạo lại file login. Hãy cẩn thận, cái này khá lằng nhằng, có khi chính mình hủy mình đấy nhé!
+ Sử dụng plugin Captcha cho phần login. Bạn có thể gõ từ khóa này trên giao diện cài đặt plugin trong dashboard wordpress. Có cả tỷ kết quả hỗ trợ free. Từ nay thì mỗi lần truy cập thử sẽ là 1 mật khẩu xác nhận ngẫu nhiên, và vòng lặp của phần mềm tấn công bị phá.
+ Tích hợp Google Recaptcha vào trang web của bạn, nó sẽ giúp bạn tạo một bức tường xác nhận “i’m not robot” cho login page. Đây là cách mà tôi đang sử dụng, free từ google luôn.
https://www.google.com/recaptcha
-
Khai báo trang web của bạn với Google Recaptcha
-
Sử dụng 1 plugn để khai do Google cung cấp. Mình đang dùng Google Captcha (reCAPTCHA) by BestWebSoft – Bạn có thể tìm ra cả đống free plugin cho việc này.
+ Sử dụng plugin iThemes Security hoặc 1 plugin bảo mật nào đó. Nó sẽ giúp khóa 1 IP khi nó đăng nhập sai 1 số lần đã được cài đặt từ bạn, và nhiều tính năng khác. Nếu có điều kiện, bạn có thể mua HIDE MY WP plugin. Giá của nó là 23 USD. Hàng có phí thì luôn có tính năng khủng rồi !
+ Sử dụng plugin login attem, cũng có tác dụng khóa khi đăng nhập sai, tuy nhiên, nó lại khóa luôn tài khoản đó trong 1 thời gian do bạn cài đặt.
Captcha là gì? Đó là hệ thống xác nhận sử dụng 1 lần, với tài khoản và mật khẩu cấp ngẫu nhiên không theo qui tắc tính nào cả. Nó hữu dựng để bảo vệ 1 trang web nào đó, chống Spam và nhiều ứng dụng khác nữa.
+ Thường xuyên backup web. nên nhớ, back up (sao lưu) web wordpress nói riêng và hệ web động theo WAMP bao gồm sao lưu file hosting và sao lưu cơ sở dữ liệu – SQL Database. Cho chúng nó hack, ta lại .. phục hồi.
Bạn có thể sử dụng UpdraffPlus plugin để thực hiện công việc backup một cách tự động nhé. Hoàn toàn miễn phí và hiệu quả.
+ Sử dụng hệ thống bảo vệ của dịch vụ hosting. Hiện nay, các gói dịch vụ của nhà cung cấp host thường tích hợp tính năng này, hãy kích hoạt nó !
– Ứng phó:
Nếu đã trót bị tấn công thành công, bạn sẽ … bị mất tài khoản quản trị. Hậu quả có thể xảy ra: Thay đổi nội dung bài viết, up các nội dung xấu, phá web, hủy hoại hệ thống web, … Đừng quá lo lắng nếu bạn đã có đề phòng từ trước:
+ Sử dụng file backUp để khôi phục thư mục web trên host.
+ Sử dụng file Database backup để khôi phục cài đặt hệ thống của web – cái này hãy tìm hiểu trong My SQL database – nó sẽ giúp bạn thực hiện việc này.
+ Thay đổi lại mật khẩu, cập nhật lại hệ thống bảo vệ bằng các plugin bảo mật web,..
Ngoài ra, bạn cũng đừng có sợ, vì bạn còn một quyền cao hơn: Truy cập tài khoản hosting. Với nó bạn có toàn quyền tác nghiệp với Files, database. Hãy truy cập php admin, đến database của bạn, tìm đến bản ghi chưa thông tin user admin và đổi lại giá trị mật khẩu.
Việc này cần một chút “trick” để mật khẩu của bạn có giá trị thực hiện, tôi sẽ thực hiện một bài hướng dẫn sắp tới.
Mấu chốt – Hãy thực hiện bakup thường xuyên 🙂
Giangliao says. – bài tổng hợp ngắn về Brute foce attack.
Like và chia sẻ nhé ! Thanks!