Я набрал для пользователя в $ (cut -f1 -d: / etc / passwd); сделать crontab -u $ user -l; выполнено
И это говорит
no crontab for root
no crontab for daemon
...
no crontab for apache2
, и я получаю очень часто. У вас новая почта в / var / mail / root message
, когда я читаю, там все то же самое
From root@lxc2014.localdomain Wed Aug 2 15:40:02 2017
Return-Path: <root@lxc2014.localdomain>
X-Original-To: root
Delivered-To: root@lxc2014.localdomain
Received: by lxc2014.localdomain (Postfix, from userid 0)
id 03E571D666; Wed, 2 Aug 2017 15:40:02 +0000 (UTC)
From: root@lxc2014.localdomain (Cron Daemon)
To: root@lxc2014.localdomain
Subject: Cron <root@lxc2014> /dev/.x;^Mno crontab for root
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 8bit
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <HOME=/root>
X-Cron-Env: <PATH=/usr/bin:/bin>
X-Cron-Env: <LOGNAME=root>
Message-Id: <20170802154002.03E571D666@lxc2014.localdomain>
Date: Wed, 2 Aug 2017 15:40:02 +0000 (UTC)
/bin/sh: 1: ^Mno: not found
Я знаю, что ^ M это \ r brut, почему cron ищет это файл ...
Когда вы получаете почту типа
From: root@lxc2014.localdomain (Cron Daemon)
To: root@lxc2014.localdomain
Subject: Cron <root@lxc2014> /dev/.x;^Mno crontab for root
X-Cron-Env: <LOGNAME=root>
/bin/sh: 1: ^Mno: not found
и не можете определить, какой crontab содержит команду, вызывающую нарушение, вы можете выполнить поиск команд в стандартных местах:
grep -r "no crontab" /etc/cron* /var/spool/cron | cat -vet
Команда cat -vet
показать любые встроенные управляющие символы, которые в противном случае были бы невидимы или приводили к движению курсора.
В вашем случае вы нашли команду в
/var/spool/cron/crontabs/root:* * * * * /dev/.x;^Mno crontab for root$
, и файл содержит это (разрывы строк добавлены для удобочитаемости):
# DO NOT EDIT THIS FILE - edit the master and reinstall.\n
# (- installed on Thu Jul 20 20:50:12 2017)\n
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)\n
* * * * * /dev/.x;^Mno crontab for root
Из-за встроенного символа Ctrl+Mвыполняется crontab -u root -l
показывает только отсутствие crontab для root
. Похоже, кто-то пытается скрыть запись crontab. Я предлагаю, чтобы кто-нибудь, знакомый с безопасностью и судебной экспертизой, взглянул на вашу систему, чтобы определить, не была ли она скомпрометирована.
Вы можете удалить этот crontab командой crontab -u root -r
.
Вы упомянули, что /dev/.x
не существует и что эта строка не появляется ни в одном файле в разделе /etc
, но, пожалуйста, продолжайте следить за своей системой, чтобы посмотрите, появятся ли эти файлы снова. Это будет явным признаком того, что ваша система все еще скомпрометирована.
Если возможно, установите все исправления безопасности, предлагаемые вашим дистрибутивом.