Metasploit - Hướng dẫn nhanh

Metasploit là một trong những công cụ mạnh mẽ nhất được sử dụng để kiểm tra thâm nhập. Hầu hết các nguồn của nó có thể được tìm thấy tại - www.metasploit.com . Nó có hai phiên bản: phiên bản thương mại và phiên bản miễn phí. Không có sự khác biệt lớn trong hai phiên bản, vì vậy trong hướng dẫn này, chúng tôi sẽ chủ yếu sử dụng phiên bản Cộng đồng (miễn phí) của Metasploit.

Là một Hacker có đạo đức, bạn sẽ sử dụng “Phân phối Kali” có phiên bản cộng đồng Metasploit được nhúng trong đó cùng với các công cụ hack đạo đức khác. Nhưng nếu bạn muốn cài đặt Metasploit như một công cụ riêng biệt, bạn có thể dễ dàng thực hiện việc này trên các hệ thống chạy trên Linux, Windows hoặc Mac OS X.

Các yêu cầu phần cứng để cài đặt Metasploit là:

  • 2 GHz + bộ xử lý
  • RAM 1 GB khả dụng
  • 1 GB + dung lượng đĩa khả dụng

Matasploit có thể được sử dụng với dấu nhắc lệnh hoặc với giao diện người dùng Web.

Các phiên bản hệ điều hành được đề xuất cho Metasploit là:

  • Kali Linux 2.0 hoặc các phiên bản cao hơn
  • Nhạc nền 3 và các phiên bản trên
  • Máy chủ Linux Red Hat Enterprise 5.10+
  • Máy chủ Linux Red Hat Enterprise 6.5+
  • Red Hat Enterprise Linux Server 7.1+
  • Ubuntu Linux 10.04 LTS
  • Ubuntu Linux 12.04 LTS
  • Ubuntu Linux 14.04 LTS
  • Windows Server 2008 R2
  • Windows Server 2012 R2
  • Windows 7
  • Windows 8.1

Chúng tôi sẽ thực hiện các hành động sau để thiết lập môi trường thử nghiệm của mình -

  • Chúng tôi sẽ tải xuống Virtual box và cài đặt nó.

  • Tải xuống và cài đặt Kali sự phân phối.

  • Tải xuống và cài đặt Metasploitable đó sẽ là máy hack của chúng tôi.

  • Tải xuống và cài đặt Windows XP sẽ là một máy hack khác.

Tổng cộng, chúng ta sẽ có 3 máy được kết nối hợp lý trong cùng một mạng.

Cài đặt Hộp ảo

Để tải xuống Virtual Box, hãy truy cập www.virtualbox.org/wiki/Downloads

Chọn phiên bản thích hợp tùy thuộc vào hệ điều hành và cấu hình phần cứng của hệ thống.

Sau khi chọn phiên bản Virtual Box phù hợp, màn hình sau sẽ xuất hiện. Nhấp chuộtNext.

Trên màn hình tiếp theo, đặt vị trí mà bạn muốn cài đặt ứng dụng.

Bạn sẽ nhận được thông báo Cảnh báo trước khi tiếp tục cài đặt.

Nhấp vào Có trên màn hình trên sẽ hiển thị màn hình sau. Nhấp chuộtInstall để bắt đầu cài đặt.

Sau khi cài đặt hoàn tất, bạn sẽ nhận được màn hình sau. Bấm Kết thúc để thoát khỏi Trình hướng dẫn Cài đặt.

Bây giờ, bạn sẽ được chào đón với màn hình mở của VirtualBox.

Bây giờ chúng tôi đã sẵn sàng cài đặt phần còn lại của các máy chủ cho hướng dẫn này.

Cài đặt Kali Linux

Bạn có thể tải xuống Kali Linux từ trang web chính thức của nó - www.kali.org/downloads/

Truy cập trang web chính thức và tải xuống hình ảnh Kali Linux VirtualBox dựng sẵn.

Tiếp theo, mở VirtualBox Manager và đi tới Máy → Mới.

Đi tới vị trí đã tải xuống Kali Linux và chọn một tệp đĩa cứng ảo.

Màn hình tiếp theo sẽ nhắc bạn tạo một máy ảo. Nhấn vàoCreate , như được hiển thị trong ảnh chụp màn hình sau.

Bây giờ, bạn có thể khởi động Kali OS. Tên người dùng mặc định của bạn sẽ làroot và mật khẩu của bạn sẽ là toor.

Trong chương này, chúng ta sẽ thảo luận về một số lệnh cơ bản thường được sử dụng trong Metasploit.

Trước hết, hãy mở bảng điều khiển Metasploit trong Kali. Bạn có thể làm như vậy theo đường dẫn: Ứng dụng → Công cụ khai thác → Metasploit.

Khi bạn mở bảng điều khiển Metasploit, bạn sẽ thấy màn hình sau. Được đánh dấu bằng gạch dưới màu đỏ là phiên bản của Metasploit.

Lệnh trợ giúp

Nếu bạn gõ help trên bảng điều khiển, nó sẽ hiển thị cho bạn danh sách các lệnh cốt lõi trong Metasploit cùng với mô tả của chúng.

Lệnh msfupdate

msfupdatelà một lệnh quản trị quan trọng. Nó được sử dụng để cập nhật Metasploit với các khai thác lỗ hổng mới nhất. Sau khi chạy lệnh này, bạn sẽ phải đợi vài phút cho đến khi cập nhật hoàn tất.

Lệnh tìm kiếm

Searchlà một lệnh mạnh mẽ trong Metasploit mà bạn có thể sử dụng để tìm những gì bạn muốn định vị. Ví dụ: nếu bạn muốn tìm các khai thác liên quan đến Microsoft, thì lệnh sẽ là:

msf >search name:Microsoft type:exploit

Đây, search là lệnh, name là tên của đối tượng mà bạn đang tìm kiếm và type là loại tập lệnh bạn đang tìm kiếm.

Lệnh thông tin

Các info lệnh cung cấp thông tin liên quan đến một mô-đun hoặc nền tảng, chẳng hạn như nơi nó được sử dụng, tác giả là ai, tham chiếu lỗ hổng và hạn chế tải trọng của nó.

