# debsums -a, --all check configuration files (normally excluded)
그러나 tmp-dir뿐만 아니라 모든 곳에 임시 보조 파일이 많이 있습니다.
Python에는 약 4000개의 바이너리 .pyc 파일이 있으며 기본적으로 비활성화할 수 없습니다.
# cat /etc/python/debian_config
# standard, optimize
byte-compile = standard
등...
내 컴퓨터에 설치된 모든 파일을 안전하게 확인할 수 있는 온라인 저장소가 있는 Linux 배포판이 있습니까?
내가 말한 건패키지 관리자예를 들어, 최신 암호화 기술을 갖춘 호스트 기반 침입 탐지 시스템은 모든 감염을 예방/탐지할 수 있습니다.
답변1
rpm -q --verify
유사한 기능을 수행하는 RPM 기반 시스템이 있습니다 .
그러나 나는 이러한 기능 중 어느 것도 IDS를 대체하기에 적합하지 않다고 생각합니다. 중요한 문제는 체크섬이 문제의 컴퓨터에 있으므로 로컬 체크섬이 손상된 경우 이를 신뢰할 수 없다는 것입니다.
인터넷 저장소에서 새로운 체크섬을 얻을 수도 있지만 여전히 패키지 체크섬을 사용하는 방식이 잘못되었다고 생각합니다.
더 나은 옵션은 다음과 같은 전용 파일 무결성 검사기를 사용하는 것입니다.어시스턴트또는인계철선. 이러한 도구를 사용하면 시스템이 양호한 상태로 확인되면 시스템의 체크섬을 계산한 다음 나중에 비교할 수 있도록 이동식 읽기 전용 미디어(예: CD-R)에 저장할 수 있습니다.
패키지 체크섬 접근 방식의 또 다른 문제는 /etc
파일과 같은 항목이 의도적으로 인벤토리 내용을 변경하는 것으로 알려져 있기 때문에 이를 확인할 수 없다는 것입니다. AIDE와 같은 도구를 사용하면 체크섬을 계산할 수 있습니다.뒤쪽에이러한 파일의 기본 버전을 변경하면 변경 사항이 예상되었는지 여부를 자신있게 말할 수 있습니다.
이는 패킷 체크섬 확인이 쓸모없다는 것을 의미하지 않습니다. 단지 악의적인 수정을 탐지하도록 설계되지 않았을 뿐입니다. 예상치 못한 변경 사항을 감지하여 수정할 수 있도록 하는 데 사용됩니다. 예를 들어, 누군가 잘못된 chmod -R
명령을 작성한 다음 Ctrl-C실수를 깨닫고 한참 후에 이를 실행할 수 있으므로 패키지를 확인하여 파일 권한이 손상된 패키지를 찾으십시오.
답변2
저는 Warren의 솔루션(AIDE)을 선호하지만 정말로 시스템을 모니터링하고 싶다면 CFEngine이나 파생 솔루션(Puppet, Chef, saltstack 등)을 사용하여 파일 시스템의 전체 내용을 관리하세요. 패키지 관리자를 사용하여 파일을 설치하고, 구성 관리 시스템을 사용하여 모든 구성 파일의 내용을 관리하고, 구성 시스템 외부에서 변경 사항이 발생할 때 경고합니다(그리고 내용을 다시 변경할 수도 있음). 하지만 더 깊이 들어갈수록 솔루션은 더욱 복잡해집니다. 시스템과 시스템에 있는 모든 파일을 완벽하게 관리하는 것은 매우 어려운 작업입니다. 파일 내용에 신경 쓰지 않고 상황이 변경될 때 알림을 받는 경우 CFEngine은 파일의 체크섬을 학습하고 모니터링할 수 있습니다. 다른 기능도 비슷한 기능을 갖고 있지만 속도가 느려집니다. 빈번한 재귀 파일 시스템 모니터링에 Puppet을 사용하고 싶지는 않을 것입니다. 그런 다음 학습 곡선은 도구마다 다릅니다. AIDE는 시작하기 쉽지만 CFEngine은 약간 어려울 수 있습니다.