Advertisement

Responsive Advertisement

Advent of Cyber 3 (2021) - Day 3

 Task 8  [Day 3] Web Exploitation Christmas Blackout

Mục tiêu học tập

Trong nhiệm vụ hôm nay, chúng ta sẽ sử dụng các kỹ năng và kỹ thuật điều tra của mình để khám phá nội dung chưa được liệt kê và thử một số xác thực thông thường bằng cách sử dụng các manh mối xung quanh chúng ta.

Khám phá nội dung và tại sao nó lại hữu ích?

Trước khi bắt đầu tìm kiếm nội dung, hãy xác định "nội dung" thực sự là gì. Nội dung là tài sản và hoạt động bên trong của ứng dụng mà chúng tôi đang thử nghiệm. Nội dung có thể là các tệp, thư mục hoặc đường dẫn không nhất thiết phải được công chúng truy cập.

Ví dụ: bạn có thể có một blog, nơi bạn đăng về những món ngon của mình! Bạn muốn mọi người xem tất cả các món ăn vặt ngon của mình, nhưng bạn không muốn mọi người có thể quản lý xem những món ăn vặt ngon nào đang chờ đánh giá - Bạn có thể ẩn bảng quản trị để không công khai!


Hãy mở rộng điều này. Máy chủ web, trừ khi được định cấu hình khác, được thiết kế để phục vụ các tệp và thư mục này, miễn là bạn biết tên.


Khám phá nội dung là một kỹ thuật hữu ích cần có trong kho vũ khí của chúng tôi vì nó cho phép chúng tôi tìm thấy những thứ mà chúng tôi không nên thấy. Ví dụ, chúng tôi có thể tìm thấy:

  • Tệp cấu hình
  • Mật khẩu 
  • Sao lưu
  • Hệ thống quản lý nội dung
  • Trang tổng quan hoặc cổng thông tin quản trị viên

Đây chỉ là một số ví dụ về các loại thông tin mà chúng tôi có thể khám phá bằng cách khám phá nội dung. Chúng ta có thể tìm thấy những phần thông tin này vì chúng được lưu trữ trong thư mục (sẽ có tên) hoặc tệp (sẽ có cả tên và phần mở rộng). Điều này có nghĩa là chúng tôi có thể tìm kiếm các tệp theo phần mở rộng của chúng, ví dụ: khám phá các tệp văn bản có phần mở rộng là .txt.

Bạn có thể thực hiện việc này theo cách thủ công bằng cách nghĩ đến một số tên như "admin" hoặc "password.txt" và điều hướng đến nó trong trình duyệt của bạn. Tuy nhiên, chúng ta có thể sử dụng các công cụ để thực hiện quá trình này với tốc độ nhanh hơn đáng kể. Nhập Dirbuster. Dirbuster là một công cụ mà chúng tôi có thể sử dụng để tự động hóa quá trình này cho chúng tôi. Công cụ này hoạt động bằng cách chấp nhận một danh sách từ là một tệp chứa mọi thứ mà chúng ta muốn tìm kiếm và sau đó là một vài đối số khác. Hãy chứng minh điều này trong các đoạn mã dưới đây:

My Wordlist
cmnatic@thm$ cat wordlist.txt

admin/
docs/
config/
install/
install-en/

Dirbuster sẽ quét trang web "santascookies.thm" để tìm các thư mục được liệt kê trong danh sách từ này. Để sử dụng Dirbuster để khám phá nội dung trên trang web này, chúng tôi sẽ sử dụng lệnh dirb và cung cấp một số thông tin như URL của trang web và vị trí của danh sách từ. Lệnh cuối cùng của chúng tôi sẽ giống như một cái gì đó tương tự như đoạn mã bên dưới ::


An example Dirbuster command
cmnatic@thm$ dirb http://santascookies.thm/ /usr/share/wordlists/mywordlist.txt

Ở trên, chúng tôi đã cung cấp cho Dirbuster các lệnh sau:

  1. URL của trang web
  2. Vị trí (đường dẫn đầy đủ) trên cỗ máy tấn công danh sách từ của chúng tôi. Nếu bạn không quen với điều này, hãy xem Các nguyên tắc cơ bản của Linux.

