sử dụng URL ngẫu nhiên thay vì mật khẩu có ổn không? [đóng cửa]


12

Được coi là "an toàn" khi sử dụng URL được tạo từ các ký tự ngẫu nhiên như thế này?

http://example.com/EU3uc654/Photos

Tôi muốn đặt một số thư viện ảnh / thư viện ảnh trên một máy chủ web chỉ được truy cập bởi một nhóm nhỏ người dùng. Mối quan tâm chính của tôi là các tệp không nên được chọn bởi các công cụ tìm kiếm hoặc người dùng quyền lực tò mò chọc vào trang web của tôi.

Tôi đã thiết lập một tệp .htaccess, chỉ để ý rằng việc nhấp vào http://user:pass@url/các liên kết không hoạt động tốt với một số trình duyệt / ứng dụng email, nhắc nhở các hộp thoại và cảnh báo các thông báo gây nhầm lẫn cho người dùng không quá hiểu máy tính của tôi.


Không. Bạn có thể sử dụng điều này, nhưng không phải là cơ chế xác thực duy nhất hoặc chính.
Andrew Smith

1
Tôi đã thử điều này như một thử nghiệm nhiều lần và mỗi lần các liên kết xuất hiện trong các công cụ tìm kiếm. Tôi không biết làm thế nào, nhưng tôi biết điều đó xảy ra.
David Schwartz

Bạn có thể muốn định cấu hình SSL để dừng các cảnh báo, bạn có thể nhận các certs miễn phí từ startedsl.com và SSL không còn chuyên sâu về mặt tính toán (miễn là nó được cấu hình đúng cách).
Hubert Kario

Câu hỏi này là một ví dụ "Không xây dựng" cổ điển. Chúng tôi không biết bạn đánh giá cao sự bảo mật của hình ảnh đến mức nào. Cách duy nhất bạn có thể truyền đạt tầm quan trọng của bảo mật là phương pháp ủy quyền bạn thực hiện để bảo vệ quyền truy cập vào những hình ảnh đó. Những gì bạn nhận được là "tranh luận tranh luận" dưới dạng "Câu trả lời". Nhưng không ai trong số họ là một cuộc khảo sát đầy đủ về ý nghĩa kỹ thuật và an ninh hiện đại. Bạn nên đọc các phương pháp bảo mật được cung cấp bởi nền tảng của bạn và đánh giá giá trị của từng phương thức cho tình huống của bạn; nếu bạn có thêm câu hỏi một khi bạn đã làm điều đó, sau đó hỏi lại.
Chris S

Câu trả lời:


17

Nó có "ổn" hay không phụ thuộc vào mức độ nhạy cảm của hình ảnh.

Nếu bạn không sử dụng SSL, các URL, HTML và hình ảnh sẽ được lưu vào bộ nhớ cache trên máy tính của người dùng. Điều này có thể rò rỉ nhưng tôi sẽ xem xét nó không có khả năng.

Các thanh công cụ trình duyệt, đặc biệt là các thanh được tạo bởi các công ty chạy trình thu thập thông tin, chẳng hạn như Alexa và Netcraft, có thể báo cáo các URL đã truy cập trở lại trang web chính của họ, sẵn sàng để bot đến và thu thập thông tin sau.

Xác thực đúng như HTTP auth hoặc biến POST không được lưu trong bộ nhớ cache theo cách này hoặc được báo cáo lại cho bất kỳ trang web mẹ nào.

Một kỹ thuật khác là sử dụng các URL duy nhất và ngắn hạn. Theo cách đó, ngay cả khi chúng bị rò rỉ, nó cũng không thành vấn đề. Tất nhiên, bạn phải tiếp tục cập nhật người dùng hợp pháp các URL mới.


+1 để đề cập đến các thanh công cụ trình duyệt.
Hubert Kario

23

Không, không thực sự, đây chỉ là bảo mật thông qua che khuất mà không có bảo mật nào cả. Bất cứ điều gì có thể truy cập trực tiếp từ internet mà không có một số hình thức bảo vệ thực sự sẽ được tìm thấy, lập chỉ mục và lưu trữ.


