Metasploit framework là gì

Metasploit Framework là một framework viết bằng Ruby cần sử dụng để tiến công and khai thác các lỗ hổng trên nhiều loại hệ thống khác nhau (Windows/Linux/Cisco/WordPress/….)

Dẹp bỏ lỡ các khái niệm trắc trở and không thiết yếu, bây giờ mình sẽ cùng chúng ta thăm dò Metasploit Framework ở mức độ rất là căn bản


Bạn đang xem: Giới thiệu công cụ metasploit là gì, metasploit là gì

A. Setup

Bài Viết: Metasploit là gì

Áp dụng Metasploit đc cài sẵn trong phần nhiều những distro Linux giao hàng HackingCài đặt Metasploit vào một hệ điều hành Linux bất kì (Như Ubuntu)Setup Metasploit vào WindowsSử dụng Metasploit trên Windows qua Pentest BoxSử dụng Metasploit trên Windows 10 qua Bash on Ubuntu on Windows=> Nói chung. Vì bạn là người mới học ở mức độ rất là căn bản. Thì chúng ta xài cách thức 1 cho nhanh. Còn 4 cách thức sau thì bỏ lỡ, sau thích thì cài, không thì thôi

B. Một số khái niệm rất chi là căn bản (Học thuộc đi nhé)

LHOST: Vị trí IP của máy Hacker (Nếu tiến công ngoài Intethì xài IP Public, hoặc DDNS của No-IP.com)RHOST: Vị trí IP của máy Vicitm (Nếu tiến công ngoài Intethì xài IP Public, RHOST có thể là URL Website cũng OK)LPORT: Port mở ra trên máy Hacker (Nếu tiến công ngoài Intethì bắt buộc Port đó phải mở trên Router, còn hack trong mạng LAN thì port nào rất được)RPORT: Port trên máy victim (Khi đi khai thác lỗ hổng, tùy lỗ hổng tọa lạc trên giao thức nào thì có những RPORT đặc điểm, bản chất Metasploit sẽ tự đặt cho chúng ta)PAYLOAD: Có kết cấu như sau (tên hệ điều hành/kiểu hệ thống/kiểu tiến công/giao thức tiến công)Tên hệ điều hành: android hay windowsKiểu hệ thống: x86 hay x64 (Nếu chưa biết thì bỏ lỡ)Kiểu tiến công: meterpreter hay shellGiao thức: reverse_tcp; reverse_tcp_dns; reverse_httpsVí dụ: windows/meterpreter/reverse_tcp_dnsGhi chú nho nhỏ dại: Sau này bạn cần cập nhật metasploit thì cứ apt-get cập nhật && apt-get upgrade -y nhé, không phải cập nhật bằng tay đâu


Metasploit framework là gì


B1: Khởi động service database bổ trợ cho metasploit: service postgresql startB2: Khởi động nó lên bằng lệnh msfconsole rồi chờ vài phút thôi


Metasploit framework là gì


D. Sử dụng Metasploit để khai thác lỗ hổng

B1: Search thông tin về moudle lỗ hổng. Mỗi lỗ hổng thường đi cùng mã của nó. Thí dụ tôi muốn khai thác lỗ hổng MS17_010 (hoặc là CVE-2017-0143) chẳng hạn. Có 2 cách thức sau để tìm raP/s: Muốn tìm những lỗ hổng mới nhất thì chúng ta chịu khó đi đọc những trang web về bảo mật. Ví dụ nhưhttps://securityonline.info/http://thehackernews.com/Cũng chứa một số lỗ hổng mà metasploit chưa update module khai thác thì bạn cần phải thêm bằng tay từ nhiều nguồn khác vào. Lúc đó tác giả của moudle sẽ có chỉ dẫn riêng cho bạnCách thức 1: Nhanh hơn. Google từ khóa mã lỗ hổng+metasploit moudle exploit (Hoặc how lớn exploit + mã lỗ hổng+ by metasploit) . Ưu ái chọn lựa những kết quả từ trang rapid7.com nhé (Trang của nhà phát triển Metasploit)