Bây giờ, khi chúng ta thực hiện lệnh này, Dirbuster sẽ tìm kiếm sự tồn tại của một thư mục trên trang web bằng cách sử dụng mọi giá trị trong danh sách từ mà chúng ta đã tạo.

Listing example wordlists to use with Dirbuster
cmnatic@thm:/usr/share/wordlists/dirb# ls 

big.txt     euskera.txt            mutations_common.txt  spanish.txt
catala.txt  extensions_common.txt  others                stress
common.txt  indexes.txt            small.txt             vulns


Khả năng khám phá nội dung của bạn chỉ tốt như danh sách từ của bạn. Bạn sẽ tìm thấy một bộ sưu tập danh sách từ mã nguồn mở khác như SecLists, nơi bạn có thể sử dụng kết hợp ngữ cảnh và danh sách từ để khám phá nội dung.

Thông tin xác thực mặc định

Các ứng dụng và dịch vụ web thường đi kèm với một cặp thông tin xác thực mặc định. Các nhà phát triển để lại các thông tin đăng nhập này để bạn có thể nhanh chóng bắt đầu với nền tảng (với hy vọng rằng bạn sẽ thay đổi chúng). Tuy nhiên, như bạn sẽ khám phá ra, không phải ai cũng vậy, hoặc trên thực tế, các ứng dụng thường bao gồm các tài khoản khác không được ghi chép đầy đủ. SecLists cũng cung cấp một danh sách từ cho thông tin đăng nhập mặc định, bạn có thể tìm thấy tại đây.

Ví dụ: hãy đoán cách sử dụng một số tên người dùng phổ biến và kết hợp mật khẩu cho người dùng đặc quyền. Điều này có thể bao gồm:

CountUsernamePassword
#1administratoradministrator
#2
administratorpassword123
#3
administratorletmein

Đôi khi, những thông tin xác thực này được lưu trữ trong tệp cấu hình ứng dụng web hoặc tài liệu công khai. Ví dụ: ứng dụng này, "BikeIT", là một ứng dụng mã nguồn mở để đăng ký Xe đạp của bạn với trang cộng đồng. Quản trị viên được bật theo mặc định, với thông tin đăng nhập được cung cấp trong cả tài liệu và mã nguồn.

  

Ảnh trên hiển thị tài liệu "Đọc cho tôi" (hoặc hướng dẫn) cho ứng dụng web.

$username="Administrator";

$password="letmein123"; //change this

Mã nguồn cũng chứa các thông tin xác thực mặc định này.

Trừ khi quản trị viên cài đặt ứng dụng này thay đổi thông tin đăng nhập, bất kỳ ai cũng có thể đăng nhập bằng chúng nếu họ biết tìm kiếm các thông tin chi tiết này đang được công bố (chẳng hạn như chúng thường xảy ra với các dự án mã nguồn mở) hoặc có khả năng đoán chúng.

Đối với nhiệm vụ hôm nay, bạn sẽ cần triển khai máy dễ bị tấn công gắn với tác vụ này bằng cách nhấn nút "Start Machine" màu xanh lục ở trên cùng bên phải của tác vụ này và TryHackMe AttackBox, có thể được triển khai bằng cách nhấn nút "Start AttackBox" nằm ở trên cùng bên phải của căn phòng.


Thêm tài liệu

    Nếu bạn muốn tìm hiểu thêm (hoặc muốn áp dụng kiến thức của mình) về khám phá nội dung và bỏ qua xác thực, hãy xem các phòng sau trên TryHackMe:
  • Content Discovery
  • Authentication Bypass  
Truy cập website


Mình thấy đây là một trang đăng nhập. Mình sử dụng thêm công cụ dirb để tìm thêm thông tin

Mình thấy đường dẫn admin/ đây là câu trả lời cho câu hỏi đầu tiên. Mình truy cập lại là một trang đăng nhập


Dựa vào bài viết ở trên gợi ý user và pass mình thử nghiệm và tìm ra administrator:administrator

Mình đăng nhập thành công và đọc cờ


Answer the questions below


Using a common wordlist for discovering content, enumerate http://MACHINE_IP to find the location of the administrator dashboard. What is the name of the folder?





In your web browser, try some default credentials on the newly discovered login form for the "administrator" user. What is the password?

Access the admin panel. What is the value of the flag?

Post a Comment

0 Comments