PENTEST + : Thiết lập tường lửa Pentest Lab với pfsense trong VMware

QuanTriMang – Bảo vệ mạng với pfSense

pfSense là một ứng dụng có chức năng định tuyến vào tường lửa mạnh và miễn phí, ứng dụng này sẽ cho phép bạn mở rộng mạng của mình mà không bị thỏa hiệp về sự bảo mật. Bẳt đầu vào năm 2004, khi m0n0wall mới bắt đầu chập chững– đây là một dự án bảo mật tập trung vào các hệ thống nhúng – pfSense đã có hơn 1 triệu download và được sử dụng để bảo vệ các mạng ở tất cả kích cỡ, từ các mạng gia đình đến các mạng lớn của của các công ty. Ứng dụng này có một cộng đồng phát triển rất tích cực và nhiều tính năng đang được bổ sung trong mỗi phát hành nhằm cải thiện hơn nữa tính bảo mật, sự ổn định và khả năng linh hoạt của nó.

Phiên bản mới nhất 1.2, gồm có nhiều tính năng mà bạn vẫn thấy trên các thiết bị tường lửa hoặc router thương mại, chẳng hạn như GUI trên nền Web tạo sự quản lý một cách dễ dàng. Trong khi đó phần mềm miễn phí này còn có nhiều tính năng ấn tượng đối với firewall/router miễn phí, tuy nhiên cũng có một số hạn chế.

Với tư cách một tường lửa, pfSense hỗ trợ lọc bởi địa chỉ nguồn và địa chỉ đích, cổng nguồn hoặc cổng đích hay địa chỉ IP. Cho ví dụ, nếu chúng ta sử dụng lọc địa chỉ nguồn và thiết lập địa chỉ IP được kiểm tra là subnet của mạng bên trong thì bất cứ lưu lượng hay bất cứ yêu cầu nào được tạo ra từ địa chỉ đó sẽ bị phân tích và được lọc phụ thuộc vào các nguyên tắc của tường lửa. Nếu chúng ta sử dụng lọc địa chỉ đích thì tường lửa sẽ kiểm tra địa chỉ IP mà lưu lượng sẽ đi, và nếu địa chỉ đích thỏa mãn các nguyên tắc của tường lửa thì một hành động thích hợp sẽ được thực thi.

Một trong những tính năng tường lửa tốt nhất là khả năng P0F (passive operating system fingerprinting – tạm được dịch là: khả năng lấy dấu vân tay hệ điều hành thụ động), tính năng này sẽ phát hiện một cách thụ động hệ điều hành của kết nối và cho phép tường lửa khóa các kết nối dựa trên hệ điều hành của nút đang kết nối. Nó cũng hỗ trợ chính sách định tuyến và có thể hoạt động trong các chế độ bridge hoặc transparent, cho phép bạn chỉ cần đặt pfSense ở giữa các thiết bị mạng mà không cần đòi hỏi việc cấu hình bổ sung. pfSense cung cấp network address translation (NAT) và tính năng chuyển tiếp cổng, tuy nhiên ứng dụng này vẫn còn một số hạn chế với Point-to-Point Tunneling Protocol (PPTP), Generic Routing Encapsulation (GRE) và Session Initiation Protocol (SIP) khi sử dụng NAT.

pfSense được dựa trên FreeBSD và giao thức Common Address Redundancy Protocol (CARP) của FreeBSD, cung cấp khả năng dự phòng bằng cách cho phép các quản trị viên nhóm hai hoặc nhiều tường lửa vào một nhóm tự động chuyển đổi dự phòng. Vì nó hỗ trợ nhiều kết nối mạng diện rộng (WAN) nên có thể thực hiện việc cân bằng tải. Tuy nhiên có một hạn chế với nó ở chỗ chỉ có thể thực hiện cân bằng lưu lượng phân phối giữa hai kết nối WAN và bạn không thể chỉ định được lưu lượng cho qua một kết nối.