Trong chương này, chúng ta sẽ xem cách sử dụng ArmitageGUI cho Metasploit. Armitage là một công cụ bổ sung cho Metasploit. Nó hiển thị các mục tiêu, đề xuất khai thác và hiển thị các tính năng nâng cao sau khai thác. Armitage được kết hợp với phân phối Kali. Nếu bạn được yêu cầu thực hiện kiểm tra Thâm nhập, thì bạn sẽ phải sử dụng cả hai công cụ cùng nhau.

Hãy cùng tìm hiểu cách làm việc với Armitage GUI. Đầu tiên, hãy mở bảng điều khiển Metasploit và đi tới Ứng dụng → Công cụ khai thác → Armitage.

Nhập các chi tiết được yêu cầu trên màn hình tiếp theo và nhấp vào Connect.

Tiếp theo, bạn sẽ thấy màn hình sau.

Armitage rất thân thiện với người dùng. GUI của nó có ba khu vực riêng biệt:Targets, ConsoleModules.

  • Khu vực Targetsliệt kê tất cả các máy bạn đã khám phá và những máy bạn đang làm việc cùng. Các mục tiêu bị tấn công có màu đỏ với giông bão trên đó. Sau khi hack một mục tiêu, bạn có thể nhấp chuột phải vào mục tiêu đó và tiếp tục khám phá những gì bạn cần làm, như khám phá (duyệt) các thư mục.

  • Khu vực Consolecung cấp chế độ xem cho các thư mục. Chỉ bằng cách nhấp vào nó, bạn có thể điều hướng trực tiếp đến các thư mục mà không cần sử dụng bất kỳ lệnh Metasploit nào.

  • Khu vực Modules là phần liệt kê các mô-đun của các lỗ hổng.

Pro Console là phiên bản giao diện điều khiển thương mại của Metasploit. Nó có sẵn cho Linux, Microsoft OS và OSX. Metasploit Pro có thể giúp người kiểm tra thâm nhập -

  • Tận dụng dự án mã nguồn mở Metasploit và thư viện khai thác hàng đầu của nó

  • Quản lý dữ liệu trong các bài đánh giá lớn

  • Kiểm soát các máy bị xâm nhập và tiếp quản mạng

  • Tự động tạo báo cáo chứa các phát hiện chính

  • Cải thiện bảo mật bằng cách ưu tiên các lỗ hổng có thể khai thác

  • Chứng minh hiệu quả của các biện pháp khắc phục hoặc bù đắp cho kiểm toán viên

  • Nhận được khả năng hiển thị toàn diện về rủi ro của người dùng bằng cách tích hợp với Rapid7 UserInsight

  • Kiểm tra tính hiệu quả của các biện pháp kiểm soát an ninh

  • Mô phỏng các chiến dịch lừa đảo cho hàng nghìn người dùng

Metasploit Pro cung cấp dấu nhắc lệnh và giao diện người dùng WEB.

Để sử dụng Metasploit Pro, bạn cần mua nó từ Rapid7 và cài đặt nó trên hệ thống của mình. Trong môi trường Windows, để khởi chạy Metasploit Pro, hãy đi tới: Start → All Programs → Metasploit → Metasploit console.

Nếu bạn đang làm việc trong môi trường Linux, hãy mở dòng lệnh đầu cuối và nhập sudo msfpro.

Mục tiêu dễ bị tấn công là máy hoặc thiết bị có lỗ hổng bảo mật chưa được vá. Nó làm cho vật chủ dễ bị tấn công, đó là mục tiêu trong trường hợp này.

Với mục đích thử nghiệm, Rapid7 đã tạo ra một máy ảo với rất nhiều lỗ hổng. Hãy nhớ rằng bạn không được phép xâm nhập vào bất kỳ thiết bị nào khi chưa được phép. Do đó, bạn cần tải xuốngmetasploitable là một máy Linux.

Có thể tải xuống Metasploitable từ - www.information.rapid7.com/

Điền vào biểu mẫu để đăng ký cho mình. Tiếp theo, bạn sẽ nhận được màn hình sau với liên kết trực tiếp để tải xuống Metasploitable.

Tiếp theo, mở VirtualBox Manager và chuyển đến Máy → Mới.

Nhấp vào “Sử dụng tệp đĩa cứng ảo hiện có" và duyệt đến vị trí bạn đã tải xuống Metasploitable. Nhấp Open.

Trên màn hình tiếp theo, hãy nhấp vào Create.

Bây giờ, bạn có thể đăng nhập vào Metasploitable bằng cách sử dụng mặc định username: msfadmin và mật khẩu: msfadmin.

Giai đoạn thâm nhập đầu tiên liên quan đến việc quét mạng hoặc máy chủ để thu thập thông tin và tạo ra một cái nhìn tổng quan về máy mục tiêu.

Discovery Scanvề cơ bản là tạo một danh sách IP trong mạng mục tiêu, khám phá các dịch vụ đang chạy trên máy. Để thực hiện việc này trong Metasploit, chúng ta sẽ sử dụng lệnh nhắc là các lệnh NMAP được tích hợp trong Metasploit. Để biết thêm thông tin về NMAP và các lệnh của nó, hãy truy cậphttps://nmap.org/

Bây giờ chúng ta hãy xem trong thực tế nó hoạt động chính xác như thế nào. Chúng tôi đã khởi động máy đích (Metasploitable) và máy Windows Server 2003 với IP192.168.1.101.

Tiếp theo, chúng ta sẽ khởi động Metasploit. Ở đây, chúng tôi đang sử dụng Kali Linux. Do đó, các lệnh sẽ luôn bắt đầu bằngnmap.

Hãy bắt đầu quét mạng với dải 192.168.0.0/24 và khám phá các máy.

Như có thể thấy trong ảnh chụp màn hình ở trên, có 5 máy chủ trong mạng với thông tin chi tiết. Bây giờ chúng tôi đã tìm thấy các máy chủ còn sống, chúng tôi sẽ cố gắng tìm hệ điều hành chúng đang chạy và các dịch vụ nền của chúng.

Chúng tôi sẽ cố gắng tấn công máy dễ bị tấn công bằng IP 192.168.1.101. Để làm như vậy, chúng ta sẽ chạy lệnh sau:

Nmap –sV-O –T4 192.168.1.101
Đây,
  • -sV tham số sẽ phát hiện các dịch vụ với chi tiết phiên bản của chúng.

  • -O là phát hiện phiên bản hệ điều hành mà trong trường hợp của chúng tôi là Linux 2.6.X

  • -T4 là thời gian mà chúng tôi để quá trình quét kết thúc

