Security Assessment

Bảo Mật Website A-Z: Hướng dẫn cách bảo vệ trang web hiệu quả

CyStack Avatar

Trung Nguyen

CEO @CyStack|September 18, 2023

Theo số liệu thống kê tại Việt Nam năm 2019, cứ mỗi 45 phút trôi qua lại có một website bị tấn công. Trang web bị hack không chỉ gây bất tiện cho người dùng, mà còn khiến các doanh nghiệp thiệt hại về doanh thu, danh tiếng. Trong bài viết này, CyStack sẽ hướng dẫn bạn đọc các phương pháp để bảo mật website toàn diện trước các cuộc tấn công của tin tặc.


Bảo mật website A-Z

Các nội dung chính trong cuốn ebook “Bảo Mật Website A-Z”:

  • Thực trạng bảo mật website tại Việt Nam
  • 12 bước bảo mật website A-Z
  • Các câu hỏi thường gặp khi bảo mật website

Tại sao cần bảo mật website?

Phòng bệnh hơn chữa bệnh là một thái độ đúng đắn khi tiếp cận với an ninh mạng, đặc biệt khi website là một trong những tài sản số bị tin tặc nhắm đến nhiều nhất.

Trang web bị hack có thể gây ra một số hậu quả:

  • Gián đoạn hoạt động kinh doanh;
  • Bị lộ dữ liệu khách hàng và thông tin quan trọng;
  • Ảnh hưởng đến SEO (Từ khóa bị mất thứ hạng trên Google);
  • Ảnh hưởng tới uy tín thương hiệu;
  • Không thể chạy quảng cáo Google và Facebook.

Việt Nam là một trong những nước bị hack website nhiều nhất trên thế giới

Trong những năm vừa qua, số vụ tấn công vào các website trên toàn cầu có dấu hiệu tăng cao. Theo Báo cáo An ninh Website 2019 từ CyStack, năm 2019 thế giới phải hứng chịu hơn 560.000 vụ tấn công website. Việt Nam vẫn đứng thứ 11 toàn cầu với hơn 9.000 trang web bị tấn công. Điều đó cho thấy tình trạng chung về bảo mật website tại Việt Nam trong năm 2019 chưa thực sự tốt.

top 15 nước bị hack website nhiều nhất thế giới

Tuy nhiên, đó không hẳn là một tín hiệu xấu, bởi nhận thức về an ninh website của các tổ chức, doanh nghiệp Việt trong năm qua đã tăng đáng kể. Bằng chứng là số lượng các website Việt Nam bị tấn công trong Quý IV giảm đáng kể so với Quý III.

Có nên sử dụng dịch vụ bảo mật website?

Một số người thắc mắc, vậy có nên sử dụng dịch vụ bảo mật website trên thị trường hay không?

Câu trả lời phụ thuộc vào nhu cầu và mục tiêu bảo mật của từng cá nhân, doanh nghiệp. Có nhiều loại dịch vụ bảo mật website khác nhau từ đánh giá an ninh website, giám sát bảo mật website, tới khắc phục sự cố phát sinh. Tuy theo nhu cầu mà doanh nghiệp lựa chọn loại dịch vụ phù hợp.

Một số doanh nghiệp startup, SMB cần tập trung nhân lực vào phát triển kinh doanh mà vẫn muốn bảo vệ website an toàn nên sử dụng dịch vụ bảo mật website toàn diện. Khi đã phát triển đủ lớn thì nên xem xét sử dụng các dịch vụ riêng lẻ để đạt hiệu quả cao nhất, như dịch vụ đánh giá an ninh ứng dụng web.

Ngay cả khi không sử dụng dịch vụ an ninh website, bạn vẫn có thể bảo mật trang web của mình với các phương pháp sau đây.

Quy trình bảo mật website toàn diện

Bảo mật tài khoản quản trị viên website

Bảo vệ mật khẩu quản trị viên

Việc sử dụng một mật khẩu quá đơn giản có thể tạo điều kiện cho các hacker tấn công dò mật khẩu (brute-force attack). Vì thế các quản trị viên website cần đặt những mật khẩu mạnh, bao gồm cả số và chữ cái viết hoa, và các ký tự đặc biệt.

Để bảo mật tài khoản tốt nhất thì mật khẩu cần được thay đổi định kỳ. Và đặc biệt không dùng chung một mật khẩu cho nhiều tài khoản. Bạn sẽ không muốn khi bị lộ mật khẩu Facebook sẽ lộ luôn mật khẩu quản trị website.

