손상된 패키지 설치의 영향

손상된 패키지 설치의 영향

설치하려는 일부 패키지(예: apt또는 dnf다른 패키지 관리자를 통해)가 손상되었습니다. 즉, 악의적으로 수정되어 감지되지 않고 Linux 배포판의 (공식) 저장소에 들어갑니다. 다양한 Linux 배포판의 공식 리포지토리에도 수만 개의 패키지가 있다는 점을 고려하면 이는 가능성이 낮아 보입니다(특히 더 흔하지 않은 패키지의 경우).

이 경우 설치 시 보안에 미치는 영향이 궁금합니다. 특히 패키지 설치는 일반적으로 루트 권한으로 수행되어야 하기 때문에 처음에는 이것이 주요 보안 문제라고 의심했습니다. 그러나 다양한 패키지 관리자의 내부 구조에 대해 확신할 수 없으며 패키지 관리자가 실제로 손상된 코드를 실행하지 않고도 적절한 디렉터리에 설치할 응용 프로그램 파일을 "단순히 복사"할 수 있을 것이라고 생각합니다. 후자의 경우, 나중에 설치된 애플리케이션을 실행하는 권한이 없는 사용자 "오직"이 손상될 수 있으며, 시스템 또는 다른 사용자의 데이터는 손상된 응용 프로그램을 사용하지 않는 한 안전하게 유지됩니다.

누군가 이것이 뒤에서 어떻게 작동하는지 설명할 수 있다면 매우 감사하겠습니다. 특히 Ubuntu/Debian apt및 Fedora의 dnf패키지 관리자(제가 사용하는 주요 패키지 관리자)가 어떻게 작동하는지 자세히 알아보고 싶습니다 . 또한 이러한 패키지 관리자의 기본 동작이 설치 중에 임의 스크립트의 실행을 허용하는지, 이 동작을 변경할 수 있는 옵션이 있는지 또는 설명된 상황에서 더 안전한 다른 패키지 관리자가 있는지 매우 관심이 있습니다.

미리 감사드립니다!

답변1

RPM과 DEB 패키지 모두 설치 중에 원하는 것은 무엇이든 실행할 수 있습니다. 예, 설치 프로세스는 대부분 파일을 복사하지만 때로는 패키지가 설치(또는 업그레이드 또는 제거) 중에 다양한 명령/스크립트를 실행할 수 있도록 시스템과 상호 작용(글꼴 설치 등 다양한 캐시 업데이트)해야 합니다. . 패키지는 포함된 시스템 서비스를 활성화/시작할 수도 있습니다. 이것이 어떻게 작동하는지에 대한 몇 가지 예를 보려면 다음을 확인하세요.Fedora 스크립틀릿 문서또는패키지 관리자 스크립트데비안의 경우. 게다가이 흥미로운 LWN 기사이 잠재적 위험에 대해.

RPM 패키지의 수동 설치를 사용할 때 종료 스크립트릿을 rpm지정 하고 트랜잭션 플래그를 함께 사용할 수 있지만 이는 손상된 패키지를 수정하는 데 실제로 도움이 되지 않습니다.--noscriptsnoscriptsdnf

그러나 설치 중에 스크립트를 실행하는 이러한 다양한 방법이 없더라도 기존 시스템 바이너리, 서비스 및 구성 파일을 "깨진" 버전으로 간단히 대체하고 동일한 결과를 얻을 수 있습니다. 그렇습니다. 손상된 패키지(또는 알 수 없거나 신뢰할 수 없는 소스에서 설치된 패키지)는 큰 문제가 될 수 있습니다.

유통 포장은 주로 신뢰를 기반으로 합니다 - Fedora패키지를 생성하고 유지 관리하는 능력을 입증해야 합니다., 그러나 그 이후에는 패키지 작성자가 악성 콘텐츠를 푸시하는 것을 실제로 막을 수는 없습니다. 모든 새 릴리스에는 ClamAV 검색을 포함하는 일부 자동화된 테스트(및 다른 커뮤니티 회원의 선택적 수동 테스트)가 있으므로 어느 정도 보호가 가능하지만 이것이 모든 것을 포괄하는 것은 아니며 말씀하신 것처럼 수천 개가 있습니다. 패키지는 공식 저장소.

관련 정보