LINUX.ORG.RU

ps и pure-ftpd

 ,


0

1

Заметил странную особенность сервера pure-ftpd - в выхлопе ps он отображается лишь в подобном виде

14637 root      0:00 pure-ftpd (IDLE)
14642 root      0:00 pure-ftpd (IDLE)
16133 root      0:00 grep pure
24559 root      0:00 pure-ftpd (SERVER)

и узнать параметры с которыми он запущен через ps невозможно. Ни через busybox ps, ни через «полноценный» ps с ключами -ef. В чём затык ? Цель не узнать параметры, а понять причину, т.к. pure-ftpd не единственный с похожим выхлопом в ps

Цель не узнать параметры, а понять причину, т.к. pure-ftpd не единственный с похожим выхлопом в ps

pure-ftpd перезаписывает свой argv[0] (поскольку argv не является const аргументом, это работает) и/или использует prctl(PR_SET_NAME, "whatever"), или, может быть pthread_setname_np.

anonymous ()
Ответ на: комментарий от anonymous

devl547

Что в /proc/<pid>/cmdline ?

Тоже самое, что и в выхлопе ps

pure-ftpd (SERVER)

pure-ftpd перезаписывает свой argv[0] (поскольку argv не является const аргументом, это работает) и/или использует prctl(PR_SET_NAME, «whatever»), или, может быть pthread_setname_np.

А как-нибудь пресечь подобное поведение возможно ? Дабы впоследствии можно было видеть в ps список запущенных процессов с используемыми ключами ? Или тут поможет только вмешательство в исходники ?

Blacksmith ()
Ответ на: комментарий от Blacksmith

А как-нибудь пресечь подобное поведение возможно ? Дабы впоследствии можно было видеть в ps список запущенных процессов с используемыми ключами ?

Это и делается, что бы не было видно «используемые ключи» )

По сути, содержимому /proc/pid доверять нельзя. Это так, для какой-то общей информации. Если надо что бы было точно, нужен какой-нибудь аудит или монитор

vasily_pupkin ★★★★★ ()
Ответ на: комментарий от vasily_pupkin

vasily_pupkin

Если надо что бы было точно, нужен какой-нибудь аудит или монитор

Например ? И по возможности, не что-то монструозное, с ворохом зависимостей, а то, что можно найти под большинство платформ (в идеале, в виде самодостаточного, статичного бинарника) :)

Blacksmith ()