Gợi ý: Sử dụng phần mềm Locker Password Manager giúp bạn dễ dàng quản lý tất cả mật khẩu cá nhân. Download

Giới hạn số lần nhập sai mật khẩu

Để chống lại cuộc tấn công dò mật khẩu, bạn có thể cài đặt thêm tính năng khóa đăng nhập khi sai mật khẩu quá 5 lần. Khi đó hacker sẽ không thể dò được mật khẩu tài khoản admin website của bạn. Bạn có thể cài đặt plugin có tên Loginizer trên WordPress để thực hiện biện pháp bảo mật này.

Đổi URL đăng nhập trang quản lý

Một trong những cách đơn giản khác để chống lại tấn công dò mật khẩu là đổi địa chỉ đăng nhập trang quản trị website. Thông thường mặc định của WordPress là /wp-admin và Joomla là /administrator/index.php. Nếu bạn đổi địa chỉ đăng nhập này khác với giá trị mặc định, tin tặc sẽ gặp khó khăn hơn khi có ý đồ tấn công website.

Bật xác thực 2 bước (2FA)

Trong trường hợp kẻ xấu có được mật khẩu admin website của bạn bằng các hình thức phân phối mã độc hoặc phishing, bạn vẫn sẽ an toàn nếu bật tính năng xác thực đăng nhập 2 bước.

Để sử dụng tính năng này, tải về ứng dụng Authenticator trên Android hoặc iOS.

Phân quyền tài khoản hợp lý

Nếu website chỉ có một vài thành viên thì không thành vấn đề. Nhưng nếu website có hàng chục tới hàng trăm người tham gia xây dựng, từ content tới code, thì có nhiều vấn đề phát sinh. Hãy đảm bảo mỗi người được phân quyền hợp lý đúng với vai trò công việc của họ.

Ngoài ra, nếu bảo mật website là một vấn đề quan trọng với bạn, thì việc sử dụng nhiều tài khoản khác nhau có quyền giới hạn, phục vụ những mục đích khác nhau sẽ an toàn hơn so với sử dụng một tài khoản có tất cả quyền hạn.

Và đừng quên xóa tài khoản của nhân viên nghỉ việc.

Phòng chống mã độc và virus cho website

Quét mã độc cho website

Virus, trojan hay phần mềm độc hại nói chung là một mối đe dọa tới sự an toàn của website. Việc quét và diệt mã độc thường xuyên rất quan trọng với mọi website từ nhỏ đến lớn.

Gợi ý: Bạn có thể quét mã độc cho website với các công cụ mạnh mẽ như VirusTotal hoặc CyStack Web Security. Dùng thử ngay

Thận trọng với mã độc ẩn trong theme và plugin miễn phí trên WordPress

Hacker có thể lợi dụng tâm lý ham rẻ của người dùng khi tải theme hay plugin miễn phí trên mạng để chèn mã độc vào những sản phẩm đó. Nếu không cẩn trọng, chủ website của thể tải những thành phần đã nhiễm mã độc lên website dẫn tới việc website bị tấn công lúc nào không hay.

Lời khuyên tốt nhất trong tình huống này là hãy cẩn trọng với những “bữa ăn miễn phí” trên mạng. Nếu bạn có kiến thức về lập trình thì hãy kiểm tra code của những plugin đó thật kỹ càng. Nếu không, hãy trả phí để mua bản quyền để được hỗ trợ kỹ thuật và cập nhật bảo mật trọn đời.

Sử dụng HTTPS/chứng chỉ SSL

Nếu bạn chưa cài đặt HTTPS cho website thì giờ là lúc thích hợp. Chưa kể HTTPS tốt cho bảo mật của website, nó còn mang lại các lợi ích khác như tốt cho thương hiệu, tốt cho SEO, giúp website không bị các trình duyệt web đánh dấu là “không an toàn”.

Đặc biệt các website thương mại điện tử có tích hợp cổng thanh toán online thì việc cài đặt HTTPS là bắt buộc.

Gợi ý: Bạn có thể cài đặt HTTPS miễn phí với Let’s Encrypt.

Bảo vệ website khỏi tấn công DDOS

Sử dụng tường lửa ứng dụng web

Tường lửa Website (Web Appication Firewall – WAF) là một lớp phòng thủ hữu hiệu, giúp máy chủ web tránh khỏi những hình thức tấn công phổ biến như XSS, SQL injection, Buffer Overflow, hay tấn công từ chối dịch vụ DDoS.