Metasploit framework là gì


2 kết quả đó cái thứ hai chúng ta cảm nhận thấy có chữ Detection có nghĩa là áp dụng để quét xem Victim có bị lỗ hổng hay không. Còn cái thứ đặc biệt là để khai thác.Khi truy cập vào trang đó thì những bạn cũng có thể dễ dàng tìm đc câu lệnh (use exploit/windows/smb/ms17_010_eternalblue) tại Module Options. And còn nhiều thông tin khác về lỗ hổng


Metasploit framework là gì


Xem thêm: Chế Độ Bạn Của Bạn Bè Trên Facebook Là Gì, Kiểm Soát Những Ai Có Thể Xem Nội Dung Bạn Chia

Các module nào có chữ auxiliary là những module để check victim còn exploit là những moudle để tiến côngAvalible Target: Các hệ điều hành bị liên quan. Đi cùng ID để các bạn có thể lựa chọn hệ điều hành muốn tiến công. Các bạn sẽ xài câu lệnh set target + ID để chọn hệ điều hành cần tiến công


Metasploit framework là gì


Basic Options: Cái này chúng ta trước tiên nhìn vào cột Required. Nếu báo Yes thì nó nhu yếu bạn cần phải khai báo tham số đó thì mới tiến công đc. Áp dụng câu lệnh set + tên tham số + chi phí (Ví dụ: set RHOST 192.168.1.7)Ngoài ra những bạn phải cảnh báo thí dụ ở đây tại tham số PROCESSINJECT có cảnh báo Change lớn lsass.exe for x64 thì những bạn cần phải đặt lại chi phí là lsass.exe nếu bạn có nhu cầu tiến công HĐH 64bit

B4: Sau khi hoàn thành toàn bộ các gì moudle nhu yếu chúng ta gõ exploit để ban sơ tiến công


B5: Nếu thành công, nó sẽ bị có thông báo Meterpreter sessions x is openedGõ lệnh sessions -i x (x là số thứ tự của phiên Meterpreter) để vào phiênCác bạn cũng có thể coi tiếp phần Hậu tiến công để biết mình nên làm gì tiếp theo

Tệp tin mã độc bạn cũng có thể tạo bằng nhiều cách thức, xài msfvenom hoặc TheFatRat hoặc 1 tá công cụ khác trên Linux. Những bạn cũng có thể dễ dàng thăm dò những cách thức tạo mã độc trong Playlist của tớ trên Youtube

Bất kể tool tạo mã độc nào mà có thể làm việc đc với Metasploit thì chúng ta đều phải khai báo ít đặc biệt là 3 điều bắt buộc sau: LHOST; LPORT; PAYLOAD

Thể Loại: Chia sẻ trình bày Kiến Thức Cộng Đồng


Bài Viết: Metasploit Là Gì – Cơ Bản Về Meterpreter Trên Metasploit

Thể Loại: LÀ GÌ

Nguồn Blog là gì: https://danangmoment.com Metasploit Là Gì – Cơ Bản Về Meterpreter Trên Metasploit


Related

About The AuthorLà GìEmail Author

Lưu tên của tôi, email, và trang web trong trình duyệt này cho lần bình luận kế tiếp của tôi.

Trong bài viết này, mình sẽ hướng dẫn các bạn cách sử dụng Metasploit cơ bản nhất. Mình sẽ sử dụng công cụ bảo mật này để xâm phạm máy chủ web đang chạy Struts2. Bạn cũng có thể tham khảo bài viết này để hoàn thành thử thách số 10 trong Christmas Advent of Cyber.

Metasploit framework là gì
Metasploit framework là gì

