Navegação forçada
Uma página sem link não está protegida; quem descobre o endereço e digita chega nela.
"Ninguém vai achar essa página porque ela não está no menu" não é controle de acesso. Digitar ou adivinhar um endereço e abrir uma página que não tem link é navegação forçada (forced browsing). Se o servidor entrega a página a qualquer pedido, o link na tela nunca foi a tranca.
E os endereços "escondidos" vazam com facilidade. O robots.txt lista justamente os caminhos que o site não quer que apareçam no buscador, virando um mapa deles:
Disallow: /admin/dashboard
Também aparecem em sitemap.xml, em comentários do HTML, no JavaScript do front, em mensagens de erro, e em listas de nomes comuns (/admin, /backup, /old) que um scanner testa em segundos.
O conserto não é esconder melhor, é checar acesso no servidor em toda página sensível, linkada ou não. Em Python, é não deixar nenhuma view administrativa sem @login_required/@admin_required, por mais oculta que ela pareça.