Nhiệm vụ của Tường lửa Website là sàng lọc và phân loại các luồng traffic vào website. Từ đó phát hiện và ngăn chặn các luồng traffic được cho là độc hại. Đây là một phương pháp hiệu quả để bảo vệ website khỏi các cuộc tấn công từ chối dịch vụ.

Mua thêm băng thông dự phòng

Bạn nên sử dụng băng thông rộng hơn mức bạn cần cho máy chủ web. Bằng cách đó, bạn có thể đáp ứng các đột biến bất ngờ trong lưu lượng truy cập – có thể là kết quả của một chiến dịch quảng cáo, một chương trình khuyến mãi đặc biệt mà công ty bạn đang sử dụng hay do tên công ty của bạn được đề cập trên các phương tiện truyền thông.

Lưu ý rằng cho dù bạn có sử dụng băng thông rộng gấp 100% hay thậm chí 500% so với nhu cầu thực tế cũng không chắc chắn sẽ ngăn chặn được một cuộc tấn công DDoS, nhưng nó có thể cho bạn thêm thời gian để hành động trước khi máy chủ bị quá tải.

Giám sát downtime cho website

Nếu website bị DDoS ảnh hưởng tới công việc kinh doanh của bạn. Chắc chắn bạn sẽ cần một phần mềm giám sát downtime của website hiệu quả.

Downtime là khoảng thời gian website không khả dụng với người truy cập. Downtime xảy ra có thể do web bị tấn công từ chối dịch vụ (DDoS), có thể website bị quá tải, hoặc có vấn đề xảy ra với dịch vụ Hosting mà bạn đang sử dụng. Một website cần tối đa uptime và giảm thiểu downtime

Một trong những phần mềm miễn phí phổ biến nhất là Uptime Robot. Tuy nhiên tài khoản miễn phí chỉ được cảnh báo 5 phút 1 lần. Để có tần suất kiểm tra downtime cao hơn, bạn cần nâng cấp lên bản trả phí.

Gợi ý: Sử dụng phần mềm CyStack Web Security để giám sát bảo mật cho website và dịch vụ cloud 24/7. Đăng Ký

Bảo vệ dữ liệu website và thông tin khách hàng

Hạn chế cho phép upload files

Việc cho phép người dùng tải file lên trang web có thể mang lại rủi ro lớn cho website của bạn, NGAY CẢ KHI đó chỉ là hành động thay đổi hình đại diện.

Những file được upload lên, dù trông có vẻ vô hại, thì cũng có thể chứa những dòng lệnh độc hại tiêm nhiễm vào máy chủ. Vì thế, bạn nên “thẳng tay” tắt tính năng upload file nếu không cần thiết.

Nếu bạn bắt buộc phải cho người dùng upload file, hãy cẩn trọng với mọi tình huống. Đặc biệt, bạn không thể chỉ dựa vào phần mở rộng để xác định đó là file hình ảnh. Bởi một file có tên image.jpg.php có thể vượt qua dễ dàng. Ngoài ra thì hầu hết các hình ảnh đều cho phép lưu trữ một phần bình luận (comment) có thể chứa code PHP được thực thi bởi máy chủ web.

Giải pháp cho vấn đề này là chặn hoàn toàn quyền truy cập trực tiếp vào các file được tải lên. Theo đó, mọi file tải lên website được lưu trữ trong một thư mục bên ngoài webroot hoặc trong cơ sở dữ liệu dưới dạng blob.

Xác thực từ 2 phía

Xác thực phải luôn luôn được thực hiện cả trên trình duyệt và phía máy chủ. Trình duyệt có thể gặp các lỗi đơn giản như khi các trường bắt buộc điền bị để trống hay nhập văn bản vào trường chỉ cho điền số. Tuy nhiên, những điều này có thể được bỏ qua và nên đảm bảo việc kiểm tra các xác thực sâu hơn phía máy chủ. Vì không làm như vậy có thể dẫn đến mã hoặc tập lệnh độc hại được chèn vào cơ sở dữ liệu hoặc có thể gây ra kết quả không mong muốn trong trang web.

Cẩn thận với các thông báo lỗi