Bạn sẽ nhận được màn hình sau dưới dạng kết quả của việc sử dụng lệnh trên.

Task Chains là một tính năng được tìm thấy trong phiên bản Metasploit Pro, giúp chúng ta lên lịch các tác vụ và thực hiện chúng. Nó thường được sử dụng cho các quy trình chạy định kỳ, ví dụ, quét mạng.

Để cấu hình một nhiệm vụ, hãy đi tới Nhiệm vụ → Chuỗi → Chuỗi nhiệm vụ mới.

Cung cấp tên cho Chuỗi tác vụ.

Tiếp theo, nhấp vào dấu '+', như được hiển thị trong ảnh chụp màn hình sau.

Chọn từ danh sách nhiệm vụ mà bạn muốn chọn. Hãy để chúng tôi chọn QUÉT.

Tiếp theo, configuration task setting sẽ hiện ra như hình bên dưới.

Hãy thêm một nhiệm vụ vào Chuỗi tác vụ, đây là chức năng mà máy chủ phải thực hiện sau khi hoàn thành nhiệm vụ đầu tiên. Để lên lịch tác vụ, hãy nhấp vào biểu tượng "Lên lịch ngay".

Bảng sau sẽ được hiển thị nơi bạn có thể chọn tần suất bạn muốn chạy một tác vụ.

Cuối cùng, nhấp vào nút Lưu để lên lịch chuỗi nhiệm vụ.

Metasploit là một khung bảo mật mạnh mẽ cho phép bạn nhập kết quả quét từ các công cụ của bên thứ ba khác. Bạn có thể nhập kết quả quét NMAP ở định dạng XML mà bạn có thể đã tạo trước đó. Metasploit cũng cho phép bạn nhập kết quả quét từNessus, là một máy quét lỗ hổng bảo mật.

Hãy xem nó hoạt động như thế nào. Đầu tiên, hãy thực hiện quét NMAP và lưu kết quả ở định dạng XML trên màn hình của bạn, như thể hiện trong ảnh chụp màn hình sau.

Tiếp theo, mở Metasploit hoặc Armitage để nhập kết quả quét. Sau đó, sử dụng lệnh sau để nhập tất cả máy chủ.

Msf > db_import "path of xml file"

Ảnh chụp màn hình sau đây cho thấy kết quả đầu ra sẽ như thế nào.

Để kiểm tra xem tệp nhập có đúng hay không, chúng ta có thể chạy các lệnh cụ thể trên hai máy chủ này và xem chúng phản hồi như thế nào. Ví dụ, trong trường hợp của chúng tôi, chúng tôi đã liệt kê tất cả các máy chủ có cổng 445 đang chạy trên chúng.

Một lỗ hổng là một system holemà người ta có thể khai thác để truy cập trái phép vào dữ liệu nhạy cảm hoặc tiêm mã độc. Metasploit, giống như tất cả các ứng dụng bảo mật khác, cóvulnerability scanner có sẵn trong phiên bản thương mại của nó.

Với sự trợ giúp của máy quét lỗ hổng, bạn có thể thực hiện gần như tất cả các công việc với một ứng dụng. Tiện ích này không có trong phiên bản Metasploit miễn phí. Nếu bạn đang sử dụng phiên bản Metasploit miễn phí, thì bạn sẽ phải sử dụng Nessus Vulnerability Scanner và sau đó nhập kết quả từ đó. Sử dụng metasploitNexpose để thực hiện quét.

Hãy xem cách quét bằng Nexpose trong phiên bản Pro của Metasploit.

Đầu tiên, thêm bảng điều khiển Nexpose vào giao diện người dùng Metasploit WEB. Để thực hiện việc này, hãy đi tới: Quản trị → Cài đặt chung → Bảng điều khiển Nexpose → Cấu hình Bảng điều khiển Nexpose.

Nhập IP của máy chủ có cài đặt Nexpose. Tiếp theo, nhập số cổng, tên người dùng và mật khẩu. Lựa chọnenable.

Tiếp theo, nhấp vào nút Netexpose → thêm địa chỉ IP của máy chủ hoặc mạng cần quét → chọn mẫu quét. Nó sẽ bắt đầu quá trình quét.

Để xem kết quả quét, đi tới Phân tích → Máy chủ.

Trong chương này, chúng ta sẽ tìm hiểu cách xác nhận các lỗ hổng mà chúng tôi đã tìm thấy từ các máy quét lỗ hổng như Nexpose. Quá trình này còn được gọi làvulnerability analysis.

Như thể hiện trong ảnh chụp màn hình sau, một máy quét lỗ hổng đôi khi có thể cung cấp cho bạn hàng trăm lỗ hổng. Trong trường hợp như vậy, việc xác thực từng lỗ hổng có thể khá tốn thời gian.

Metasploit Pro có một tính năng được gọi là Vulnerability Validationđể giúp bạn tiết kiệm thời gian bằng cách tự động xác nhận các lỗ hổng và cung cấp cho bạn cái nhìn tổng quan về các lỗ hổng quan trọng nhất có thể gây hại cho hệ thống của bạn. Nó cũng có một tùy chọn để phân loại các lỗ hổng theo mức độ nghiêm trọng của chúng.

Hãy xem cách bạn có thể sử dụng tùy chọn này. Mở Metasploit Pro Web Console → Dự án → Xác thực lỗ hổng bảo mật.

Tiếp theo, nhập Tên dự án và cung cấp mô tả dễ hiểu về dự án. Sau đó, nhấp vàoStart cái nút.

Nhấp vào "Kéo từ Nexpose". Chọn "Nhập dữ liệu lỗ hổng Nexpose hiện có" như trong ảnh chụp màn hình sau.

Nhấp vào Gắn thẻ → Tự động gắn thẻ theo hệ điều hành. Nó sẽ tách các lỗ hổng cho bạn.

Tiếp theo, đi tới Exploit → Sessionsvà chọn tùy chọn "Dọn dẹp phiên khi hoàn tất". Nó có nghĩa là khi lỗ hổng được kiểm tra, sẽ có sự tương tác giữa máy Metasploit và máy dễ bị tấn công.

Nhấp chuột Generate Report → Start.

