Brak szyfrowania. W przypadku użycia protokołu HTTP (a nie HTTPS) należy przyjąć, że adres jest w zasadzie jawny, ponieważ każde połączenie HTTP przechodzi przez co najmniej parę urządzeń i komputerów nad którymi nadawca ani odbiorca nie mają żadnej kontroli. Użycie HTTPS powoduje, że jedynie domena jest jawna. Łatwy do przewidzenia adres. Problem może pojawić się także jeśli na podstawie innego adresu łatwo jest odgadnąć inny. Najbardziej trywialnym przykładem złej implementacji może być użycie kolejnych liczb do identyfikacji kolejnych zasobów. Zakres identyfikatorów zasobów musi być znacznie większy od liczebności udostępnianego zbioru (mało wysycony) i możliwie losowy. Brak zabezpieczenia przed zgadywaniem. Nawet jeśli prawidłowe identyfikatory są rzadkie w zbiorze możliwych adresów, to można je w końcu wykryć sprawdzając systematycznie kolejne adresy. Zablokowanie wielokrotnych żądań do serwera utrudni automatyczne odkrycie „ukrytych” danych. Adres niezmienny w czasie. Jeśli dany identyfikator jest stały i niezmienny w czasie to rośnie ryzyko jego odgadnięcia. Przykładowo film udostępniony na YouTube jako „niepubliczny” z czasem może stać się publiczny – wystarczy, że ktoś udostępni link publicznie w serwisie społecznościowym.