Hãy cẩn thận với lượng thông tin bạn cung cấp trong các thông báo lỗi. Chỉ cung cấp các lỗi tối thiểu cho người dùng, để đảm bảo chúng không làm rò rỉ các bí mật có trên máy chủ (ví dụ, khóa API hoặc mật khẩu cơ sở dữ liệu). Đừng cung cấp đầy đủ chi tiết ngoại lệ vì những điều này có thể làm cho các cuộc tấn công phức tạp như SQL injection được thực hiện dễ dàng hơn nhiều. Giữ các lỗi chi tiết trong nhật ký máy chủ và chỉ hiển thị cho người dùng thông tin họ cần.

Sao lưu website định kỳ

Việc sao lưu (backup) các bản ghi của website có ý nghĩa rất lớn trong bảo mật website. Nếu như website của bạn bị tin tặc tấn công không thể khôi phục lại bằng các biện pháp kỹ thuật, thì các bản sao lưu website sẽ là cứu cánh cho bạn.

Ngày nay các dịch vụ lưu trữ trên đám mây có giá cả phải chăng và tốc độ cao, bạn có thể sao lưu mã nguồn và cơ sở dữ liệu website dễ dàng với dịch vụ cloud AWS của Amazon hay Azure của Microsoft.

Cập nhật bản vá bảo mật cho website

Đôi khi, các nền tảng như WordPress cũng có những lỗ hổng bảo mật mà hacker có thể khai thác để tấn công website của bạn. Tương tự với theme, plugin, hệ điều hành máy chủ. Khi đó, nghĩa vụ vá những lỗi bảo mật này phụ thuộc vào nhà cung cấp, họ sẽ tung ra các bản cập nhật bảo mật. Vì vậy, để bảo mật website an toàn trước những sự cố từ bên thứ ba, bạn cần cập nhật tất cả mọi thành phần, ngay khi có thể.

Gợi ý: Bạn có thể bật chế độ tự động cập nhật cho WordPress.

Kiểm tra đánh giá an ninh website

Hình thức kiểm thử xâm nhập Pentest (Penetration Testing) là một phương pháp hữu hiệu để bảo mật cho các website lớn, nhiều tính năng. Đối với những website này, những phần mềm quét lỗ hổng tự động không thể tìm ra các lỗi bảo mật liên quan tới business logic, hoặc những lỗi phức tạp.

Ngược lại, các kỹ sư pentest sẽ giúp bạn thực hiện các cuộc tấn công thử nghiệm để phát hiện ra các lỗ hổng bảo mật phức tạp.

Với Penetration testing, bạn có thể:

  • Đánh giá bảo mật tổng thể cho website;
  • Tìm ra những điểm yếu kỹ thuật của website;
  • Khắc phục các lỗi bảo mật phức tạp trước khi tin tặc tìm ra và khai thác chúng.

Mặt trái của giải pháp Pentest là chi phí cao do sử dụng nhân lực để kiểm tra bảo mật. Vì vậy Pentest phù hợp với những tập đoàn có hệ thống website phức tạp, hoặc công ty công nghệ trong lĩnh vực thương mại điện tử, tài chính, ngân hàng, phần mềm.

>> Pentest hiệu quả hơn với chi phí hợp lý hơn? Tham khảo dịch vụ Pentest của CyStack.

Gợi ý: Các Startup có thể triển khai chương trình Bug Bounty để tìm lỗ hổng hiệu quả với chi phí hợp lý.

Xây dựng chương trình thông báo lỗ hổng VDP dành cho Hacker mũ trắng

Chương trình thông báo lỗ hổng (Vulnerability Disclosure Program) của website là một chính sách được thiết kế để khuyến khích các hacker mũ trắng tiết lộ có trách nhiệm lỗ hổng mà họ tìm thấy trên website của bạn.

Tiết lộ có trách nhiệm nghĩa là thay vì tiết lộ công khai hoặc bán lên chợ đen, họ sẽ thông báo với bạn về lỗ hổng trước tiên. Qua đó, bạn có thể tiến hành xác minh, vá lỗ hổng, vinh danh họ bằng sự công nhận hoặc vật chất (hoặc cả hai).

Chính sách cũng cần quy định rõ rằng bạn sẽ không kiện các hacker ra tòa khi nhận được báo cáo lỗ hổng từ họ.

Mặc dù việc thiết lập VDP không đảm bảo rằng bạn sẽ nhận được báo cáo từ hacker. Nhưng nếu không có nó thì các hacker mũ trắng sẽ không biết phải làm gì khi vô tình tìm ra lỗ hổng trên website của bạn.

Đào tạo kiến thức và quản lý nhân viên