Tiếp theo, bạn sẽ thấy Trình hướng dẫn xác thực. Tại đây, bạn cần nhấp vàoPush validations cái nút.

Bạn sẽ nhận được màn hình sau sau khi bạn đã kiểm tra tất cả danh sách các lỗ hổng bảo mật.

Để xem kết quả của các lỗ hổng đã kiểm tra, hãy đi tới Trang chủ → Tên dự án → Lỗ hổng.

Sau khi quét lỗ hổng và xác thực lỗ hổng, chúng tôi phải chạy và kiểm tra một số tập lệnh (được gọi là exploits) để có quyền truy cập vào máy và thực hiện những gì chúng tôi đang dự định làm.

Khai thác bằng cách sử dụng Armitage GUI

Chúng tôi có một số phương pháp để sử dụng khai thác. Phương pháp đầu tiên và quan trọng nhất là sử dụng Armitage GUI sẽ kết nối với Metasploit để thực hiện kiểm tra khai thác tự động được gọi là HAIL MARY. Hãy xem nó hoạt động như thế nào.

Mở phân phối Kali → Ứng dụng → Công cụ khai thác → Armitage.

Tiếp theo, đi tới Attacks → Hail Mary và nhấp vào Có.

Bạn sẽ thấy màn hình sau đây sẽ hiển thị tất cả các khai thác đang được thử nghiệm.

Tiếp theo, bạn sẽ thấy biểu tượng của hệ thống có thể khai thác (tức là hệ thống mà hoạt động khai thác đã hoạt động) sẽ chuyển sang màu đỏ với một hình giông bão trên đó. Tại bảng điều khiển, bạn sẽ thấy lần khai thác nào thành công, với ID phiên tương ứng của nó.

Bây giờ bạn có thể tương tác với máy.

Khai thác bằng Command Prompt

Cách thứ hai (và có lẽ là một cách chuyên nghiệp) để sử dụng Khai thác là bằng Command Prompt.

Từ Máy quét lỗ hổng bảo mật, chúng tôi nhận thấy rằng máy Linux mà chúng tôi sử dụng để kiểm tra dễ bị tấn công bởi dịch vụ FTP. Bây giờ chúng ta sẽ sử dụng mộtexploitđiều đó có thể làm việc cho chúng tôi. Lệnh là -

msf > use “exploit path”

Tiếp theo, sử dụng lệnh sau để xem bạn phải đặt các tham số nào để làm cho nó hoạt động.

msf > show options

Khai thác này cho thấy rằng chúng tôi phải đặt RHOST "IP mục tiêu"

Tiếp theo, sử dụng các lệnh -

msf > set RHOST 192.168.1.101   
msf > set RPORT 21

Tiếp theo, sử dụng lệnh -

msf > run

Nếu khai thác thành công, thì bạn sẽ thấy một phiên được mở, như thể hiện trong ảnh chụp màn hình sau.

Bây giờ, bạn có thể tương tác với hệ thống này.

Nói một cách dễ hiểu, payload là những đoạn mã đơn giản mà tin tặc sử dụng để tương tác với một hệ thống bị tấn công. Sử dụng tải trọng, chúng có thể chuyển dữ liệu sang hệ thống nạn nhân.

Tải trọng Metasploit có thể có ba loại -

  • Singles- Đĩa đơn rất nhỏ và được thiết kế để tạo ra một số loại giao tiếp, sau đó chuyển sang giai đoạn tiếp theo. Ví dụ: chỉ tạo một người dùng.

  • Staged - Đó là trọng tải mà kẻ tấn công có thể sử dụng để tải một tệp lớn hơn lên hệ thống nạn nhân.

  • Stages- Các giai đoạn là các thành phần tải trọng được tải xuống bởi các mô-đun Stager. Các giai đoạn tải trọng khác nhau cung cấp các tính năng nâng cao không giới hạn kích thước như Meterpreter và VNC Injection.

Thí dụ

Hãy lấy một ví dụ để hiểu việc sử dụng tải trọng Metasploit. Giả sử chúng ta có một máy Windows Server 2003 dễ bị tấn công bởi DCOM MS03-026.

Lúc đầu, chúng tôi sẽ tìm kiếm một exploitcó thể hoạt động với lỗ hổng này. Chúng tôi sẽ sử dụng cách khai thác tốt nhấtRANK.

Tiếp theo, chúng ta sẽ sử dụng lệnh sau để xem chúng ta có thể sử dụng tải trọng nào với việc khai thác này.

msf > show payloads

và thấy rằng tôi có thể sử dụng tải trọng sẽ giúp tôi tải lên / thực thi tệp, để khiến nạn nhân là máy chủ VNC có thể xem.

Lệnh trên sẽ hiển thị các trọng tải sẽ giúp chúng tôi tải lên / thực thi tệp lên hệ thống nạn nhân.

Để đặt tải trọng mà chúng ta muốn, chúng ta sẽ sử dụng lệnh sau:

set PAYLOAD payload/path

Đặt máy chủ nghe và cổng nghe (LHOST, LPORT) là attacker IPport. Sau đó, đặt máy chủ từ xa và cổng (RPORT, LHOST) làvictim IPport.

Nhập “khai thác”. Nó sẽ tạo một phiên như hình dưới đây -

Bây giờ chúng ta có thể chơi với máy theo các cài đặt mà tải trọng này đưa ra.

Sau khi có được quyền truy cập vào một máy, điều quan trọng là phải lấy tất cả các thông tin nhạy cảm như tên người dùng và mật khẩu. Bạn cũng có thể thực hiện thao tác này cho mục đích kiểm tra, để phân tích xem hệ thống trong tổ chức của bạn có đang sử dụng mật khẩu mạnh hay không.

Trong Windows, mật khẩu được lưu trữ dưới dạng mã hóa được gọi là NTLM hash. Trong hệ điều hành Windows, bạn phải luôn tìm kiếm người dùng có số 500, điều này cho thấy rằng người dùng làsuperuser.

Trong phiên bản miễn phí của Metasploit, thông tin đăng nhập băm phải được lưu trong tệp văn bản hoặc trong cơ sở dữ liệu Metasploit.

Thí dụ

Hãy sử dụng kịch bản mà chúng ta đã sử dụng trong chương trước. Giả sử chúng ta có một máy Windows Server 2003 dễ bị tấn công bởi DCOM MS03-026. Chúng tôi đã có quyền truy cập vào hệ thống này và chènmeterpreter khối hàng.