Metasploit là một framework kiểm thử thâm nhập giúp bạn dễ dàng ‘hack’ và là một công cụ khổng lồ trong ngành bảo mật. Với Metasploit, bạn có thể chọn exploit và payload của mình, sau đó thực thi đối với mục tiêu đã chọn. Metasploit đi kèm với nhiều công cụ khác như MSFVenom để tạo shellcode tùy chỉnh (khi thực thi thành công, nó sẽ cung cấp cho bạn một shell trên máy mục tiêu).

Bạn có thể tải xuống Metasploit từ Github hoặc được cài đặt sẵn trên tất cả các máy Kali Linux.

Nếu bạn không có môi trường hoặc công cụ bảo mật phù hợp, bạn có thể triển khai máy Kali Linux của riêng mình và điều khiển nó trực tiếp trong trình duyệt của bạn tại đây.

Sau khi cài đặt Metasploit, hãy nhập msfconsole trong terminal để khởi động Metasploit Framework.

Nếu bạn đã xác định một dịch vụ đang chạy và đã tìm thấy lỗ hổng của dịch vụ hoặc phần mềm đó, bạn có thể tìm kiếm tất cả các tên và module Metasploit để xem có code khai thác viết sẵn hay không.

Ví dụ: nếu bạn muốn tìm kiếm tất cả các module Metasploit cho IIS (một gói phần mềm máy chủ web dành cho Windows), thì có thể chạy lệnh sau: search iis

Metasploit framework là gì

Chúng ta có thể chọn module bằng cách sử dụng lệnh sau: use <module_name>

Sau khi module được load, chúng ta có thể xem các tùy chọn của nó bằng cách dùng lệnh show options. Thông thường, điều này sẽ hiển thị RHOST(S) và RPORT nơi bạn chỉ định tên máy chủ/ip mục tiêu và cổng được liên kết (địa chỉ dịch vụ đang dính lỗ hổng).

Nó cũng sẽ hiển thị LHOST và LPORT, nơi bạn chỉ định chi tiết kết nối máy của bạn để payload Metasploit biết nơi kết nối trở lại. Tùy thuộc vào module, sẽ có các tùy chọn khác để sử dụng.

Nói tóm lại là:

  • LHOST: IP máy tính của bạn (IP WAN)
  • LPORT: Port máy tính của bạn (Port NAT)
  • RHOST: IP máy tính bị lỗ hổng bảo mật
  • RPORT: PORT máy tính bị lỗ hổng bảo mật

Metasploit framework là gì
Bạn có một ứng dụng dễ bị tấn công và module để khai thác nó. Bây giờ chúng ta cần chọn một payload tương thích với hệ thống dễ bị tấn công. Chúng ta cũng cần tính đến các loại shell khác nhau.

Chúng ta có thể có một reverse shell, đó là khi hệ thống dễ bị tấn công, nó sẽ tạo kết nối trở lại máy của bạn, máy đang lắng nghe các kết nối đến.

Chúng ta cũng có thể có một shell bình thường, nơi khi hệ thống bị tấn công, nó sẽ lắng nghe các kết nối đến và cho phép chúng ta tạo kết nối với nó.

Metasploit framework là gì

Chúng ta có thể liệt kê tất cả các payloads khác nhau cho tất cả các nền tảng có sẵn bằng lệnh show payloads (hãy nhớ chạy lệnh này bên trong bảng điều khiển Metasploit, đây không phải là lệnh hệ thống). Bạn có thể chọn các payloads chỉ cung cấp cho bạn quyền truy cập shell hoặc thực thi các lệnh, nhưng bạn có thể sử dụng rất nhiều tính năng khác khi sử dụng Metasploit shell.

Metasploit payload (meterpreter) cung cấp cho bạn quyền truy cập và tương tác để không chỉ điều khiển máy thông qua shell mà còn có thể chụp ảnh màn hình của máy, dễ dàng tải lên/tải xuống tệp và nhiều thứ khác nữa. Khi bạn đang tìm kiếm payloads, hãy tìm cái có nội dung “meterpreter”. Meterpreter được triển khai hoàn toàn trong bộ nhớ và tự đưa vào các quy trình hệ thống hiện có khác.

