[Seek Help] 应用商店安装软件,为什么没输入密码就安装到了/opt/apps里面?
Tofloor
poster avatar
PEIX
deepin
2024-01-23 17:32
Author

应用商店安装软件,为什么没输入密码就安装到了/opt/apps里面?

我的意思是 /opt/apps 的权限是这样的

drwxr-xr-x 14 root root

其他用户应该不可以 写入, 只能读取。

但是 用 应用商店安装软件,怎么会直接写进去呢?

我用的并不是root,期间并没有要求以管理员登录,或输入密码, 什么都没有,就直接写入了/opt/apps 里面了。

觉得是个挺大的漏洞呢。

Reply Favorite View the author
All Replies
PEIX
deepin
2024-01-23 17:35
#1

我用 标准用户, 测试也是一样的, 直接成功安装进/opt/apps 里面了。

Reply View the author
神末shenmo
deepin
Spark-App
2024-01-23 17:54
#2

因为有一个在后台运行的提权程序

deepin-app-store-daemon

接收商店的信号

Reply View the author
北冥夜未央
deepin
Ecological co-builder
2024-01-23 17:55
#3

商店都是审核过的软件,所以默认是安全的。

Reply View the author
Ziggy
deepin
2024-01-23 18:04
#4

应用商店有daemon机制,在UOS版本上结合包签名检测功能,通过UOS端上传的应用在审核、签名后上架到应用商店,用户可以直接下载,默认情况下不支持安装非签名包

daemon仅用于对dpkg/apt等的管理,相较全功能root权限更安全的

Reply View the author
神末shenmo
deepin
Spark-App
2024-01-23 18:07
#5

除了商店daemon,还有一个系统更新的lastore-daemon,也可以做到应用的安装和卸载,这个是开源的,在这里

https://github.com/linuxdeepin/lastore-daemon

可以研究一下怎么防止被用于恶意用途的

Reply View the author
PEIX
deepin
2024-01-23 18:27
#6

谢谢解答。

这样设计确实方便用户,但多少有点心惊。😂

Reply View the author
魔法师
deepin
2024-01-23 19:50
#7
  1. 将 c/go/java 等调用封装为 dbus 系统服务,相当于创建了一个系统后门
  2. 再创建一个该服务的 limit 文件,用于限制接口调用者,可以防止大部分的无验证调用
  3. 通过一些简单的操作,一个属于你的后门软件服务就由此诞生了
  4. limit中配置只有某个程序可以访问接口,其后面的操作不限于执行 apt install 来安装软件。

以上只是一些小小小的玩意,通过统一要求验证让用户输入管理员权限密码,并自动保存以便当前本次不再限制也可以达到这种操作。

Reply View the author
神末shenmo
deepin
Spark-App
2024-01-23 20:37
#8
PEIX

谢谢解答。

这样设计确实方便用户,但多少有点心惊。😂

如果你愿意的话可以帮我审阅一下星火商店的免密码安装服务吗

https://gitee.com/spark-store-project/spark-store/blob/dev/tool/ssinstall

Reply View the author
132******79
deepin
2024-01-24 09:46
#9

😂 应用商店是操作系统自带的,自家的东西,肯定是要有特权的。

Reply View the author