업그레이드된 패키지만 업데이트하려면 rkhunter --propupd를 사용하세요.

업그레이드된 패키지만 업데이트하려면 rkhunter --propupd를 사용하세요.

내 시스템에서 패키지 업그레이드를 사용할 때 일반적으로 다음을 사용하여 apt-get파일 데이터베이스를 업데이트합니다 .rkhunter

sudo rkhunter --propupd

단점은 이 업데이트가모두감독된 문서 rkhunter. 그러므로 만일다른 패키지정말이야조작된, 이것정보이 다른 패키지의 경우잃어버린전체 데이터베이스를 업데이트할 때마다.

패키지 관리자를 사용하여 의도적으로 업그레이드된 파일의 속성만 업데이트하고 잠재적인 위협이 계속 보고되도록 다른 모든 파일 속성을 그대로 유지하려면 어떻게 해야 합니까 rkhunter?

답변1

  1. APT_AUTOGEN="false"숙박/etc/default/rkhunter

  2. 이 스크립트는 apt를 실행한 후 필요한 rkhunter propupdate 명령을 생성합니다.


#!/bin/bash
# store this file as /usr/local/sbin/rkhunter-auto-update-after-apt

cat /var/lib/rkhunter/db/rkhunter.dat|fgrep "File:" \
    | awk -F ":" '{print $3}' > /tmp/rkhunter-list.txt
NUM=$(grep -n "startup archives unpack" /var/log/dpkg.log|cut -d":" -f1|tail -n1)
tail --lines=+$NUM /var/log/dpkg.log | grep 'installed' \
    | awk '{ print $5 }'|sed s/:.*//|xargs dpkg-query -L > /tmp/installed-list.txt

cat /tmp/rkhunter-list.txt | while read BIN; do   
    if grep "^${BIN}$" /tmp/installed-list.txt > /dev/null; then
        if [ "" != "$BIN" ];then
                echo rkhunter --propupd "$BIN"
        fi
    fi
done

(trisquel에서는 rkhunter.dat파일에 한 줄이 누락되어 있으므로 awk {print $2}가 있어야 합니다)

목록을 업데이트하려면 apt-get을 실행한 후 이 스크립트를 호출하세요.

만족스러우면 echo후크를 제거하고 생성하세요./etc/apt/apt.conf.d/91rkhunter-post-apt

DPkg::Post-Invoke { "if [ -x /usr/bin/rkhunter ]; then /usr/local/sbin/rkhunter-auto-update-after-apt; fi"; };

관련 정보