Trong ví dụ này, mình sẽ sử dụng payload meterpreter sau: linux/x86/meterpreter/reverse_tcp – dành cho hệ thống Linux 32 bit và sẽ kết nối trở lại máy của mình. Để sử dụng payload, bạn chỉ cần dùng lệnh set PAYLOAD linux/x86/meterpreter/reverse_tcp

Nếu chúng ta nhập show options, chúng ta cũng có thể thấy các tùy chọn cho payload của mình:

Metasploit framework là gì

Bạn có thể chọn các tùy chọn khác nhau trong Metasploit bằng cú pháp <option name> <value>. Ví dụ: trong ảnh dưới, mình đang đặt LHOST của mình thành IP máy tấn công (nhập ifconfig trong Linux shell).

Metasploit framework là gì

Trước khi chạy module khai thác của bạn, hãy đảm bảo rằng tất cả các tùy chọn đã được thiết lập. Trong ví dụ này, chúng ta cần thiết lập RHOSTS và TARGETURI.

Để chạy module, chúng ta chỉ cần thực hiện lệnh run. Sau đó, nó sẽ khai thác máy, lắng nghe các kết nối đến và từ máy bị xâm nhập kết nối trở lại máy của bạn. Nếu tất cả đều hoạt động tốt (và bạn đã sử dụng meterpreter payload), thì nó sẽ tạo ra một phiên cho bạn:

Metasploit framework là gì

Hậu khai thác .. Giờ đây, chúng ta có thể thực hiện các lệnh trong terminal của hệ thống, chụp ảnh màn hình, chụp ảnh màn hình webcam và nhiều thứ khác nữa.

Tóm tắt: mình đã chọn một module, đặt payload chính xác, thiết lập các tùy chọn và chạy payload.

Metasploit framework là gì

Thử thách Christmas sẽ bao gồm một máy chủ web đang chạy phiên bản Apache Struts 2 dễ bị tấn công (một framework ứng dụng web mã nguồn mở cho các ứng dụng Java).

Việc của bạn là sử dụng Metasploit để khai thác nó. Tuy nhiên, trước tiên mình muốn bạn hiểu rõ tại sao framework này dễ bị tấn công.

Nếu bạn chưa biết, Docker là một tập hợp nền tảng như một sản phẩm dịch vụ sử dụng ảo hóa cấp hệ điều hành để cung cấp phần mềm trong các gói được gọi là containers. Về bản chất, một máy có thể chạy một số “containers” trong môi trường trực quan hóa của riêng chúng.

Khi bạn đã khai thác máy chủ web này, bạn sẽ khai thác ứng dụng web nằm trong containers Docker, không phải trên hệ thống chính! Vì vậy, trong thực tế, bạn không có quyền truy cập vào hệ thống chính mà đang ở trong một môi trường bị cô lập.

Nó khá dễ dàng để xác định nếu bạn đang ở trong một containers, khi chạy ps aux (danh sách các tiến trình đang chạy) sẽ có một rất ít tiến trình đang chạy (dấu hiệu đầu tiên của một cái gì đó không bình thường).

Nếu bạn điều hướng đến thư mục gốc (cd /), bạn sẽ thấy một tệp environment docker – .dockerenv, một dấu hiệu lớn cho thấy bạn đang ở bên trong một container.

Có nhiều phương pháp để thoát khỏi môi trường trực quan hóa sang hệ thống chính, nhưng đối với những thách thức này, có một số thông tin đăng nhập SSH được rải rác xung quanh, bạn có thể sử dụng để SSH đơn giản vào máy sau khi đã xâm phạm container.

Ngoài ra, bạn cũng có thê xem bài Shodan trên Tryhackme tại đây.