1
1
是的,/dev/urandom提供的安全性已经足够好了。许多软件都将其用于随机性(用于SSL、身份验证等)。几乎唯一的时间/dev/random是一个好主意,当生成某种需要多年安全性的令牌时,例如证书的私钥。 有人提到,如果您有相同的uid,则可以查看进程的内存。您可以通过让内核认为它是setuid进程来避免这种情况,即,如果主进程作为根进程运行,则可以将fork、exec和setuid()转发给非特权用户。其他具有相同uid的进程将无法查看该进程的内存。 凭证查找方法也适用于命名的Unix套接字,而不仅仅是SocketPair。 |
2
3
最简单的方法是在服务器中为每个子进程创建一个管道/插座对。给子流程一端,另一端保持不变。该管道/套接字上的任何内容都必须来自该子进程。
另一种方法是从Unix套接字向操作系统请求凭据(PID、uid、gid)。在Linux上,您将使用
|
3
2
好吧,如果您要将令牌放入环境变量中,那么具有与这些进程相同或更高权限(即uid)的任何人都将能够读取,然后使用令牌!这使得问题的其余部分成为了一个无意义的问题!?如果您担心同一个框上的进程之间的安全性(您提到了本地IPC),那么不要使用环境变量来存储令牌-很容易检查这些(EV)。 |
4
1
如果您要分叉(但不是exec()ing),只将它们保存在本地内存中就足够了。如果您也是exec()ing,那么(如您在对Jim的注释中所述)可能需要通过管道传递令牌(和域套接字路径)。 如果您在没有头的服务器上运行它,/dev/random可能有点饿,所以使用/dev/urandom(可能)是一个更好的选择,除非您有一个合适的噪声源供/dev/random使用。 |
Farid · 限制django每个客户的访问 1 年前 |
josegp · 在Nmap中-p-tag是什么意思 2 年前 |
kramer65 · 如何根据网站用户在S3上添加非公共网站文件? 6 年前 |
derf26 · 如何阻止React Web包包含包中的脚本。json 6 年前 |
user8663960 · 最好也是最简单的方法是保护登录表单的安全 6 年前 |