Lệnh thường được sử dụng trong métpreter là hashdump sẽ liệt kê tất cả tên người dùng và mật khẩu.

Bạn cũng có thể dùng Armitage để lấy thông tin này, như được hiển thị trong ảnh chụp màn hình sau.

Metasploit phiên bản thương mại có một phiên riêng được gọi là Credentialcho phép thu thập, lưu trữ và sử dụng lại thông tin đăng nhập. Hãy xem làm thế nào để đi về nó.

Để thu thập dữ liệu nhạy cảm, trước tiên hãy truy cập: Trang chủ → Tên dự án → Phiên.

Nhấp vào phiên hoạt động.

Tiếp theo, nhấp vào Collect System Data. Nó sẽ thu thập tất cả HASH và mật khẩu.

Bạn sẽ thấy một màn hình như sau:

Để xem thông tin đăng nhập đã thu thập, hãy đi tới Trang chủ → Tên dự án → Thông tin đăng nhập → Quản lý.

Như được hiển thị trong ảnh chụp màn hình sau, bạn sẽ thấy tất cả các mật khẩu đã đạt được và những mật khẩu có thể bị bẻ khóa.

Trong một cuộc tấn công bạo lực, tin tặc sử dụng tất cả các kết hợp có thể có của các chữ cái, số, ký tự đặc biệt và các chữ cái viết hoa và nhỏ theo cách tự động để có được quyền truy cập qua máy chủ hoặc dịch vụ. Kiểu tấn công này có khả năng thành công cao, nhưng nó đòi hỏi một lượng thời gian rất lớn để xử lý tất cả các tổ hợp.

Một cuộc tấn công brute-force chậm và hacker có thể yêu cầu một hệ thống có sức mạnh xử lý cao để thực hiện tất cả các hoán vị và kết hợp đó nhanh hơn. Trong chương này, chúng ta sẽ thảo luận về cách thực hiện một cuộc tấn công brute-force bằng Metasploit.

Sau khi quét máy Metasploitable bằng NMAP, chúng tôi biết những dịch vụ nào đang chạy trên đó. Các dịch vụ là FTP, SSH, mysql, http và Telnet.

Để thực hiện một cuộc tấn công brute-force vào các dịch vụ này, chúng tôi sẽ sử dụng auxiliariescủa mỗi dịch vụ. Các phần tử phụ trợ là các tập lệnh nhỏ được sử dụng trong Metasploit không tạo ra một trình bao trong máy nạn nhân; họ chỉ cung cấp quyền truy cập vào máy nếu cuộc tấn công brute-force thành công. Chúng ta hãy xem cách sử dụng chất trợ.

Ở đây, chúng tôi đã tạo một danh sách từ điển ở gốc của máy phân phối Kali.

Tấn công Dịch vụ FTP

Mở Metasploit. Dịch vụ đầu tiên mà chúng tôi sẽ cố gắng tấn công là FTP và phần bổ trợ giúp chúng tôi thực hiện mục đích này làauxiliary/scanner/ftp/ftp_login.

Nhập lệnh sau để sử dụng phần mềm bổ trợ này:

msf > use auxiliary/scanner/ftp/ftp_login

Đặt đường dẫn của tệp chứa từ điển của chúng tôi.

Đặt IP nạn nhân và chạy.

Nó sẽ tạo ra kết quả sau:

Như bạn có thể thấy, nó đã hoàn thành, nhưng không có phiên nào được tạo. Điều đó có nghĩa là chúng tôi đã không thành công trong việc lấy lại bất kỳ tên người dùng và mật khẩu hữu ích nào.

Tấn công Dịch vụ SSH

Để tấn công dịch vụ SSH, chúng ta có thể sử dụng phần bổ trợ: auxiliary/scanner/ssh/ssh_login

Như bạn có thể thấy trong ảnh chụp màn hình sau, chúng tôi đã đặt RHOSTS thành 192.168.1.101 (đó là IP nạn nhân) và danh sách tên người dùng và mật khẩu (đó là userpass.txt). Sau đó, chúng tôi áp dụngrun chỉ huy.

Như có thể thấy trong ảnh chụp màn hình ở trên, ba phiên đã được tạo. Nó có nghĩa là ba sự kết hợp đã thành công. Chúng tôi đã gạch dưới tên người dùng.

Để tương tác với một trong ba phiên, chúng tôi sử dụng lệnh msf > sessions –i 3 có nghĩa là chúng ta sẽ kết nối với phiên số 3.

Tấn công Dịch vụ Telnet

Khi áp dụng một cuộc tấn công brute-force vào một dịch vụ Telnet, chúng tôi sẽ lấy một bộ thông tin xác thực được cung cấp và một loạt các địa chỉ IP và cố gắng đăng nhập vào bất kỳ máy chủ Telnet nào. Đối với điều này, chúng tôi sẽ sử dụng phụ trợ:auxiliary/scanner/telnet/telnet_login.

Quá trình sử dụng phụ trợ giống như trong trường hợp tấn công dịch vụ FTP hoặc dịch vụ SSH. Chúng tôi phải sử dụng phụ trợ, đặt RHOST, sau đó đặt danh sách mật khẩu và chạy nó.

Hãy xem ảnh chụp màn hình sau. Được đánh dấu bằng mũi tên màu xanh lam là những nỗ lực không chính xác mà phụ trợ đã thực hiện. Các mũi tên màu đỏ hiển thị các lần đăng nhập thành công đã tạo phiên.

Một số chất trợ giúp khác mà bạn có thể áp dụng trong cuộc tấn công brute-force là:

  • SMB service - phụ trợ / máy quét / smb / smb_login

  • SNMP service - phụ trợ / máy quét / snmp / snmp_login

Pivoting là một kỹ thuật mà Metasploit sử dụng để định tuyến lưu lượng truy cập từ một máy tính bị tấn công tới các mạng khác mà máy tin tặc không thể truy cập được.

Hãy xem một kịch bản để hiểu cách hoạt động của Pivoting. Giả sử chúng ta có hai mạng -

  • Mạng có phạm vi 192.168.1.0/24 nơi máy tin tặc có quyền truy cập và

  • Một mạng khác có phạm vi 10.10.10.0/24. Nó là một mạng nội bộ và hacker không có quyền truy cập vào nó.

