"숨겨진" 크론 작업 추적

"숨겨진" 크론 작업 추적

매일 밤 데이터베이스가 서버에 백업됩니다. 이것은 좋은 일입니다.

이상한 점은 이 작업을 수행할 크론 작업을 찾을 수 없다는 것입니다. 로그인했습니다 /etc/cron*. 로그인했습니다 /var/spool/cron/. 시스템에 있는 다른 모든 사용자의 crontab을 확인했습니다. 이것이 작동하는 것을 찾을 수 없는 것 같아서 다음 이론은 작업이 원격으로 실행되어 서버에 연결한 다음 데이터베이스를 파일에 백업한다는 것입니다. 현재 관련된 누구도 이 과정에 대해 아는(또는 기억하는) 사람이 없는 것 같습니다.

나는 즉시 이 직업을 구해야 해요! 나는 다음에 대해 알고 싶습니다:

정말 원격으로 실행되나요? 그렇다면 연결이 어디서 오는지 어떻게 알 수 있습니까? 나는 그것이 로그인 자격 증명을 가진 일부 사용자로부터 온 것이라고 가정하지만 알고 싶습니다.WHO.

로컬에서 실행되는 경우어디이 파일인데 왜 찾기 힘들죠?

이런 것들을 어떻게 찾을 수 있나요? 지금까지 이런 일이 일어나고 있다는 증거는 매일 밤 같은 시간에 생성된 데이터베이스 덤프 파일뿐이다.

답변1

첫 번째 단계로 inotifywait.

이는 Debian 시스템을 가정합니다. 그렇지 않은 경우 해당 명령을 시스템에 이식할 수 있습니다.

inotify 도구를 설치합니다:

apt-get install inotify-tools -y

/에서 inotifywait를 실행하고 밤새 모든 액세스를 모니터링합니다. 이것이 내가 일반적으로 사용하는 것입니다:

echo 10000 > /proc/sys/fs/inotify/max_user_watches
inotifywait -mr / -e access -e create -e modify -e delete -e moved_to -e moved_from --format %w:%f:%e:%T --timefmt %F:%T >> /root/system.inotify.log &

무슨 일이 일어났는지 알아보려면 다음날 로그를 확인하세요.

원격 시스템이 스크립트를 로컬로 복사하고 실행한 다음 삭제하더라도 여전히 해당 스크립트를 볼 수 있습니다. 거기에서 무엇을 보든 아래에 있는 모든 것을 포착하기 때문에 무슨 일이 일어나고 있는지에 대한 힌트를 줄 것입니다.

Linux 인터페이스에 연결될 때 소스 파일을 빠르게 삭제하는 경쟁 조건이나 스크립트에 취약하지 않으므로 inotify작업이 누락되지 않습니다.

당신이 찾은 것을 알려주세요. 알고 싶습니다.

관련 정보