2009-12-21 1 views
1

Если у меня есть важные данные для переноса между двумя процессами, я могу создать именованный FIFO в /tmp и удалить его после использования. Я хочу знать, защищен ли этот метод? Насколько легко сломать FIFO?Является ли FIFO безопасным, чтобы обычный пользователь не мог видеть конфиденциальные данные?

Я знаю, что существует несколько способов выполнения IPC (межпроцессорная связь), но IMHO, труба не идеальна, поскольку иногда она оставляет буферные данные на жестком диске; общая память защищена, но не всегда возможна.

+3

Если вы не хотите, чтобы пользователь видел содержимое файла, запретите им доступ на чтение. –

+0

Но эти два процесса запускаются пользователем, поэтому они имеют одинаковое право доступа с пользователем. – solotim

+0

Если пользователь запускает ваш процесс, он может запускать его под отладчиком и делать с ним все, что захочет. Таким образом, любые средства «обеспечения» МПК в этой ситуации довольно бесполезны. –

ответ

0

Короткий ответ будет отсутствием. Fifo - это только что названные трубы, которые может использовать любой процесс. Вместо этого я считаю, что вы можете назначать разрешения для этих каналов, которые называются блокировкой файлов, и вы можете сказать, какие пользователи, группы и другие имеют какие привилегии для использования этих каналов. Хотя это зависит от того, что вы пытаетесь защитить от своей информации. Я бы предположил, что вы можете зашифровать свои данные, чтобы в любой момент ваша информация была скомпрометирована, злоумышленник в конечном итоге сойдет с ума. Если бы я был вам, я бы поискал блокировку файлов. Beejs IPC руководство довольно хорошо, хотя большинство людей видели этот материал, и иногда это может быть недостающим. Кроме этой удачи.

Смежные вопросы