Rate this post

Một cuộc tấn công brute force có thể tự biểu hiện theo nhiều cách khác nhau, nhưng chủ yếu bao gồm việc kẻ tấn công định cấu hình các giá trị được xác định trước, đưa ra yêu cầu tới máy chủ bằng cách sử dụng các giá trị đó và sau đó phân tích phản hồi. Để đạt được hiệu quả, kẻ tấn công có thể sử dụng một cuộc tấn công từ điển (có hoặc không có đột biến) hoặc một cuộc tấn công brute force truyền thống (với các lớp ký tự nhất định, ví dụ: chữ và số, đặc biệt, trường hợp (trong) nhạy cảm). Xem xét một phương pháp nhất định, số lần thử, hiệu quả của hệ thống thực hiện cuộc tấn công và hiệu quả ước tính của hệ thống bị tấn công, kẻ tấn công có thể tính toán khoảng thời gian sẽ mất bao lâu để gửi tất cả các giá trị đã chọn trước đó.

Các cuộc tấn công Brute-force thường được sử dụng để tấn công xác thực và khám phá nội dung / trang ẩn trong ứng dụng web. Các cuộc tấn công này thường được gửi qua các yêu cầu GET và POST tới máy chủ. Liên quan đến xác thực, các cuộc tấn công vũ phu thường được thực hiện khi chính sách khóa tài khoản không được áp dụng.

Brute Force Attack là gì ?

Brute Force Attack là một loại tấn công mà hacker sử dụng các cố gắng liên tục với mục đích để đạt được mật khẩu hoặc bất kỳ thông tin nào được bảo mật trong một hệ thống hoặc website. Điều này thường được thực hiện bằng cách tạo ra một lượng lớn các yêu cầu đăng nhập với các tên đăng nhập và mật khẩu khác nhau, và cố gắng để tìm ra thông tin được bảo mật. Brute Force Attack là một trong những loại tấn công mã hóa mạnh nhất, nhưng cũng là một trong những loại tấn công chậm nhất vì nó yêu cầu một số lượng lớn các yêu cầu để đạt được thông tin mục tiêu.

Xem thêm Tấn công từ chối dịch vụ (DDoS attack)

Ví dụ 1

Một ứng dụng web có thể bị tấn công thông qua brute force bằng cách lấy một danh sách từ các trang đã biết, chẳng hạn như từ hệ thống quản lý nội dung phổ biến và chỉ cần yêu cầu từng trang đã biết, sau đó phân tích mã phản hồi HTTP để xác định xem trang đó có tồn tại trên máy chủ mục tiêu hay không.

DirBuster là một công cụ thực hiện chính xác điều này.

Các công cụ khác cho kiểu tấn công này như sau:

– dirb – WebRoot

dirb có khả năng:

  • cài đặt cookie
  • thêm bất kỳ tiêu đề HTTP nào – sử dụng PROXY
  • thay đổi các đối tượng đã được tìm thấy – kiểm tra (các) kết nối http – tìm kiếm danh mục hoặc tệp bằng cách sử dụng từ điển và mẫu đã xác định – và hơn thế nữa

Kiểm tra đơn giản nhất để thực hiện là:

./dirb http://testsite.test/
-----------------
DIRB v1.9
By The Dark Raver
-----------------
START_TIME: Mon Jul  9 23:13:16 2007
URL_BASE: http://testsite.test/
WORDLIST_FILES: wordlists/common.txt
SERVER_BANNER: lighttpd/1.4.15
NOT_EXISTANT_CODE: 404 [NOT FOUND]
(Location: '' - Size: 345)

-----------------

Generating Wordlist...
Generated Words: 839

---- Scanning URL: http://testsite.test/ ----
FOUND: http://testsite.test/phpmyadmin/
       (***) DIRECTORY (*)

Trong đầu ra, kẻ tấn công được thông báo rằng thư mục phpmyadmin / đã được tìm thấy. Kẻ tấn công hiện đã tìm thấy một thư mục quan tâm tiềm năng trong ứng dụng này. Trong các mẫu của dirb, trong số các mẫu khác, có một từ điển chứa thông tin về các cấu hình httpd không hợp lệ. Từ điển này sẽ phát hiện những điểm yếu của loại này.

Ứng dụng WebRoot.pl, được viết bởi CIRT.DK, có các cơ chế nhúng để phân tích cú pháp phản hồi của máy chủ và dựa trên cụm từ do kẻ tấn công chỉ định, sẽ đo lường nếu phản hồi của máy chủ được mong đợi.

Ví dụ:

./WebRoot.pl -noupdate -host testsite.test -port 80 -verbose -match "test" -url "/private/<BRUTE>" -incremental lowercase -minimum 1 -maximum 1