Tin tặc sẽ cố gắng hack mạng thứ hai mà máy này có quyền truy cập trong cả hai mạng để khai thác và hack các máy nội bộ khác.

Trong trường hợp này, đầu tiên một hacker sẽ đột nhập vào mạng thứ nhất và sau đó sử dụng nó như một điểm dàn dựng để khai thác và hack các máy bên trong của mạng thứ hai. Quá trình này được gọi làpivoting bởi vì tin tặc đang sử dụng mạng đầu tiên làm trục quay để truy cập vào mạng thứ hai.

Chúng ta hãy cố gắng hiểu cách nó hoạt động. Chúng tôi sẽ lấy một hệ thống Windows Server 2003 có lỗ hổng DCOM và chúng tôi sẽ sử dụng lỗ hổng này để hack hệ thống này.

Khai thác cho điều này sẽ là ms03_026_dcom và chúng tôi sẽ sử dụng meterpreter khối hàng.

Bây giờ chúng ta đã có quyền truy cập vào hệ thống này, hãy tương tác với phiên bằng lệnh session -i 1 trong đó "1" là số phiên đã được tạo.

Bây giờ, hãy sử dụng lệnh ipconfigđể tìm hiểu xem máy chủ này có quyền truy cập vào các mạng khác hay không. Ảnh chụp màn hình sau đây cho thấy kết quả đầu ra. Bạn có thể thấy rằng máy chủ này được kết nối với hai mạng khác -

  • một là mạng lặp lại không được sử dụng, và
  • mạng còn lại là 10.10.10.0/24 mà chúng ta sẽ khám phá.

Metasploit có tập lệnh trình thông dịch tự động chuyển đổi sẽ cho phép chúng tôi tấn công mạng thứ hai này thông qua máy bị xâm nhập đầu tiên của chúng tôi, nhưng trước tiên, chúng tôi phải background phiên họp.

Thêm tuyến vào mạng nội bộ với phạm vi 10.10.10.0/24

Bây giờ chúng ta đã định tuyến lưu lượng truy cập (Pivot), chúng ta có thể thử quét máy chủ được tìm thấy trong mạng này.

Chúng tôi đã quét cổng trên máy chủ 10.10.10.102. Ảnh chụp màn hình sau đây cho thấy kết quả.

Bây giờ chúng tôi đã có quyền truy cập vào mạng nội bộ. Tuy nhiên, nếu bạn bị mất phiên của máy bị hack, bạn cũng sẽ mất quyền truy cập vào mạng nội bộ.

Trong chương này, chúng ta sẽ thảo luận về cách duy trì quyền truy cập trong một hệ thống mà chúng ta đã có quyền truy cập. Điều quan trọng là vì nếu chúng tôi không duy trì quyền truy cập, thì chúng tôi sẽ phải cố gắng khai thác nó từ đầu trong trường hợp hệ thống bị tấn công bị đóng hoặc được vá.

Cách tốt nhất là cài đặt backdoor. Đối với máy bị tấn công Windows Server 2003 mà chúng tôi đã khai thác trong chương trước, chúng tôi đặt trọng tải làmeterpreter và tải trọng này có một tùy chọn cửa sau được gọi là metsvc. Chúng ta có thể sử dụng tùy chọn cửa sau này để truy cập vào máy nạn nhân bất cứ khi nào chúng ta muốn, nhưng cửa sau này có rủi ro là mọi người có thể kết nối với phiên này mà không cần xác thực.

Hãy để chúng tôi hiểu chi tiết cách nó hoạt động trong thực tế. Chúng tôi đang ở giai đoạn mà chúng tôi đã khai thác máy tính Windows Server 2003 và chúng tôi đã thiết lậpmeterpreterkhối hàng. Bây giờ chúng tôi muốn xem các quy trình đang chạy trên máy này và ẩn quy trình của chúng tôi đằng sau quy trình chính hãng.

Gõ "ps" trong phiên đồng hồ đo để xem các quá trình của nạn nhân.

Chúng tôi muốn giấu quá trình của mình đằng sau explorer.exebởi vì nó là một tiến trình chạy khi khởi động và nó luôn hiện diện. Để thực hiện việc này, hãy sử dụng lệnh: "di chuyển số PID" như được hiển thị trong ảnh chụp màn hình sau.

Để cài đặt backdoor, hãy nhập run metsvc. Trong khi chạy, bạn sẽ thấy cổng đã được tạo và thư mục nơi các tệp đang được tải lên.

Để kết nối với backdoor này, chúng tôi cần multi/handler với khối lượng windows/metsvc_bind_tcp.

Metasploit - Nâng cấp đặc quyền

Sau khi chúng tôi đã khai thác và có được quyền truy cập vào hệ thống nạn nhân, bước tiếp theo là nhận quyền quản trị viên hoặc quyền root. Sau khi chúng tôi có được đặc quyền này, thì việc cài đặt, xóa hoặc chỉnh sửa bất kỳ tệp hoặc quy trình nào trở nên rất đơn giản.

Hãy tiếp tục với cùng một kịch bản mà chúng tôi đã tấn công hệ thống Windows Server 2003 và đặt tải trọng meterpreter.

Meterpreter sử dụng lệnh "getystem" để báo cáo đặc quyền. Nhưng trước tiên, chúng ta phải sử dụng lệnh "priv" để chuẩn bị cho hệ thống bị tấn công leo thang đặc quyền.

Tiếp theo, chạy lệnh "getystem".

Như bạn có thể thấy, chúng tôi đã thực sự đăng nhập với tư cách quản trị viên.

MetaModules là các nhiệm vụ bảo mật phức tạp và tự động, được thiết kế để giúp các bộ phận bảo mật thực hiện công việc của họ hiệu quả hơn, như kiểm tra các cổng tường lửa được mở và đóng, kiểm tra thông tin xác thực mặc định, v.v.

MetaModules là các tính năng mới được giới thiệu trong Metasploit Pro (phiên bản thương mại). Bạn nên nhớ rằng MetaModules với xếp hạng sao tốt nhất sẽ cho bạn kết quả tốt nhất.

Để mở MetaModules, đi tới Trang chủ → Tên dự án → Mô-đun → MetaModules.

Như bạn có thể thấy, chúng tôi có sáu siêu mô-đun để phục vụ các yêu cầu khác nhau.

