秘密网址真的安全吗?

Dex*_*ter 46 security url

我从不在我的系统中留下后门,但出于好奇,我想知道我是否留下了像/ x52d23r那样允许绕过某种安全性的秘密URL,这仅供我个人使用---这是以某种方式发现的没有得到我的信息的第三方?

例如,秘密端口可以进行端口扫描和指纹识别,但是对于秘密URL可以采用相同的策略吗?

Mik*_*ark 96

使用"秘密URL"的原因通常是不安全的,不是因为它是"通过默默无闻的安全".在信息理论中,秘密URL与密码或私钥没有区别.密码和私钥是否被认为是一种糟糕的做法,因为它们是"通过默默无闻的安全"?没有.

那么难以猜测的URL和难以猜测的密码有什么区别?

区别在于存储,显示和传输URL的无数不安全的地方和方式.例子:

  1. 在Web浏览器地址栏,历史记录和缓存中*
  2. 发送到其他站点的HTTP Referer标头*
  3. 在Web服务器访问日志中*
  4. 在代理和第7层防火墙访问日志中
  5. 在数据包转储中
  6. 在网络统计信息流量报告中(例如AWStats,Google Analytics)*

HTTPS可以保护其中的一些,但不能保护所有这些(标有*的项目不受使用HTTPS的保护.)

在高度受控的环境中,难以猜测的URL可以是安全的.但是,当使用常见的Web浏览器,Web服务器和Web框架时,除非不存在其他选项,否则不应依赖难以猜测的URL(即使这样您也应该仔细考虑).

  • 这是一个比接受的答案要好得多的答案. (7认同)

Mic*_*yen 29

原始答案:通过默默无闻的安全是永远不应该实践的.


我想扩展这一点,因为我看到一些争论仍然是秘密URL与密码没有区别.我非常不同意这种比较.秘密URL和密码确实共享一个类似的特征:一个或多个特定的人/人都知道它们.这就是相似性结束的地方.

密码强度

  • 从一系列随机单词中输入密码会使密码非常强大,很难猜测或暴力破解.

  • 密码必须与用户名相结合,如果用户名不常见,也可以提高安全性.

  • 用户名和密码组合不会静态显示在屏幕上,也不会存储在浏览器中的任何位置(除非您选择让浏览器"保存"您的登录凭据).

  • 在违规的情况下可以更改密码,而无需将入口点更改为系统.

  • 好的密码系统不会以纯文本形式存储在文件系统中.

秘密URL的弱点

  • 除非在"隐身","私人"等模式下使用,否则URL将存储在您的本地历史记录/缓存中.

  • URL显示在浏览器窗口中,可以隐藏在流浪的眼睛中.

  • 如果秘密URL被泄露,您必须更改它并通知使用它的任何人.

  • URL在服务器某处以纯文本形式存在,无论是作为真实目录/文件还是作为重写(但是,重写可能会在更高级别下降).

  • @Mike Clark在答案中提到的其他一切.

真正归结为:

  • 秘密URL只是通过默默无闻来实现安全性.而已.

  • 根据定义,密码可能是模糊信息,但围绕密码采取的额外措施,预防措施和保护措施可以在此基础上增加一定程度的安全性.换句话说,密码是分层的,除了默默无闻之外,还通过其他方式实施安全性.反过来,这使它们成为比简单的模糊URL更好的选择.

建议:同时使用"秘密"URL和非常强大的用户名/密码组合.不要依赖JUST一个"秘密"URL.