pfSense hỗ trợ VPN trong sử dụng Internet Protocol Security (IPSec), OpenVPN hoặc PPTP. Do có một số hạn chế với NAT nên IPSec VPN cũng bị hạn chế khi kết nối thông qua NAT, hạn chế ở đây thể hiện ở chỗ thiếu đi sự hỗ trợ cho các máy khách VPN di động hoặc từ xa. Phần mềm cũng thiếu các tính năng IPSec nâng cao như NAT Traversal trong Internet key exchange (IKE), thành phần vẫn được biết đến với tên NAT-T và Xauth. Bạn có thể chọn OpenVPN khắc phục một số hạn chế đó, tuy nhiên vẫn có một số hạn chế khác mặc dù nhóm phát triển đã hứa hẹn sẽ giải quyết các hạn chế đó trong phiên bản kế tiếp

Cài đặt pfSense

Để cài đặt trước tiên bạn phải download pfSense và chọn giữa gói được nhúng hoặc một gói CD ISO. Bạn chỉ nên chọn gói được nhúng nếu sẽ sử dụng nó trên một thiết bị mạng sử dụng công nghệ flash cho lưu trữ. Hầu hết mọi người nên chọn CD ISO cho các máy tính thông thường. Để chạy pfSense đúng cách, bạn cần một “box” với cấu hình tối thiểu CPU 100MHz với 128MB Ram và có ít nhất hai card giao diện mạng (NIC), một cho LAN và một cho WAN. Yêu cầu tối thiểu này đáp ứng được cho thông lượng nhỏ hơn 10Mbps. Khi thông lượng mạng của bạn và tính năng sử dụng tăng, thì các yêu cầu của pfSense cũng tăng theo. Hãy kiểm tra trên trang của pfSense để có được các chi tiết kỹ thuật thích hợp nhất cho các yêu cầu của bạn.

Chúng tôi đã download 60MB gói CD ISO và đã burn nó vào một đĩa. Khi khởi động từ CD, bạn sẽ thấy một số tùy chọn. Nếu đây là cài đặt ban đầu cho pfSense bạn hãy chọn tùy chọn mặc định. Quá trình khởi động ban đầu sẽ thiết lập VLAN và chọn giao diện cho LAN và WAN. Bạn có thể tự động phát hiện các thiết lập giao diện nhưng phải bảo đảm rằng các giao diện đã được kết nối. Nếu chưa được kết nối, bạn sẽ phải nhập vào tên các giao diện một cách thủ công. Trong cài đặt của chúng tôi, chúng tôi chọn le0 cho giao diện LAN và le1 cho WAN.

Sau cấu hình ban đầu, quá trình khởi động sẽ tiếp tục cho tới khi bạn vào được giao diện điều khiển của pfSense, giao diện này là một menu đơn giản cho phép bạn cấu hình các thiết lập giao diện, kích hoạt cấu hình Web và các dịch vụ khác, thiết lập lại cấu hình mặc định của nhà máy, cài đặt pfSense vào ổ đĩa cứng. pfSense sẽ tự động gán địa chỉ IP cho giao diện LAN, nhưng chúng tôi đã sử dụng một địa chỉ riêng chính vì vậy đã thay đổi địa chỉ IP của LAN để địa chỉ mới sẽ được sử dụng trong suốt quá trình cài đặt trên đĩa cứng. Bạn phải format và tạo partition đĩa trước khi cài đặt pfSense. Nếu bạn chọn partition được khuyến khích thì pfSense sẽ tạo nó cho bạn. Mặc dù vậy bạn vẫn có tùy chọn để tạo một partition layout của riêng mình

rong cài đặt của chúng tôi, chúng tôi đã chọn partition mặc định được khuyên dùng. Trong suốt quá trình cài đặt, pfSense sẽ hỏi bạn về kiểu hệ thống mà bạn muốn cài đặt nó trên. Bạn có thể chọn trạm thông thường (một uniprocessor hoặc multiprocessor), một trạm không có bất kỳ giao diện điều khiển hoặc bàn phím hoặc hệ thống nhúng. Chúng tôi đã chọn hệ thống uniprocessor. Sau khi cài đặt, khởi động lại máy tính và sử dụng tùy chọn cấu hình địa chỉ IP của LAN, truy cập vào giao diện cấu hình Web.

Sử dụng pfSense

Cấu hình của pfSense cũng không khác với các cấu hình của bất cứ firewall và router mạng nào có sử dụng cấu hình Web. Sau khi đăng nhập bằng username và password mặc định, bạn có thể cấu hình các giao diện của tường lửa và các rule cho nó. Để việc quản lý trên Web an toàn, cần thay đổi mật khẩu mặc định và thiết lập kiểu session thành HTTPS trên các thuộc tính cài đặt chung. Ở đây bạn cũng có thể thiết lập các thiết lập DNS của tường lửa.

