我没有阅读源码,一直以来都只是按照它 docker 的文档进行了搭建。
搭建时禁用了 WEB (觉得 WEB 可以被拿下服务端的攻击者篡改和钓鱼),仅利用官方的客户端( API )来进行注册、登录或是导入。
我的理解是服务端无论是数据库还是内存中出现的所有数据都是无法解开由客户端加密后的密码数据的,所以在客户端可信的前提下(不考虑攻击者顺着请求 IP 来入侵客户端),它的 API 可以运行在不可信的环境中,是这样吗?
1
v2tudnew 2022-06-13 21:09:01 +08:00
客户端没问题的话,发给服务器的都是加密数据,但毕竟数据库别人能拿到的话,如果愿意耗费大量时间爆破(只需要爆破用户密码,2FA 可以在服务端取消掉),应该也是有风险的吧?
|
2
oldshensheep 2022-06-13 21:12:04 +08:00
是的
|
3
ltkun 2022-06-14 00:17:18 +08:00 via Android
docker 是个 sqlite 数据库 直接复制了走可以 不过没有打开看过是不是加密的
|
4
darksword21 2022-06-14 07:32:51 +08:00 via iPhone
是这样,数据在前面那里就是加密的了
|
5
learningman 2022-06-14 08:09:34 +08:00 via Android
web 能钓鱼,那 API 也能钓鱼啊。。。
|
6
0o0O0o0O0o OP @learningman 如果客户端可信,按照我理解的设计,API 收到的应该一直是加密后的数据或是密码的某种不可逆的加密 /哈希,所以就算服务端被黑,也只能爆破,如何通过 API 钓鱼呢?
|
7
learningman 2022-06-14 09:51:35 +08:00 via Android
@0o0O0o0O0o 你说得对,web 的页面有可能是不可信的
|