1
8
所有应用程序级别的漏洞都完全不受$safe级别的影响。注入攻击不通过“不安全操作”,例如跨站点脚本和SQL注入。这或多或少包括Web应用程序的每个漏洞类,除了本地和远程文件包含。见 OWASP Top 10 ,$safe对很多这些都没有帮助。 不过,$safe级别确实在一定程度上保护您免受系统级漏洞的侵害。如果攻击者能够将Ruby代码写入/tmp中的文件,那么如果$safe>=2,他们就无法欺骗您的程序加载该代码。 当然,这并不包括Ruby本身的任何漏洞。这是更严重的,可以完全绕过美元安全。
或者Ruby解释器本身中的普通旧缓冲区溢出、整数溢出等与$safe无关。
无论是否启用$safe,Rails都存在历史漏洞。由于用户输入存储在Rails应用程序中,恶意数据稍后可能会弹出备份,所以这一点很复杂。
Ruby应用程序中的漏洞报告 其他 比Rails和MRI更难找到。 另一个与$safe有关的大问题是没有真正的列表(我知道的)来概括 确切地 什么是$safe做的和不保护的。你唯一能做的就是搜索 RuyyySealS级 在里面 eval.c (这是从1.8.4开始的旧版本评估)。这些评论提供了这个描述,但它相当模糊。
我想我想说的是$safe是关于系统安全的。这是一个不错的工作,但没有真正的方法知道什么是保护和不保护。它不应该是你唯一的防线,它更像是一个安全网,所以没有什么东西会滑向“不安全的操作”。另一方面,它与应用程序的安全无关,也不会保护你的数据或用户不受危害。最重要的是,核磁共振成像有一个漏洞的历史,完全绕过美元安全。 |
2
5
自从
一般来说,即使Ruby脚本在安全模式下运行,大多数Ruby漏洞仍然可能是目标。
此外,与
|
Farid · 限制django每个客户的访问 2 年前 |
josegp · 在Nmap中-p-tag是什么意思 2 年前 |
kramer65 · 如何根据网站用户在S3上添加非公共网站文件? 6 年前 |
derf26 · 如何阻止React Web包包含包中的脚本。json 6 年前 |
user8663960 · 最好也是最简单的方法是保护登录表单的安全 6 年前 |