10
Không phải tất cả mật khẩu chỉ bảo mật thông qua che khuất sao?
Winston Ewert

4
@WinstonEwert: Mật khẩu không liên quan gì đến bảo mật thông qua sự tối nghĩa liên quan đến bí mật của thiết kế / triển khai. Trong trường hợp ví dụ cơ bản của Apache, thiết kế / triển khai của nó hoàn toàn mở cho tất cả mọi người thấy.
dùng9517

10
vô nghĩa - tất cả mọi thứ là an ninh thông qua tối nghĩa. Toàn bộ vấn đề là để đạt được điều đó, bạn cần có một phần thông tin đủ khó có thể đoán được. Cụm từ "Bảo mật thông qua che khuất" bị lạm dụng ồ ạt. Một đoạn URL ngẫu nhiên chính xác tương đương với việc đặt "mật khẩu" vào URL. Câu hỏi duy nhất là - ai có thể nhìn thấy điều đó, và câu trả lời mà tôi đưa ra trong nhận xét của mình là "proxy trung gian, cộng với đó là http để bất cứ ai có thể rình mò"
Bron Gondwana

1
Một lỗi (hoặc trở về cấu hình mặc định) trong cấu hình apache và các thư mục của bạn hiển thị các chỉ mục với tất cả các tệp và thư mục trong lòng bàn tay của bạn, không quá nhiều với mật khẩu.
Hubert Kario

4
Bạn nói rằng bảo mật thông qua che khuất "liên quan đến bí mật của thiết kế / thực hiện". Nhưng rõ ràng, URL ngẫu nhiên không liên quan đến bí mật của thiết kế / triển khai. Do đó, các URL ngẫu nhiên, bất kể lỗi của chúng, không thể được phân loại là bảo mật thông qua che khuất.
Winston Ewert

6

Họ sẽ được đăng nhập vào mọi proxy trên đường đi. Bạn sẽ an toàn trước những người sử dụng năng lượng tò mò và các công cụ tìm kiếm trừ khi có người thực sự xuất bản liên kết.

Và xem ra cho sự ngẫu nhiên của máy phát điện của bạn tất nhiên.

Tôi đoán bạn không tìm kiếm bảo mật siêu cao ở đây.


Nếu ai đó sẽ xuất bản URL, không có gì ngăn cản anh ta xuất bản mật khẩu. Xác thực bằng kiến ​​thức như một yếu tố luôn có thể bị "lừa" như thế này.
Manuel Faux

@ManuelFaux: Chắc chắn, nếu đó là cố ý. Nhưng nó cũng có thể là tình cờ. Ví dụ: anh ta có thể sử dụng một công cụ kiểm tra các URL anh ta truy cập để xem liệu chúng có bị báo cáo là độc hại hay không. Các công cụ biết mật khẩu được cho là sẽ được giữ bí mật. Họ biết các thông số trong URL có thể nhạy cảm. Nhưng họ không biết rằng các đường dẫn trong URL có. (Ví dụ: người giới thiệu http .)
David Schwartz

5

URL mật mã rất tiện cho việc tải xuống sử dụng một lần nhưng không bảo vệ thực sự. Bạn cần lưu ý rằng không phải tất cả các bot đều tôn trọng tệp robot.txt, vì vậy nếu có bất kỳ liên kết nào trong trang web của bạn dẫn đến thư mục được ngụy trang, nó sẽ được một số công cụ tìm kiếm lập chỉ mục và một khi nó bắt đầu thì sẽ không quay trở lại.

Thay vào đó, tôi khuyên bạn nên sử dụng một hệ thống xác thực dựa trên .htaccess đơn giản hoặc ngoài những gì bạn đang đề xuất.


5

Tôi muốn thêm một góc nhìn khác, có thể đáng sợ hơn vào các URL bị che khuất như ví dụ này. Ngay cả khi URL của bạn không được chia sẻ ngẫu nhiên, nó có thể được gửi đến các công cụ tìm kiếm bằng cách:

  • ISP của khách truy cập. Các lượt truy cập HTTP đang được thu thập, thu thập dữ liệu và đôi khi thậm chí được bán cho các bên thứ ba bởi các ISP.
  • Lưu trữ đám mây của khách truy cập. Có một số dịch vụ lưu trữ dấu trang và lịch sử miễn phí để đồng bộ hóa trên các cài đặt trình duyệt. Trừ khi họ mã hóa trước dữ liệu như Mozilla, các hoạt động khai thác dữ liệu tương tự có thể được ngụ ý.

YMMV.


ồ vâng - hoặc chỉ bằng một plugin trình duyệt tìm kiếm các trang web liên quan hoặc cho phép người dùng chia sẻ ghi chú về một trang
Bron Gondwana

2

Trước đây tôi đã sử dụng một phương pháp tương tự để cho phép người dùng tạo không gian chia sẻ trên hệ thống quản lý tài liệu. Nội dung được chia sẻ không phải là bí mật hàng đầu nên hệ thống không phải cực kỳ an toàn.

Tôi vừa tạo cho mỗi URL người dùng chứa dấu thời gian hết hạn và MD5 email của họ.

VÌ URL trông giống như:

http://my-url.com/1343689677-cba1f2d695a5ca39ee6f343297a761a4/

với những điều trên, nếu người dùng đã nhập email user@gmail.com trước ngày 30 tháng 7 thì họ sẽ ổn.

Không chính xác an ninh cấp quân sự nhưng đã làm công việc.


0

Điều này chia sẻ lỗ hổng tương tự như lưu trữ sessionID trong URL. Ai đó có thể vô tình sao chép-dán liên kết với người khác, quên kiểm duyệt nó trong ảnh chụp màn hình hoặc để ai đó tra cứu, vì nó không được đánh dấu như mật khẩu.

Ngoài ra, nếu một số nội dung được bảo vệ bằng mật khẩu, bằng cách đăng nhập Bạn biết đó là một bí mật. Nếu bạn nhận được một liên kết, bạn có thể dễ dàng quên nó.

Một điều nữa là loại bỏ đặc quyền người dùng. Bạn có thể xóa một người dùng, để anh ta không còn có thể đăng nhập, nhưng với các liên kết Bạn sẽ cần thay đổi tất cả và gửi cho mọi người (trừ người dùng đã xóa) URL mới.

Tôi nghĩ nó không tệ nếu đây chỉ là những hình ảnh. Nhưng nếu đây là một số hình ảnh bạn thực sự, thực sự không muốn chia sẻ;) thì tôi khuyên bạn nên sử dụng từ ngẫu nhiên dài hơn, giống như một dave e đã trình bày.

EDIT: Thêm DO_NOT_SHARE_THIS_LINK đến URL: http://example.com/DO_NOT_SHARE_THIS_LINK/EU3uc654-this-should-be-longer/Photos?DO_NOT_SHARE_THIS_LINK

Đó là những gì ví dụ Kongregate làm khi nhúng các trò chơi được lưu trữ ở nơi khác (nó đặt thông tin xác thực vào url của khung). BTW, Kongregate cũng sử dụng các liên kết truy cập của khách cho các trò chơi không được công bố, chỉ là cách bạn muốn sử dụng.


Trên thực tế, điều đó tệ hơn nhiều so với ID phiên, vì các phiên hết hạn sau một thời gian. Các công cụ tìm kiếm tìm nạp ID phiên đã đăng nhập thường kết thúc bằng cách hiển thị một liên kết chết / không đăng nhập phiên trong kết quả. Hoặc, nếu máy chủ không quan tâm, nó có thể đồng bộ phiên của nhiều người dùng và khi một trong số họ đăng nhập, tất cả họ đều làm như vậy. Dù sao, không tệ như một URL đăng nhập vĩnh viễn :-)
korkman

Tất nhiên điều đó tệ hơn và Bạn cũng có thể nhớ IP trong phiên vì bạn cần đăng nhập trước để có được sessid trong url và sau đó Bạn có thể hủy phiên nếu IP thay đổi.
Markus von Broady
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.