Phát triển trang web - Bảo mật
Bảo mật các trang web của bạn cũng quan trọng như phát triển nó, bởi vì bất kỳ mối đe dọa nào có thể xâm phạm đến bảo mật đều có thể gây tổn hại đến danh tiếng doanh nghiệp của bạn, gây thiệt hại về tài chính cho bạn (bằng cách đánh cắp tiền gửi trực tuyến của bạn), gây thiệt hại cho khách hàng truy cập trang web của bạn, v.v.
Theo các chuyên gia bảo mật, họ sẽ đề xuất thực hiện kiểm tra bảo mật trang web dựa trên OWASP TOP 10, là một tài liệu nhận thức mạnh mẽ về bảo mật ứng dụng web. OWASP Top 10 thể hiện sự đồng thuận rộng rãi về những lỗi bảo mật ứng dụng web quan trọng nhất là gì.
SQL Injjection
Các lỗi chèn, chẳng hạn như SQL, OS và LDAP tiêm xảy ra khi dữ liệu không đáng tin cậy được gửi đến trình thông dịch như một phần của lệnh hoặc truy vấn. Dữ liệu thù địch của kẻ tấn công có thể đánh lừa trình thông dịch thực hiện các lệnh ngoài ý muốn hoặc truy cập dữ liệu mà không được phép thích hợp.
Solution - Để bảo mật trang web của bạn khỏi iSQL, bạn phải xác thực các đầu vào và ký hiệu lọc.
Xác thực bị hỏng và quản lý phiên
Các chức năng ứng dụng liên quan đến xác thực và quản lý phiên thường không được triển khai chính xác, điều này cho phép kẻ tấn công xâm phạm mật khẩu, khóa, mã thông báo phiên hoặc thậm chí khai thác các lỗi triển khai khác để giả định danh tính của người dùng khác.
Solution - Để bảo vệ trang web của bạn khỏi lỗ hổng này, bạn phải tạo cookie và phiên có thời gian hết hạn.
Kịch bản chéo trang (XSS)
Lỗi XSS xảy ra bất cứ khi nào ứng dụng lấy dữ liệu không đáng tin cậy và gửi đến trình duyệt web mà không được xác thực hoặc thoát đúng cách. XSS cho phép kẻ tấn công thực thi các tập lệnh trong trình duyệt của nạn nhân, sau đó có thể chiếm quyền điều khiển các phiên của người dùng, phá hoại trang web hoặc chuyển hướng người dùng đến các trang web độc hại.
Solution - Bảo vệ khỏi điều này cũng giống như đối với iSQL.
Tham chiếu đối tượng trực tiếp không an toàn
Tham chiếu đối tượng trực tiếp xảy ra khi nhà phát triển để lộ tham chiếu đến đối tượng triển khai nội bộ, chẳng hạn như tệp, thư mục hoặc khóa cơ sở dữ liệu. Nếu không có kiểm tra kiểm soát truy cập hoặc biện pháp bảo vệ khác, những kẻ tấn công có thể thao túng các tham chiếu này để truy cập dữ liệu trái phép.
Solution - Bạn nên thực hiện các cơ chế bảo vệ cụ thể như mật khẩu để bảo vệ các tệp đó.
Cấu hình sai bảo mật
Bảo mật tốt đòi hỏi phải có một cấu hình an toàn được xác định và triển khai cho ứng dụng, khuôn khổ, máy chủ ứng dụng, máy chủ web, máy chủ cơ sở dữ liệu và nền tảng. Cài đặt bảo mật cần được xác định, triển khai và duy trì, vì các cài đặt mặc định thường không an toàn.
Solution - Phần mềm cần được cập nhật.
Phơi nhiễm dữ liệu nhạy cảm
Nhiều ứng dụng web không bảo vệ đúng cách dữ liệu nhạy cảm, chẳng hạn như thẻ tín dụng, ID thuế và thông tin xác thực. Những kẻ tấn công có thể đánh cắp hoặc sửa đổi dữ liệu được bảo vệ yếu kém đó để thực hiện hành vi gian lận thẻ tín dụng, đánh cắp danh tính hoặc các tội phạm khác.
Solution - Dữ liệu nhạy cảm đáng được bảo vệ thêm chẳng hạn như mã hóa ở chế độ nghỉ hoặc khi đang chuyển, cũng như các biện pháp phòng ngừa đặc biệt khi trao đổi với trình duyệt.
Thiếu kiểm soát truy cập mức chức năng
Hầu hết các ứng dụng web xác minh quyền truy cập cấp chức năng trước khi hiển thị chức năng đó trong giao diện người dùng. Tuy nhiên, các ứng dụng cần thực hiện kiểm tra kiểm soát truy cập giống nhau trên máy chủ khi mỗi chức năng được truy cập. Nếu các yêu cầu không được xác minh, những kẻ tấn công sẽ có thể giả mạo các yêu cầu để truy cập chức năng mà không có sự cho phép thích hợp.
Solution - Bạn nên kiểm tra các cấp độ xác thực.
Yêu cầu trên nhiều trang web giả mạo (CSRF)
Một cuộc tấn công CSRF buộc trình duyệt của nạn nhân đã đăng nhập gửi một yêu cầu HTTP giả mạo, bao gồm cookie phiên của nạn nhân và bất kỳ thông tin xác thực tự động nào khác, đến một ứng dụng web dễ bị tấn công. Điều này cho phép kẻ tấn công buộc trình duyệt của nạn nhân tạo ra các yêu cầu mà ứng dụng dễ bị tấn công cho rằng đó là các yêu cầu hợp pháp từ nạn nhân.
Solution - Cách phòng ngừa thường được sử dụng nhất là đính kèm một số mã thông báo dựa trên thách thức không thể đoán trước cho mỗi yêu cầu đến từ một trang web và liên kết chúng với phiên của người dùng.
Sử dụng các thành phần có lỗ hổng đã biết
Các thành phần, chẳng hạn như thư viện, khuôn khổ và các mô-đun phần mềm khác hầu như luôn chạy với đầy đủ các đặc quyền. Nếu một thành phần dễ bị tấn công bị khai thác, một cuộc tấn công như vậy có thể tạo điều kiện cho việc mất dữ liệu nghiêm trọng hoặc chiếm đoạt máy chủ. Các ứng dụng sử dụng các thành phần có lỗ hổng đã biết có thể làm suy yếu khả năng bảo vệ của ứng dụng và kích hoạt một loạt các cuộc tấn công và tác động có thể xảy ra.
Solution - Kiểm tra xem phiên bản thành phần đó có lỗ hổng hay không và cố gắng tránh hoặc thay đổi bằng phiên bản khác.
Chuyển hướng và Chuyển tiếp không hợp lệ
Các ứng dụng web thường xuyên chuyển hướng và chuyển tiếp người dùng đến các trang và trang web khác. Các ứng dụng này sử dụng dữ liệu không đáng tin cậy để xác định các trang đích. Nếu không có xác thực thích hợp, những kẻ tấn công có thể chuyển hướng nạn nhân đến các trang web lừa đảo hoặc phần mềm độc hại hoặc sử dụng chuyển tiếp để truy cập các trang trái phép.
Solution - Luôn xác thực URL.
Các giao thức được sử dụng an toàn
Đây là trường hợp bạn có gói VPS và bạn tự quản lý mọi thứ. Khi các dịch vụ được cài đặt, chúng sử dụng các cổng mặc định. Điều này làm cho công việc dễ dàng hơn với một hacker vì anh ta biết nơi để xem xét.
Dưới đây là một số cổng dịch vụ chính được sử dụng để lưu trữ các trang web:
- SSH - cổng 22
- FTP - cổng 21
- MySQL - cổng 3306
- DNS - cổng 53
- SMTP - cổng 25
Việc thay đổi cổng của các dịch vụ đó khác nhau tùy thuộc vào Hệ điều hành và các phiên bản khác nhau của nó. Ngoài ra, bạn phải cài đặt tường lửa. Nếu đó là hệ điều hành Linux, chúng tôi sẽ giới thiệuIPtablesvà chặn tất cả các cổng không cần thiết khác. Trong trường hợp hệ điều hành của bạn là Windows, bạn có thể sử dụng tường lửa tích hợp của nó.
Để chặn đăng nhập brute force trong các dịch vụ của bạn, bạn có thể sử dụng Fail2ban, là một phần mềm dựa trên Linux và chặn tất cả các địa chỉ IP khiến nhiều lần đăng nhập không thành công.