почему я получаю это / bin / sh: 1: ^ Mno: not found error

Я набрал для пользователя в $ (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 ищет это файл ...

0
02.08.2017, 18:43
1 ответ

Когда вы получаете почту типа

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, но, пожалуйста, продолжайте следить за своей системой, чтобы посмотрите, появятся ли эти файлы снова. Это будет явным признаком того, что ваша система все еще скомпрометирована.

Если возможно, установите все исправления безопасности, предлагаемые вашим дистрибутивом.

1
28.01.2020, 02:45

Теги

Похожие вопросы