Thử nghiệm phân đoạn và tường lửa

MetaModule này chạy quét Nmap SYN đầy đủ chống lại một máy chủ bên ngoài được lưu trữ bởi Rapid7, hoạt động như một mục tiêu quét đầu ra. Sử dụng MetaModule này để khám phá các cổng đi trên tường lửa mà kẻ tấn công có thể sử dụng để lọc thông tin. Bạn sẽ cần chỉ định các cổng và giao thức mà bạn muốn kiểm tra.

Để chạy MetaModule này, hãy nhấp vào Launchvà làm theo hướng dẫn trong đó. Nó sẽ hiển thị cho bạn một báo cáo về các cổng mở, đóng và lọc, giống như trong ảnh chụp màn hình sau.

Domino thông tin xác thực

MetaModule này sử dụng thông tin đăng nhập hợp lệ hoặc một phiên hoạt động để thực hiện một cuộc tấn công thông tin xác thực lặp đi lặp lại nhằm thu thập thông tin xác thực từ các máy chủ bị xâm phạm. Nó sử dụng lại thông tin đăng nhập đã thu thập để xác định các tuyến đường tấn công có thể xảy ra khác. MetaModule này chạy cho đến khi thử tất cả các thông tin xác thực hoặc đạt đến điều kiện kết thúc.

Để chạy MetaModule này, hãy nhấp vào Launchtrên màn hình mở. Nó sẽ tạo ra ảnh chụp màn hình sau trong đó bạn phải chọn HOST IP và thông tin đăng nhập để được kiểm tra.

Nếu thông tin xác thực mà bạn đã nhập là chính xác, thì nó sẽ tạo ra kết quả sau.

Kiểm tra khóa SSH

MetaModule này cố gắng đăng nhập vào hệ thống bằng khóa SSH đã khôi phục. Nó ghi lại kết quả thành công và thất bại cho mỗi dịch vụ. Bạn sẽ cần chỉ định tên người dùng, tên tệp khóa SSH và phạm vi máy chủ mà bạn muốn.

Để chạy MetaModule này, hãy nhấp vào Launchtrên màn hình mở. Nó sẽ hiển thị màn hình sau.

Đi vào Credentials và nhấp vào Launch cái nút.

Khám phá mạng thụ động

MetaModule này được thiết kế để đánh hơi lưu lượng truy cập để khám phá các máy chủ và dịch vụ trên mạng cục bộ. Vì nó không gửi bất kỳ gói nào, bạn có thể chạy ứng dụng này để tiến hành quét khám phá mạng lén lút và xác định bất kỳ máy chủ, dịch vụ và thông tin đăng nhập văn bản rõ ràng nào.

Để chạy MetaModule này, hãy nhấp vào Launchtrên màn hình mở. Nó sẽ hiển thị màn hình sau.

Chọn Network interface(Nói chung chúng được tự động phát hiện). Nhấp chuộtFilters. Sau đó, hãy kiểm tra tất cả các giao thức mà bạn muốn theo dõi. Trong trường hợp này, chúng tôi chỉ kiểm tra HTTP.

Bạn sẽ nhận được màn hình sau với dữ liệu và gói tin đã được chụp. Nếu tìm thấy bất kỳ IP hoặc thông tin đăng nhập nào, nó cũng sẽ được hiển thị.

Kỹ thuật xã hội có thể được định nghĩa rộng rãi là một quá trình trích xuất thông tin nhạy cảm (chẳng hạn như tên người dùng và mật khẩu) bằng thủ thuật. Tin tặc đôi khi sử dụng các trang web giả mạo và các cuộc tấn công lừa đảo cho mục đích này. Chúng ta hãy thử tìm hiểu khái niệm về các cuộc tấn công Social Engineering thông qua một số ví dụ.

ví dụ 1

Bạn hẳn đã nhận thấy các tài liệu cũ của công ty bị vứt vào thùng rác như rác. Những tài liệu này có thể chứa thông tin nhạy cảm như Tên, Số điện thoại, Số Tài khoản, Số An sinh Xã hội, Địa chỉ, v.v. Nhiều công ty vẫn sử dụng giấy than trong máy fax của họ và sau khi hết cuộn, carbon của nó sẽ đi vào thùng rác và có thể có dấu vết dữ liệu nhạy cảm. Mặc dù nghe có vẻ không chắc chắn, nhưng những kẻ tấn công có thể dễ dàng lấy thông tin từ những người đổ rác của công ty bằng cách ăn cắp thông qua thùng rác.

Ví dụ 2

Kẻ tấn công có thể kết bạn với nhân viên công ty và thiết lập mối quan hệ tốt với anh ta trong một khoảng thời gian. Mối quan hệ này có thể được thiết lập trực tuyến thông qua mạng xã hội, phòng trò chuyện hoặc ngoại tuyến tại bàn cà phê, trong sân chơi hoặc thông qua bất kỳ phương tiện nào khác. Kẻ tấn công khiến các nhân viên văn phòng tự tin và cuối cùng đào được thông tin nhạy cảm được yêu cầu mà không đưa ra manh mối.

Ví dụ 3

Một kỹ sư xã hội có thể giả làm nhân viên hoặc người dùng hợp lệ hoặc khách VIP bằng cách làm giả thẻ nhận dạng hoặc đơn giản bằng cách thuyết phục nhân viên về vị trí của mình trong công ty. Kẻ tấn công như vậy có thể truy cập vật lý vào các khu vực hạn chế, do đó tạo cơ hội cho các cuộc tấn công hơn nữa.

Ví dụ 4

Nó xảy ra trong hầu hết các trường hợp mà kẻ tấn công có thể ở xung quanh bạn và có thể làm shoulder surfing trong khi bạn đang nhập thông tin nhạy cảm như ID người dùng và mật khẩu, mã PIN tài khoản, v.v.

Cuộc tấn công kỹ thuật xã hội trong Metasploit

Trong phần này, chúng ta sẽ thảo luận về cách bạn có thể bắt đầu một cuộc tấn công Social Engineering bằng Metasploit.

Trước hết, hãy truy cập Trang chủ của Metasploit và nhấp vào Phishing Campaign, như được hiển thị trong ảnh chụp màn hình sau đây.

Nhập tên của dự án và nhấp vào Tiếp theo.

