2016-12-05 63 views
-1

在我的公寓,我连接到由大楼管理的私人WiFi网络。为了连接到互联网,我需要通过Intranet服务器提供的网页登录。可能不安全的登录

出于对浏览器不要求保存我的用户名和密码这一事实的兴趣,我决定查看源代码以了解它是如何完成的。一旦这样做,我碰上了,编译与这似乎是盐密码一些奇怪的JS代码,然后将其转换为hexMD5

password = hexMD5(
    '\360' + 
    document.login.password.value + 
    '\123\076\310\204\336\276\065\360\375\311\365\076\031\311\360\117' 
) 

如果密码被咸鱼和散列这样的,肯定是相同的会需要在服务器上完成,这意味着我的密码正在以纯文本格式保存?我可能错了,但我没有看到任何其他方式。

任何有关这方面的见解将不胜感激,请让我知道,如果这个问题是更多的套件到另一个SE网站。

+1

我会说这个问题会更贴切地放在http://security.stackexchange.com/ – George

+0

@George,谢谢 - 我应该删除这一个并将其移动,否则它会更好,如果主持人感动了吗? –

+0

呃...是不是更有可能是服务器存储密码的散列版本,而不是存储明文版本,并在每次登录尝试期间哈希?尽管如此,我们不知道服务器做了什么或者不做什么或者如何保证它的安全。 – deceze

回答

1

我假设hexMD5()是将任何字符串转换为MD5散列的实现。如果这是真的,那么不会以纯文本保存您的密码。

后端可以保存MD5散列并将存储的散列与它从登录接收到的散列进行比较。

但是,如果他们在登录创建一个新的盐每一次则是他们可能会节省您的密码以明文形式,除非他们的实现类似于md5(salt + md5(password))东西。

安全性有很多关于哈希的线程,如果你想要更多的信息。

+0

问题在于密码周围的密码在重新加载时会发生变化,并且它们全部被哈希在一起。 –

+0

@MikeRockett如果盐与MD5散列一起发送,这不是问题。他们也只会储存盐。即使它没有被发送,它也可以存储在会话中。 –

+0

因此,如果服务器在不知道我的密码的情况下如何获得相同的哈希值,并且考虑到它们全部哈希在一起?如果密码分开散列,这对我来说是有意义的... –