`oo00oo00oo00oo00oo00oo00oo00oo00oo00oo00oo00oo00`
`o          Webserver Bruteforcing 1.8          o`
`0  ************* !!! WARNING !!! ************  0`
`0  ******* FOR PENETRATION USE ONLY *********  0`
`0  ******************************************  0`
`o       (c)2007 by Dennis Rand - CIRT.DK       o`
`oo00oo00oo00oo00oo00oo00oo00oo00oo00oo00oo00oo00`

`[X] Checking for updates                - NO CHECK`
`[X] Checking for False Positive Scan    - OK`
`[X] Using Incremental                   - OK`
`[X] Starting Scan                       - OK`
`   GET /private/b HTTP/1.1`
`   GET /private/z HTTP/1.1`

`[X] Scan complete                       - OK`
`[X] Total attempts                      - 26`
`[X] Sucessfull attempts                 - 1`
`oo00oo00oo00oo00oo00oo00oo00oo00oo00oo00oo00oo00`

WebRoot.pl found one file "/private/b" on testsite.test, which contains
phrase "test".

Một ví dụ khác là kiểm tra phạm vi giá trị của biến:

./WebRoot.pl -noupdate -host testsite.test -port 80 -verbose -diff "Error" -url "/index.php?id=&lt;BRUTE>" -incremental integer -minimum 1 -maximum 1

Phòng ngừa:

Một trong những vấn đề chính với các công cụ như dirb / dirbuster là phân tích phản hồi của máy chủ. Với cấu hình máy chủ nâng cao hơn (ví dụ: với mod_rewrite), các công cụ tự động đôi khi không thể xác định lỗi “Không tìm thấy tệp” do phản hồi của máy chủ là mã phản hồi HTTP 200 nhưng chính trang lại cho biết “Không tìm thấy tệp”. Điều này có thể dẫn đến kết quả dương tính giả nếu công cụ brute force chỉ dựa vào mã phản hồi HTTP.

Burp Suite, có thể được sử dụng để phân tích cú pháp các phần cụ thể của trang được trả về, tìm kiếm các chuỗi nhất định trong nỗ lực giảm các kết quả dương tính giả.

Ví dụ 2

Liên quan đến xác thực, khi không có chính sách mật khẩu, kẻ tấn công có thể sử dụng danh sách tên người dùng và mật khẩu phổ biến để cưỡng bức trường tên người dùng hoặc mật khẩu cho đến khi xác thực thành công.

Php-Brute-Force-Attack Detector: Phát hiện máy chủ web của bạn đang bị quét bởi các công cụ brute force như WFuzz, OWASP DirBuster và các trình quét lỗ hổng như Nessus, Nikto, Acunetix, v.v. Điều này giúp bạn nhanh chóng xác định khả năng bị thăm dò bởi những kẻ xấu muốn đào các lỗ hổng bảo mật có thể xảy ra.

Cách phòng chống brute force?

Có một số cách phòng chống Brute Force Attack:

  1. Sử dụng mật khẩu mạnh: Sử dụng mật khẩu dài và phức tạp có chứa cả chữ hoa, chữ thường, số và ký tự đặc biệt giúp tăng độ khó để bị tấn công.
  2. Sử dụng xác thực hai yếu tố: Xác thực hai yếu tố (2FA) cung cấp một lớp bảo mật thêm cho tài khoản của bạn bằng cách yêu cầu một mã xác thực được gửi đến điện thoại hoặc email của bạn.
  3. Giới hạn số lần đăng nhập sai: Giới hạn số lần đăng nhập sai giúp chặn những tấn công Brute Force.
  4. Sử dụng CAPTCHA: Sử dụng CAPTCHA giúp ngăn chặn các bot tự động đăng nhập sai.
  5. Tạo ra một danh sách đen: Tạo ra một danh sách đen các địa chỉ IP đã bị cấm hoặc đã đăng nhập sai nhiều lần giúp bảo vệ trước các tấn công Brute Force từ cùng một địa chỉ IP.

Xem thêm Replay attack là gì?

Các công cụ tấn công brute force?

Có nhiều công cụ tấn công brute force được sử dụng trong thực tế, trong đó một số công cụ phổ biến nhất bao gồm:

  1. John the Ripper: một trình mã hóa và giải mã mật khẩu mạnh mẽ
  2. THC-Hydra: một công cụ tấn công mạnh mẽ, có thể tấn công nhiều giao thức khác nhau
  3. Ncrack: một trình tấn công mạnh mẽ, có thể tấn công các mạng công nghiệp
  4. Aircrack-ng: một trình tấn công không dây
  5. RainbowCrack: một trình tấn công mật khẩu mạnh mẽ với cơ chế hash.

Những công cụ này có thể được sử dụng để tấn công các mật khẩu và các thông tin bảo mật khác, nhưng nó cũng có thể gây hại cho hệ thống hoặc dữ liệu của người dùng. Vì vậy, chúng tôi khuyến khích sử dụng các công cụ này chỉ cho mục đích tìm hiểu và đào tạo, hoặc trong một môi trường an toàn.

Xem thêm Cyber attack

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Contact Me on Zalo
Call now