chmod 777 到底有什么危险

2016-04-14 17:00:09 +08:00
 crepesofwrath
chmod -R 777 /var/www/html 到底有什么危险
http://askubuntu.com/questions/20105/why-shouldnt-var-www-have-chmod-777
如果 PHP 崩溃用户看到了包含密码的脚本又能怎样,我的 SSH 需要 key, 数据库禁止了远程登录,就算用户可以上传图片也会被验证,不存在执行上传恶意脚本的可能 toehold, escalate, how???
20487 次点击
所在节点    Linux
119 条回复
crepesofwrath
2016-04-15 01:12:09 +08:00
@Kirscheis 最后一句, 777 方便脱裤;我没有任何项目经验,但是说我完全没接触过编程,那么很多前端 PHPer 不知道会作和感想;我想起了阮一峰博客里的类似评论,我肯定是会一点的 ... 无非是基础差经验少
konakona
2016-04-15 01:29:45 +08:00
本地能够提交的目录往往是服务器上的 755 , 755 不具备执行权利。

理论上来说,如果有人上传了什么木马、病毒上去没办法运行的,那么破坏程度的风险就会大大降低。

但是一旦不检测好文件类型,被上传了网马就可以通过命令漏洞(如 eval )或 SQL 漏洞(以获取 webshell 后进一步的了解服务器的全貌)找到更多可以使用的漏洞了。因此危害程度仍在。

安全还是要做充分的准备和考量哟。
RIcter
2016-04-15 01:41:00 +08:00
愿世界上多一点楼主这样的运维,我们的工作会方便许多…😌
googlebot
2016-04-15 01:47:05 +08:00
如果是 php , 777 没什么, ftp 目录也经常 777

只要没有 root 权限,
crepesofwrath
2016-04-15 01:55:14 +08:00
@konakona 就是找到立足点,一步一步获取权限

@RIcter 其实能回答好这个问题的人才是运维 👤🎩🕶
crepesofwrath
2016-04-15 02:07:11 +08:00
@googlebot 我现在不确定了,上面的大神给我一种不安全感,首先我对端口和防火墙的设置都不了解,暴力猜测 SSH 密码是一回事,针对特定目标实施打击想想都很恐怖
crepesofwrath
2016-04-15 04:59:52 +08:00
@asddsa
aviato.tech
Hack a good day
shiny
2016-04-15 08:44:59 +08:00
针对 PHP
一、我建议甚至 Web 目录也不要开写权限,只有明确需要写入缓存和静态文件的文件夹才需要写权限。
二、有写入权限的文件夹最好不要开 PHP 解析权限。

有大量安全漏洞的程序(类似 DedeCMS )经过这样设置,出问题概率降低一个级别。
alexyangjie
2016-04-15 09:06:18 +08:00
https://en.wikipedia.org/wiki/Defense_in_depth_(computing)
这个是现代信息系统的安全防护理念。打个比方, chmod 777 就相当于把自己所有的钱都散落放在家里面,当然家里的门是上锁的,可能上的是一把好锁。但是你永远不知道小偷会不会撬开一扇窗或挖一个地道进入家中,而一旦进入,家里散落的钱就可以直接拿走。 chmod 644 相当于把钱放在保险箱里,只有你自己能打开。当然小偷也许也有一些办法(escalation),但这样毕竟加大了他的难度。
asddsa
2016-04-15 09:23:13 +08:00
@RIcter 握爪,你看楼主放了个空白页面在那挑衅。
lianyue
2016-04-15 09:24:49 +08:00
😂
@crepesofwrath 不要说了我亲自遇到过 wordpress 的 0day 然后整个服务区被格式化了 还好勤备份
Felldeadbird
2016-04-15 09:31:16 +08:00
我觉得楼主想问的:“ chrom -R 777 有什么典型的渗透例子”。
大家都有说这样做得危害性,但没有比较典型的具体例子。楼主是很难明白 过中的危害性的。
因为看不见真正的危害,是很难理解到 其中的可怕。
Ryan817
2016-04-15 09:41:36 +08:00
LZ 可以试着 chmod 777 -R /etc/ 试试看,把你折磨到哭,被坑的血泪史
pljhonglu
2016-04-15 10:05:03 +08:00
@Felldeadbird 同意,确实还没有一个具体的例子~
abc123ccc
2016-04-15 10:34:56 +08:00
楼主, denyhost, fail2ban , SSH 的端口,都可以用上呀,为啥把这个专注点放到文件的权限上面来呢,这不是折腾自个吗?
ivenvd
2016-04-15 10:46:17 +08:00
我来说个吧。

比如你的 SSH 或者 MySQL 有漏洞,用户拿到了 mysql 用户权限,但是因为用户密码在数据库是加密的,所以拿不到用户信息。

这时候发现 php 目录是 777 的,就可以用 mysql 用户修改 PHP 文件,来窃取用户密码(以及做其他坏事)。
donotgo
2016-04-15 10:46:43 +08:00
@Bardon
<3 的意思是 ❤️。。。。
ivenvd
2016-04-15 10:48:57 +08:00
另外假如 PHP 文件是 root 权限运行的(既然权限都 777 了,用 root 运行也不是不可能吧……),那么修改 PHP 文件,就相当于以 root 权限执行命令,达到提权的目的。
crepesofwrath
2016-04-15 10:53:01 +08:00
@alexyangjie redit
Its intent is to provide redundancy in the event a security control fails or a vulnerability is exploited 目的是提供冗余 当安全防护出现故障或者 整个系统的? 的一个弱点被利用
In terms of computer network defense, defense in depth measures should not only prevent security breaches but also buy an organization time to detect and respond to an attack and so reduce and mitigate the consequences of a breach.
军事上是用空间换取时间,以求延缓而非阻止
crepesofwrath
2016-04-15 10:57:43 +08:00
@shiny 目测经验之谈 我认为最有意思的是第三点

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/271064

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX