重置UniFi控制器密码

就像其他任何系统管理员一样,他坚信自己的内存非常完善,并且能够在深夜记住25位Windows XP安装代码的能力,他最近也遇到了这样的异常。

有一天,决定停下来检查一下UniFi控制器的功能,我收到了一条惊人的消息:登录错误。



挠挠头,想起一会儿他怎么忘记了卡上的密码,而密码是他用纯机械方式键入的,他开始对可能的选项进行分类。 经过半个小时的尝试,在笔记本中搜索笔记,检查粘在显示器上的硬化物,我意识到我必须寻找解决方法。

立即为喜欢批评的人进行预订-使用帐户/密码管理器ala LastPass。 实际上,使用的是LastPass。 并且来自那里的数据没有对成功的身份验证做出贡献。

在资产阶级论坛中搜索后,通过简短的备忘录接收,理解,摘要并收集了用于从控制器中的任何帐户重置密码的必要信息。

因此,鉴于:

1.可以访问OS本身的UniFi控制器(不扮演OS的角色-Linux或Windows)。
2.上网。
3.直臂。

UniFi控制器将整个配置存储在Mongo数据库中。

检查您要寻找的帐户是否有我们需要的信息:

mongo --port 27117 ace --eval 'db.admin.find().forEach(printjson);' 

在这种情况下,我们要求提供管理员帐户的信息。

如果我们正在寻找VasyaPupkin 记帐,查询将如下所示:

 mongo --port 27117 ace --eval 'db.VasyaPupkin.find().forEach(printjson);' 

排气量大致如下:

 MongoDB shell version: 2.6.12 connecting to: 127.0.0.1:27117/ace { "_id" : ObjectId("567bfd4fe4b0c81300ff3158"), "email" : "admin@company.com", "email_alert_enabled" : true, "email_alert_grouping_enabled" : true, "html_email_enabled" : true, "is_professional_installer" : false, "last_site_name" : "default", "name" : "admin", "requires_new_password" : false, "time_created" : NumberLong(1450966351), "ui_settings" : { "dashboardConfig" : { "dashboards" : { "5b4c57aadc236c7de53e3c3c" : { "order" : 1 } }, "lastActiveDashboardId" : "5b4c57aadc236c7de53e3c3c" }, "statisticsPreferBps" : true }, "x_shadow" : "$6$0YiSt9dQ$YrNKedOCjOP2xl3y9FhRasafdhbdfadamBKIjZ4l9Mm4cy/m49dt0bN.sYaFvgVb5vce45KypFe07iNYc1" } 

我们感兴趣的领域:

 x_shadow" : "$6$0YiSt9dQ$YrNKedOCjOP2xl3y9FhRasafdhbdfadamBKIjZ4l9Mm4cy/m49dt0bN.sYaFvgVb5vce45KypFe07iNYc1" 

经过google 分析后,我们发现该加密算法与SHA-512 crypt(3)兼容。

哎呀 我们将解密的想法推迟到了另一边。
我们可以访问数据库,因此我们只需要知道的密码中的哈希即可。 更新数据库中的记录很简单。

我们去:
我们选择所需的算法,输入将要使用的密码:



按下神奇的蓝色小按钮:



生成的哈希将被仔细复制,然后我们需要它。

现在是时候进行最后一步了:

 admin.mongo --port 27117 ace --eval 'db.admin.update({name:"admin"},{$set:{x_shadow:"$6$ee74396ce4c563de$oLm93BwJywYo1sUFgX8U0FC.p75t1Jv838.0defRCe36jgX6PU3h.m3NL6tjCs8Q/1Ymtge0DXz9shb//dyEN."}})' 

感光鼓...按Enter。

 MongoDB shell version: 2.6.12 connecting to: 127.0.0.1:27117/ace WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }) 

我们转到UniFi控制器的身份验证页面,输入用户名: admin (我们更改了密码),输入为其生成哈希值的密码。

瞧,一切正常,有通道,每个人都快乐跳舞。

Source: https://habr.com/ru/post/zh-CN439396/


All Articles