Cấu hình LAN hoàn toàn rất đơn giản. Nếu bạn chưa thực hiện thì trước khi cài đặt, bạn chỉ cần thiết lập địa chỉ IP. Trong giao diện WAN, có thể chọn giữa nhiều kết nối khác nhau như Static, Dynamic Host Configuration Protocol (DHCP), Point-to-Point Protocol trên cáp Ethernet (PPPoE) và BigPond. Chọn kết nối thích hợp như được cấu hình bởi ISP của bạn.

Khi đã cấu hình các giao diện mạng đúng cách, bạn có thể thiết lập các chính sách tường lửa. Cũng như bất kỳ thiết bị tường lửa nào, việc thiết lập chính sách tường lửa yêu cầu bạn phải chọn một giao diện (WAN hoặc LAN), địa chỉ nguồn, cổng và địa chỉ đích, các giao thức và dịch vụ và các kiểu hành động như cho qua, khóa hoặc reject. Hành động khóa sẽ drop hoàn toàn các gói dữ liệu trong khi đó hành động reject sẽ trả về một đáp trả “unreachable” cho host đang khởi tạo kết nối. Để bảo mật, bạn nên chọn hành động khóa hơn là reject. Trong Firewall bạn cũng có thể cấu hình các thiết lập NAT nếu cần sử dụng cổng chuyển tiếp cho các dịch vụ hoặc cấu hình NAT tĩnh (1:1) cho các host cụ thể. Thiết lập mặc định của NAT cho các kết nối outbound là automatic/dynamic, tuy nhiên bạn có thể thay đổi kiểu manual nếu cần. Chúng tôi đã test một số rule tường lửa đã được tạo chẳng hạn như các rule cho việc khóa truy cập FTP vào các mạng bên ngoài và pfSense đã khóa dịch vụ này một cách thành công…

Chúng tôi cũng test các tính năng VPN của pfSense. Nó hỗ trợ IPSec, OpenVPN, và cả PPTP. Nếu bạn cần một kết nối VPN nhanh và có ít băng thông hiện hữu so với được yêu cầu bởi các kết nối SSL VPN mà vẫn đảm bảo bảo mật tốt, hãy chọn IPSec VPN. Nếu bạn đã quản lý cấu hình IPSec VPN trước đây, khi đó bạn sẽ thấy rằng việc cấu hình IPSec trong VPN rất đơn giản và có thể được thực hiện trong một vài phút. Bảo đảm rằng các tham số cho các thuật toán trong sử dụng đều chung nhau cho cả hai một cách xuyên suốt. Cũng cần lưu ý thêm là có một số hạn chế của IPSec VPN trên pfSense Developers Wiki. Với cấu hình IPSec đơn giản, các hạn chế của pfSense có thể vẫn đảm bảo ở mức độ nào đó và nó làm việc tốt với các cài đặt (liền kề) site-to-site mà chúng tôi đã test. Mặc dù vậy với các ứng dụng quan trọng liên quan đến việc giải quyết các máy khác di động và sự thẩm định thì bạn sẽ thấy sự thiếu và hạn chế trong cấu hình IPSec của pfSense.

Bạn có thể sử dụng OpenVPN để khắc phục một số hạn chế trên của IPSec. OpenVPN có thể cho phép tăng độ an toàn vì nó sử dụng SSL. Chỉ có một ngược điểm ở đây là nó yêu cầu nhiều overhead do SSL, điều này cũng nó nghĩa sẽ ngốn nhiều băng thông hơn IPSec.

Nếu bạn có các máy khác VPN vẫn sử dụng các kết nối PPTP dial-up thì pfSense sẽ hỗ trợ đầy đủ PPTP.