Nhập tên của chiến dịch. Trong trường hợp của chúng tôi, nó làLab. Tiếp theo, nhấp vàoE-mail biểu tượng dưới Campaign Components.

Trên màn hình tiếp theo, bạn cần cung cấp dữ liệu được yêu cầu theo chiến dịch của mình.

Tiếp theo, nhấp vào Contentbiểu tượng (số 2) nếu bạn muốn thay đổi bất cứ điều gì trong nội dung của email. Sau khi thay đổi nội dung, nhấp vàoSave.

Tiếp theo, nhấp vào Landing Page để đặt các URL mà bạn muốn chuyển hướng người dùng bị lừa của mình.

Như được hiển thị trong ảnh chụp màn hình sau, hãy nhập URL tại Path và bấm vào Next.

Trên màn hình tiếp theo, hãy nhấp vào nút Clone Websitesẽ mở ra một cửa sổ khác. Tại đây, bạn cần nhập trang web mà bạn muốn sao chép. Như bạn có thể thấy trong ảnh chụp màn hình sau, chúng tôi đã nhậptutorialpoint.comtrong lĩnh vực này. Tiếp theo, nhấp vàoClone và lưu các thay đổi của bạn.

Tiếp theo, nhấp vào Redirect Page cái nút.

Nhấp chuột Next và bạn sẽ thấy màn hình sau.

Bạn có thể nhấp vào Clone Website để sao chép lại trang web được chuyển hướng.

Tiếp theo, trong Server Configuration , nhấp vào E-mail Server cái nút.

Trên màn hình tiếp theo, hãy nhập mailserver settingssẽ được sử dụng như một thiết bị chuyển tiếp để gửi email lừa đảo này. Sau đó nhấp vàoSave.

bên trong Notifications , có một tùy chọn để Notify others before launching the campaign. Bạn có thể chọn sử dụng tùy chọn này để thông báo cho người khác. Sau đó nhấp vàoSave.

Tiếp theo, bạn sẽ thấy một cửa sổ mới. Tại đây, bạn cần nhấp vàoStart để bắt đầu quá trình gửi thư lừa đảo.

Metasploit có các tùy chọn để tạo báo cáo thống kê về chiến dịch lừa đảo của bạn. Nó sẽ xuất hiện như trong ảnh chụp màn hình sau.

Trong chương này, chúng ta sẽ xem cách xuất dữ liệu, theo một cách nào đó, là bản sao lưu dự án của bạn. Sau đó, bạn có thể nhập bản sao lưu này vào một dự án Metasploit khác.

Tính năng "Xuất dữ liệu" này có sẵn trong cả phiên bản miễn phí cũng như phiên bản thương mại của Metasploit.

Nếu bạn muốn xuất dữ liệu từ Metasploit Pro, thì nó sẽ lưu trữ một bản sao của tệp ở vị trí "/ path / to / Metasploit / apps / pro / export".

Các tệp được lưu trữ trong thư mục này sẽ khớp với danh sách xuất được hiển thị trong giao diện web. Bạn có thể tìm và xem nhật ký xuất trong thư mục sau: "/ path / to / Metasploit / apps / pro / ui / log". Nhật ký xuất được đặt tên là "export.log".

Để xóa nhật ký xuất, bạn sẽ cần xóa nó khỏi thư mục nhật ký, nằm tại "/ path / to / Metasploit / apps / pro / ui / log".

Xuất dữ liệu trong Metasploit Pro

Để xuất dữ liệu, go to Home → Project Name → Exports → Export Data.

Trên màn hình tiếp theo, bạn có thể chọn file format trong đó bạn muốn lưu trữ dữ liệu xuất.

  • PWDump- Một tệp văn bản chứa tất cả thông tin xác thực cho một dự án, bao gồm mật khẩu văn bản rõ, mã băm SMB và khóa SSH. Thông tin xác thực có thể được che để chỉ liệt kê tên người dùng.

  • Replay script- Một tệp hàng loạt chạy lại các tác vụ đã mở phiên trên máy chủ đích. Một tập lệnh phát lại bao gồm nhiều tệp tài nguyên (.rc).

  • XML - Một tệp XML chứa các thuộc tính của hầu hết các đối tượng trong một dự án và có thể được nhập vào một dự án khác.

  • ZIP Workplace - Một tệp zip chứa tệp xuất XML và bất kỳ tệp đăng nhập nào, tệp báo cáo và nhật ký tác vụ.

Tại Export Type, nhập tên tệp cho dữ liệu xuất. Tiếp theo, tạiAddress Settings, nhập IP của máy chủ.

Tiếp theo, trong Options , bạn có thể chọn ẩn thông tin đăng nhập của mình bằng cách nhấp vào hộp kiểm Mask Credentials. Sau đó, nhấp vào nútExport Data.

Màn hình sau đây sẽ được hiển thị nơi bạn có thể xem tệp đã xuất.

Nhấp chuột Download để truy xuất tệp đã xuất.

Metasploit có các tùy chọn tích hợp mà bạn có thể sử dụng để tạo báo cáo tóm tắt tất cả các hoạt động và phát hiện của mình. Trong chương này, chúng tôi sẽ thảo luận về cách bạn có thể tạo báo cáo trong Metasploit.

Để tạo báo cáo trong Metasploit, hãy làm theo các bước dưới đây:

Step 1 - Chuyển đến Trang chủ → Báo cáo → Báo cáo mới.

Step 2- Chọn một loại báo cáo theo nhu cầu của bạn. Nếu bạn nhấp vào "?" , nó sẽ hiển thị cho bạn thông tin về mọi loại báo cáo.

Step 3 - Trong Name trường, cung cấp tên tệp.

Step 4 - Trong Sections trường, kiểm tra các tùy chọn theo yêu cầu của bạn.

Step 5 - Tương tự, trong trường Tùy chọn, hãy kiểm tra các tùy chọn theo yêu cầu của bạn.

Step 6 - Trong Email Report , bạn có thể nhập ID email của người nhận mà bạn muốn gửi trực tiếp báo cáo qua thư.

Step 7 - Tiếp theo, nhấp vào Generate Report cái nút.

Báo cáo của bạn hiện đã được tạo. Tiếp theo, với tất cả các báo cáo của bạn, hãy chuyển đếnReports → Show Reports.

Bạn có thể xem các báo cáo của mình bằng cách nhấp vào View Dưới Actions.