Cho dù chiến lược bảo mật web của bạn có tốt đến mấy, nhưng chỉ cần một nhân viên sơ ý tải phần mềm độc hại vào máy, thì đó cũng là một mối nguy hại cho website và doanh nghiệp. Vì vậy, việc đào tạo kiến thức sử dụng internet an toàn cho nhân viên là tối cần thiết. Chúng bao gồm:

  • Cách sử dụng email an toàn, tránh bị lừa đảo phishing;
  • Cách sử dụng USB
  • Cách lướt web an toàn, tránh các trang độc hại;
  • Dấu hiệu nhận biết virus, malware;
  • Cách quản lý mật khẩu…

Để những điều trên đi vào hoạt động, bạn có thể thiết lập một chính sách và yêu cầu nhân viên phải tuân theo.

Gợi ý: Sử dụng phần mềm quản lý máy tính trạm Endpoint giúp ngăn ngừa các hành vi và phần mềm gây hại tới website và doanh nghiệp của bạn. Đăng Ký Tư Vấn

Những thói quen tốt giúp bảo mật website

Giữ mã nguồn và CSDL của website tối giản

Một website càng phức tạp, cồng kềnh thì càng dễ nảy sinh những lỗ hổng bảo mật cho phép tin tặc tấn công website. Chính vì vậy, bạn nên xóa những tính năng, dòng code, hay dữ liệu không cần thiết để giữ cho website luôn tối giản nhất. Điều này không những giúp tăng cường bảo mật cho website, mà còn giúp website chạy nhanh hơn, tạo ra trải nghiệm người dùng tốt hơn.

Bảo mật máy tính cá nhân

Mỗi máy tính cá nhân là một cửa gián tiếp giúp hacker tấn công vào website của bạn. Vì vậy, tập hình thành thói quen sử dụng máy tính một cách an toàn cũng là cách gián tiếp bảo mật website trước những rủi ro mạng. Để làm được điều đó, bạn nên sử dụng một phần mềm diệt virus uy tín, cẩn trọng khi duyệt web & mở email, file, link lạ, thận trọng khi sử dụng các thiết bị ngoại vi như USB, đĩa cứng, v.v.

TẠM KẾT

Tội phạm mạng luôn phát triển. Website của các tổ chức, doanh nghiệp luôn đứng trước nguy cơ bị tấn công ngày càng tăng cao. Vì thế, việc năm rõ các kiến thức về bảo mật web sẽ giúp quản trị viên có giải pháp chủ động ứng phó với tin tặc và các mối nguy hại trên internet.

Bài viết liên quan

Vì sao doanh nghiệp cần minh bạch trong việc bảo mật thông tin khách hàng?
Vì sao doanh nghiệp cần minh bạch trong việc bảo mật thông tin khách hàng?
29/10/2023|Security Assessment

Trong thời đại bùng nổ công nghệ số hiện nay, cuộc đua thu thập thông tin hành vi người dùng đang trở nên cực kỳ cạnh tranh. Tuy nhiên, đáng tiếc rằng chỉ một số ít doanh nghiệp chú trọng đến việc bảo mật thông tin khách hàng và nỗ lực chứng minh sự minh …

Tầm quan trọng của bảo mật dữ liệu cá nhân đối với doanh nghiệp vừa và nhỏ
Tầm quan trọng của bảo mật dữ liệu cá nhân đối với doanh nghiệp vừa và nhỏ
29/10/2023|Security Assessment

Trong bối cảnh công nghệ số phát triển không ngừng hiện nay, dữ liệu cá nhân trở thành một loại tài sản vô cùng giá trị và là mục tiêu yêu thích của tin tặc. Nếu không có những biện pháp bảo vệ đúng đắn, chúng sẽ lợi dụng sơ hở để thực hiện các …

Bug Bounty là gì? Tìm hiểu về chương trình Săn Lỗi Bảo Mật Nhận Tiền Thưởng
Bug Bounty là gì? Tìm hiểu về chương trình Săn Lỗi Bảo Mật Nhận Tiền Thưởng
17/10/2023|Security Assessment

  I. Tổng quan về Bug Bounty 1. Bug Bounty là gì? Bug Bounty (tạm dịch Săn lỗi nhận tiền thưởng) là một chương trình bảo mật được công bố bởi các tổ chức, doanh nghiệp hoặc bên thứ 3 nhằm thu hút cộng đồng dò tìm và báo cáo lỗ hổng bảo mật (bug) …