Các tính năng khác của pfSense phải kể đến như khả năng kết nối WAN của nó và sự cân bằng tải. Bạn có thể thiết lập một “captive portal”, cổng điện tử yêu cầu người dùng truy cập vào mạng phải thẩm định bản thân anh ta thông qua một cơ sở dữ liệu nội bộ hoặc Remote Authentication Dial-In User Service (RADIUS) trước khi được phép vào. Với người dùng muốn truy cập mạng của bạn bằng PPPoE thì máy chủ PPPoE đã hiện hữu và sự thẩm định có thể được sử dụng nội bộ hoặc thông qua RADIUS.Việc kiểm tra và ghi các sự kiện trong pfTools diễn ra hoàn toàn dễ dàng. Nó sẽ thể hiện cho bạn bằng biểu đồ RRDtool thời gian thực, hiển thị ảo mỗi quá trình hoạt động trong máy tính của bạn, chẳng hạn như lưu lượng và các quá trình của hệ thống. Các bản ghi đều được tổ chức và có thể tìm một cách dễ dàng. Bên cạnh đó cùng với các công cụ chuẩn đoán bên trong như traditional traceroute và packet sniffer, giúp cải thiện việc khắc phục sự cố một cách hiệu quả và rất hữu dụng.

Mặc dù một số tính năng cần cải thiện nhưng các khả năng pfSense hiện đang cung cấp đáp ứng được một mạng văn phòng. Nó cũng dễ dàng trong quản lý và cung cấp nhiều tính năng để như trong các sản phẩm thương mại. Mặc dù vậy một số tính năng đã được sử dụng trong các doanh nghiệp lớn vẫn còn nhiều hạn chế, chính vì vậy chúng tôi không khuyên các bạn sử dụng trong môi trường lớn như vậy. Với cộng đồng phát triển tích cực của ứng dụng này, dự án nên giải quyết các vấn đề này đó như các tính năng mới được bổ sung.

Với khả năng đa WAN của nó và cân bằng tải, bạn hoàn toàn có thể bổ sung pfSense vào danh sách các giải pháp firewall/router mạng đang phát triển, giá thành thấp hoặc miễn phí.

Thiết lập tường lửa Pentest Lab với pfsense trong VMware (CEH VIETNAM – Comptia PENTEST + vLAB)

Tường lửa: Là một hệ thống máy tính hoặc mạng được thiết kế để chặn truy cập trái phép trong khi cho phép giao tiếp ra bên ngoài. Tường lửa có rất quan trọng trong thế giới kỹ thuật của chúng ta vì nó đảm bảo hệ thống của chúng ta an toàn cũng như bảo mật của dữ liệu. Và tường lửa trong mạng giúp chúng ta bảo mật toàn bộ mạng. Nó hoạt động như một thiết bị an ninh mạng cho phép hoặc từ chối quyền truy cập mạng vào các luồng lưu lượng giữa các vùng không đáng tin cậy. 

Để bảo mật mạng, chúng ta luôn nên sử dụng tường lửa của bên thứ ba thay vì tường lửa của riêng windows vì nó giúp cấu hình tất cả mạng dễ dàng và chỉ trong một hệ thống. Nếu bạn sử dụng tường lửa của chính windows, bạn phải cấu hình mất rất nhiều thời gian của bạn.

Thiết lập tường lửa có thể phức tạp. Do đó, trong bài viết này, chúng ta sẽ học cách thiết lập tường lửa bằng PFSense. Bằng cách thiết lập tường lửa này, chúng ta sẽ tạo ra một bức tường giữa các mạng của chúng ta, nó sẽ phân chia mạng của chúng ta thành hai phần tức là Mạng bên ngoài và mạng nội bộ.

Bạn có thể tải xuống ảnh ISO cho PFSenese từ đây :

Bây giờ bạn đã có ảnh ISO, hãy thiết lập PFSense trong máy ảo của bạn giống như bạn thiết lập cửa sổ và bật nguồn của nó và PFSense sẽ mở:

Và nó sẽ tự khởi động trong vài giây:

Sau khi khởi động lại, hãy chọn chấp nhận các Cài đặt này.

Từ hộp thoại tiếp theo, chọn Quick / Easy Install.

Khi bạn nhấp vào ok, nó sẽ cho phép quá trình cài đặt bắt đầu mà không cần hỏi những câu hỏi không cần thiết:

Và quá trình cài đặt bắt đầu:

Bây giờ để cài đặt cấu hình tùy chỉnh, hãy chọn tùy chọn Hạt nhân chuẩn.

Và nó sẽ bắt đầu cài đặt:

Bây giờ, hãy chọn tùy chọn Khởi động lại để tường lửa có thể khởi động.

Do đó, quá trình khởi động lại sẽ bắt đầu.

