2011-08-14 25 views
9

Tôi muốn đặt node.js trên đám mây cho một ứng dụng có thông tin công ty nhạy cảm. Tôi sợ node.js không an toàn như một số máy chủ cũ vì nó không có nhiều trong tự nhiên. Tôi thấy mọi người đề nghị sử dụng một proxy ngược với nó để làm cho nó an toàn hơn. Tôi hiểu nó an toàn hơn thế nào vì nó không được tiếp xúc trực tiếp với thế giới. Nhưng vẫn còn, xss và các cuộc tấn công khác là có thể. Từ quan điểm bảo mật chỉ, bất cứ ai nghĩ rằng node.js là ngang bằng với các máy chủ cũ hơn? Bất kỳ lời khuyên nào về "cách thuyết phục sếp của bạn + nhóm bảo mật của công ty"?Proxy ngược lại có làm cho node.js an toàn không?

+0

Nếu nó là công ty, bạn nên đặt nó phía sau NAT (tường lửa). Ngoài ra node.js có thể khá an toàn đối với hầu hết các cuộc tấn công. – Alfred

+0

@alfred: cảm ơn, nhưng "khá an toàn chống lại hầu hết các cuộc tấn công" sẽ không thuyết phục được nhóm bảo mật của công ty. Ngoài ra đây là một ứng dụng đám mây không phải là đằng sau NAT của công ty. –

+2

Câu hỏi của bạn ở xa thực tế. Sự kiện "cũ srevers" là dễ bị xss và các cuộc tấn công khác trong khi đây là lỗi trong MÃ CỦA BẠN không, máy chủ. Từ quan điểm này, các máy chủ cũ thì không an toàn như các nút. Proxy proxys chỉ có thể bảo vệ bạn khỏi ví dụ "http.createserver" khi máy chủ proxy phát hiện một yêu cầu http bị lỗi (lỗi giao thức) và giảm yêu cầu nhưng một lỗi giả định trong nodejs sẽ có thông tin nhạy cảm. –

Trả lời

3

Về lý thuyết, proxy ngược lại sẽ không chuyển bất kỳ yêu cầu nào mà chính nó không thể xử lý (bao gồm cả những yêu cầu được thiết kế để chặn cố ý).

Tuy nhiên, nếu có lỗi về Node.js rằng sẽ ví dụ làm cho nó tiết lộ nội dung của các biến nhất định khi một yêu cầu như

GET /x0c/xa0 

được nhận, sau đó proxy sẽ chỉ vượt qua theo yêu cầu đó và chuyển tiếp câu trả lời cho khách hàng (kẻ tấn công).

Vì vậy, vẫn có những rủi ro ...

-2

Tại sao không tạo proxy khóa lõi cứng trên python, C++, v.v ... sẽ kiểm soát quyền truy cập? Mỗi người vượt qua proxy này là người dùng đáng tin cậy và node.js làm việc với họ.

+0

Tôi không nghĩ đây thực sự là câu trả lời cho OP. – SuitedSloth

0

Cách thuyết phục ông chủ và đội bảo mật là chứng minh rằng bạn đã nghĩ qua các vấn đề và có một kế hoạch hợp lý và thực tế để kiểm tra chúng.

Trong bất kỳ cài đặt nào của công ty, proxy của bạn sẽ chỉ là một phần nhỏ của bảo mật tổng thể và đó là cách rủi ro được quản lý.

Để kiểm tra thứ gì đó như thế này, bạn cần phải ném một số * un * yêu cầu hợp lý vào proxy. Tôi thích gợi ý của juand chẳng hạn, bạn cũng nên ném các yêu cầu rất lớn vào proxy.

Một proxy Node.js nên ít nhất là an toàn như một Apache hoặc thực sự là một proxy python/C++ tùy chỉnh vì bạn chỉ cần cho phép nó proxy các mục rất cụ thể.

Các vấn đề liên quan