Xây dựng Môi trường thực hành An ninh mạng trong 5 phút: Mở khóa Bước đầu tiên để trở thành Chuyên gia Hacking! (Lưu Hướng dẫn này)
Đối với những người mới bắt đầu tìm hiểu về an ninh mạng, việc thiết lập một môi trường thực hành để kiểm thử xâm nhập thường rất cần thiết. Môi trường thực hành về cơ bản là một nền tảng mô phỏng môi trường mạng thực tế, cho phép nhân viên bảo mật tiến hành các bài kiểm tra bảo mật khác nhau (như kiểm thử xâm nhập, săn lỗ hổng, diễn tập tấn công/phòng thủ) trong một môi trường được kiểm soát. Xây dựng một môi trường như vậy giúp các chuyên gia thực hành mô phỏng các cuộc tấn công và lỗ hổng trong thế giới thực một cách hợp pháp và có đạo đức, cuối cùng nâng cao hiệu quả và độ chính xác của việc phòng thủ bảo mật.
Kiến trúc kỹ thuật để xây dựng môi trường thực hành về cơ bản giống với quy trình triển khai một trang web thực tế. Mặc dù môi trường sản xuất (production) có thể liên quan đến các cấu hình phức tạp hơn (như cân bằng tải, gia cố bảo mật, v.v.), môi trường chạy cốt lõi đều dựa trên các thành phần chính sau:
- Mã ứng dụng Website: Bao gồm logic front-end và back-end.
- Máy chủ Web (Web Server): Xử lý yêu cầu và phục vụ nội dung. Các ví dụ phổ biến bao gồm Nginx, Apache, Caddy, v.v.
- Cơ sở dữ liệu (Database): Lưu trữ và quản lý dữ liệu, chẳng hạn như MySQL, MongoDB, PostgreSQL, v.v.
Ba thành phần này tạo thành nền tảng của một trang web hoạt động được.
Dựa trên các thành phần này, nhiều ngăn xếp công nghệ (technology stacks) khác nhau có thể được kết hợp, chẳng hạn như Frontend + Python + Nginx + MySQL
, Frontend + Java + Nginx + MySQL
, Frontend + PHP + Apache + MongoDB
, v.v.
Việc cấu hình và quản lý thủ công tất cả các thành phần này cùng các phụ thuộc của chúng cho một môi trường thực hành sẽ khá tẻ nhạt và tốn thời gian. Do đó, để đơn giản hóa việc triển khai và tập trung vào việc thực hành, chúng tôi khuyên bạn nên sử dụng một công cụ tích hợp tiện lợi như ServBay. Nó giúp chúng ta thiết lập nhanh chóng và dễ dàng các môi trường chạy website với nhiều sự kết hợp khác nhau.
Được rồi! Hãy bắt đầu xây dựng môi trường thực hành!
ServBay
Giới thiệu ServBay
ServBay là một công cụ quản lý môi trường phát triển tích hợp các ngôn ngữ lập trình phổ biến (bao gồm Python, PHP, Go, Node.js, v.v.), cũng như các máy chủ web và cơ sở dữ liệu thông dụng. Đối với nhu cầu kiểm thử xâm nhập của chúng ta, chúng ta phải xem xét các tình huống khác nhau. Ưu điểm cốt lõi của ServBay nằm ở khả năng chuyển đổi giữa các phiên bản phần mềm khác nhau chỉ bằng một cú nhấp chuột, cho phép bạn nhanh chóng mô phỏng các môi trường mục tiêu khác nhau với các lỗ hổng đã biết.
Cài đặt ServBay
Đầu tiên, hãy cài đặt ServBay. Liên kết tải xuống chính thức: https://www.servbay.com/download
Vào giao diện khởi tạo của ServBay và chọn các máy chủ web, ngôn ngữ và cơ sở dữ liệu bạn cần cài đặt.
Đợi quá trình cài đặt hoàn tất. ServBay sẽ tự động chạy.
Màn hình sau đây cho biết quá trình cài đặt đã hoàn tất.
Tải xuống và khởi động cơ sở dữ liệu MySQL.
Sau đó, khởi động máy chủ web cần thiết. Tôi chọn Nginx ở đây.
Khi môi trường đã sẵn sàng, chúng ta cần cài đặt ứng dụng thực hành. Ở đây, tôi đề xuất DVWA.
DVWA
Giới thiệu DVWA
DVWA (Damn Vulnerable Web Application - Ứng dụng Web Cực kỳ Lỗ hổng) nói một cách đơn giản là một trang web cố tình chứa đầy lỗ hổng ("damn vulnerable") dành riêng cho việc thực hành. Nó cố ý bao gồm một loạt các lỗ hổng web phổ biến, chẳng hạn như SQL Injection, XSS (Cross-Site Scripting), Lỗ hổng Tải lên Tệp (File Upload), v.v., khiến nó trở nên hoàn hảo cho những người học an ninh mạng thực hành.
DVWA bao gồm 10 mô-đun tấn công.
Ngoài ra, DVWA cho phép bạn điều chỉnh thủ công mức độ bảo mật của mã nguồn: Thấp (Low), Trung bình (Medium), Cao (High) và Bất khả thi (Impossible). Mức độ càng cao, các biện pháp bảo mật càng nghiêm ngặt và độ khó xâm nhập càng lớn. Cho dù bạn là người mới bắt đầu hay chuyên gia, DVWA đều có thể đáp ứng nhu cầu thực hành của bạn!
Cài đặt DVWA
Liên kết tải xuống DVWA: https://github.com/digininja/DVWA
Sau khi tải xuống và giải nén, di chuyển các tệp vào thư mục /Applications/ServBay/www/
. (Lưu ý: Đường dẫn này dành riêng cho macOS. Hãy điều chỉnh nếu sử dụng hệ điều hành khác, thường là trong thư mục gốc web được chỉ định của ServBay.)
Sau đó, đổi tên tệp config.inc.php.dist
thành config.inc.php
. Bạn chỉ cần sửa đổi tên người dùng và mật khẩu cơ sở dữ liệu; các cấu hình khác có thể giữ nguyên.
Lời nhắc thân thiện: Bạn cần nhập thông tin đăng nhập MySQL tại đây (tên người dùng và mật khẩu). Thông tin mặc định thường có thể được tìm thấy trong bảng điều khiển ServBay trừ khi bạn đã thay đổi chúng trong quá trình thiết lập hoặc sau đó. Nếu bạn đã sửa đổi tên người dùng hoặc mật khẩu MySQL, hãy sử dụng thông tin đăng nhập tùy chỉnh của bạn ở đây.
Cấu hình Cơ sở dữ liệu và Website
Trong trình duyệt của bạn, truy cập https://servbay.host/
(hoặc host bạn đã cấu hình trong ServBay) để mở trang web ví dụ. Nhấp vào phpMyAdmin để đến trang đăng nhập.
Nhập tên người dùng và mật khẩu MySQL (tìm thấy trong ServBay hoặc do bạn đặt), truy cập trang quản lý cơ sở dữ liệu và tạo một cơ sở dữ liệu mới.
Nhập tên cho cơ sở dữ liệu mới (thường là 'dvwa' như được chỉ định trong tệp cấu hình DVWA) và nhấp vào 'Tạo' (Create).
Bây giờ, mở ServBay và tạo một trang web (site) mới, trỏ thư mục gốc (root directory) của nó đến thư mục DVWA bạn đã đặt trước đó (ví dụ: /Applications/ServBay/www/DVWA
). Gán cho nó một tên miền (domain name) (ví dụ: dvwa.test
).
Trong trình duyệt của bạn, nhập tên miền bạn vừa cấu hình cho trang web. Bạn sẽ truy cập thành công trang thiết lập/đăng nhập DVWA. Nếu đó là trang thiết lập, trước tiên hãy nhấp vào nút "Tạo / Đặt lại Cơ sở dữ liệu" (Create / Reset Database).
Nhập tên người dùng mặc định admin
và mật khẩu password
để đăng nhập vào trang thực hành kiểm thử xâm nhập.
Được rồi, thiết lập DVWA đã hoàn tất! Xin chúc mừng!!!
Nhấp vào nút 'DVWA Security' trên menu bên trái. Trên trang này, bạn có thể đặt mức độ bảo mật cho môi trường thực hành DVWA (Thấp, Trung bình, Cao, Bất khả thi). Chọn mức độ mong muốn theo nhu cầu của bạn và bắt đầu thực hành kiểm thử xâm nhập.
Bằng cách kết hợp ServBay và DVWA, bạn có thể nhanh chóng xây dựng một môi trường thực hành an ninh mạng. Hành trình của bạn từ người mới bắt đầu đến chuyên gia an ninh mạng đang được tiến hành tốt đẹp!
All rights reserved