Sau quá trình khởi động lại, nó sẽ hỏi bạn có muốn thiết lập VLAN hay không. Ở đây chỉ cần nhập n cho không và nhấn enter.

Bây giờ nó sẽ yêu cầu bạn đặt tên cho giao diện WAN và LAN. Đặt tên le0 cho WAN và le1 cho LAN. Sau đó, chỉ cần nhấn enter khi nó yêu cầu bạn đặt tên cho giao diện tùy chọn.

Nó sẽ hiển thị cho bạn các giao diện và tên của chúng ngay bây giờ và sẽ yêu cầu sự cho phép của bạn để tiếp tục. Nhấn y để có khi bạn cho phép nó tiếp tục.

Bây giờ, trong hình ảnh sau, bạn có thể thấy rằng nó đã tự động lấy địa chỉ IP cho WAN tức là 192.168.1.7, nếu bạn muốn đặt IP mong muốn cho WAN thì hãy chọn tùy chọn 2 và nhấn phím 1 để cấu hình mạng WAN.

Nó sẽ hỏi bạn rằng bạn có muốn gán địa chỉ IP IPv4 hay không. Ở đây, nhấn n để không. Khi bạn nhấn enter, nó sẽ hỏi bạn có muốn gán địa chỉ IP IPv4 hay không. Tại đây, nhập địa chỉ IP mong muốn của bạn và nhấn enter. Sau đó, nó sẽ yêu cầu bạn cung cấp mặt nạ mạng con cho địa chỉ IP mà bạn vừa nhập. Bây giờ vì địa chỉ IP của chúng tôi là lớp C, chúng tôi sẽ cung cấp 24 làm mặt nạ mạng con. Sau khi nhấn enter, nó sẽ hỏi bạn có muốn cung cấp cổng ngược dòng hay không. Tại đây, chỉ cần nhấn enter. Và khi nó yêu cầu bạn đặt IPv6 thông qua DHCP6 thì bạn chỉ cần nhấn enter mà không cần nhập bất kỳ thứ gì khác vì chúng tôi không yêu cầu IPv6. Và khi nó yêu cầu bạn cấu hình web HTTP, hãy nhấn n để không.

Bạn có thể thấy rằng IP mong muốn của bạn cho WAN đã được thiết lập. Nhấn enter để tiếp tục.

Tương tự, bạn có thể thiết lập địa chỉ IP LAN bằng cách chọn 2 để gán địa chỉ IP và chọn 2 cho LAN.

Giống như trước đây, nó sẽ hỏi bạn địa chỉ IP của mạng LAN và do đó bạn nhập địa chỉ IP mạng LAN của mình. Và sau đó nó sẽ yêu cầu bạn cung cấp mặt nạ mạng con, ở đây chúng tôi đã đưa ra mặt nạ mạng con là 8 vì IP của chúng tôi thuộc loại A. Chỉ cần nhấn enter khi nó yêu cầu bạn nhập cổng ngược dòng. Và cũng nhấn enter khi nó yêu cầu bạn nhập IPv6 vì chúng tôi không yêu cầu. Và sau đó nhấn y cho tùy chọn hoàn nguyên HTTP .

Và như thế này, địa chỉ IP LAN của bạn đã được thiết lập. Bây giờ, nhấn enter để tiếp tục.

Bây giờ để kiểm tra xem tường lửa của bạn đã được định cấu hình đúng chưa, hãy ping một địa chỉ IP. Chọn tùy chọn 7 và nhập địa chỉ IP bạn muốn ping. Nếu nó ping thành công có nghĩa là tường lửa của bạn đã được cấu hình thành công. Và bạn có thể nhấn enter để tiếp tục.

Tác giả : Yashika Dhir là một nhà nghiên cứu và nhà văn kỹ thuật đầy nhiệt huyết tại Hacking Articles.

Lưu ý : Bài này chỉ đọc tham khảo, hãy theo dõi bài trình bày của instrcutor Đông Dương để triền 1 hệ thống pentest + vlab với secure onion, kali linux và pfsense và target là metasplotiable 2 kèm vài máy windows…

Trả lời

Please log in using one of these methods to post your comment:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Đăng xuất /  Thay đổi )

Google photo

Bạn đang bình luận bằng tài khoản Google Đăng xuất /  Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Đăng xuất /  Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Đăng xuất /  Thay đổi )

Connecting to %s