绝不使用默默无闻作为唯一保护措施来实施安全措施.

  • -1滥用"通过默默无闻的安全"一词.该术语中提到的默默无闻是算法的模糊性,而不是强密码,密钥或秘密的模糊性. (26认同)
  • 我认为有时候这个短语是脱离上下文的(但不是在这种情况下.)密码是安全的,因为它们是模糊的,与加密密钥相同.如果论文开放,清晰且免费,这些安全工具将毫无价值.如果您可以保证您的资源不明确,并且您有一个机制来衡量和响应访问此资源的尝试,那么您与使用用户名/密码的情况不同.例如,如果在三次不正确的URL请求之后,您将IP列入黑名单,则基本上已实现了密码系统. (19认同)
  • 所有的安全都是默默无闻的.一个URL简直不够模糊(比如说,密码) (6认同)
  • -1.为什么这种安全是通过默默无闻的?这是个秘密. (3认同)
  • 在这种情况下,这不是一个好主意.我认为Michael Irigoyen对你的问题有正确的答案. (2认同)
  • Security Through Obscurity隐藏了一种机制或实现细节 - 这与仅与秘密密码短语一起使用的开放式架构有所不同.这是一个理论概念,在这里并没有多大帮助.因此,如果您在网站上声明"存在秘密网址",那么它不是STO,但如果您不这样做,则可以说是. (2认同)

Mar*_*ers 10

这不安全.

对于HTTP流量,您的秘密URL一旦使用它就会立即公开.在没有任何密码保护的情况下,收听网络流量的窃听者可以看到您发送的URL,然后访问同一页面.

  • 使用HTTPS时,它们将被加密. (15认同)
  • 另一个非常好的变体:如果页面包含指向外部网站(例如google.com)的链接,则点击该链接会通过"Referer"标题(直接发送给Google)发送"秘密"URL. (9认同)
  • @Gumbo:是的,这是一个很好的点+1.我猜你*可以*使用HTTPS来保持URL的秘密,但是它仍然是一个坏主意恕我直言.想象一下,如果你不小心忘记在https上输入's'...哎呀! (5认同)

Iva*_*rov 8

不好主意,因为:

  1. 有人可能会透露您的网址是否可以获得对您的系统/数据库/应用程序的本地访问权限
  2. 有一天,一些管理员会将您的访问日志文件公开,谷歌会找到它们.
  3. 您将在服务器设置中迁移/升级某些内容,并忘记保护/隐藏这些网址

  • 我从没想过愚蠢的未来管理员场景.好点子. (2认同)

tim*_*les 8

我会说如果你小心他们可以安全.最大的安全漏洞是使用它的人.它将被无意中分享或发布到Google将其编入索引的地方.为此设计,并适当使用它 - 如Google文档"任何有此链接的人"共享方法.

  1. 使用HTTPS

    停止以纯文本格式发送的URL

    如果单击HTTP链接,则不设置引用标头

  2. 如果人们通过HTTP访问您的秘密URL,请警告他们并立即更改它

  3. 这是不是安全透过朦胧 -这是正常使用的短语的误解.

    "通过默默无闻的安全系统可能存在理论或实际的安全漏洞,但其所有者或设计者认为这些漏洞尚不清楚,而且攻击者不太可能找到它们."

    相比之下,您对实施和设计持开放态度.

    我没有看到,当使用长密码URL(任何64个字符?2000 - domain_length?)与tar-pit结合使用时,这不比普通密码安全.

我打算在一个应用程序中使用它,我觉得人们会认为简单性高于安全性.


Mik*_*uel 7

Waterken Web服务器是一个网络平台,通过在各地的秘密(特别是密码难以猜测的)的URL HP研究的安全性民间设计的.

因此构建的应用程序具有一些非常有趣的安全属性.

如果做得好,加密强大的秘密URL可以提供高级别的安全性.

ACLs不是来自waterken团队的安全架构的论文.

比较建议的防御与编译场景的基于功能的解决方案,并再次假设类似Unix的系统:URL就像文件名; 并且不可知的令牌就像一个文件描述符,近似于具有不可思议性的能力的不可伪造性.来自股票经纪人网站的合法页面首先打开股票购买资源,接收不可饶恕的秘密.然后,浏览器使用此不可用的秘密写入股票购买资源.