“sudo apt-get install”을 사용하여 바이러스에 감염 될 수 있습니까?


74

를 사용하여 소프트웨어를 다운로드하는 것이 안전한지 확인하고 싶습니다 sudo apt-get install. 패키지가 어딘가에서 스캔됩니까? 이 명령 바이러스를 사용하여 다운로드 한 모든 패키지는 무료입니까?

바이러스가 없다고 보증하지 않으면 바이러스가 포함 된 패키지를 설치 한 후 공격자가 내 컴퓨터를 완전히 제어 할 수 있습니까? 내 컴퓨터에 설치된 모든 패키지를 확인할 수있는 방법이 있습니까? (시스템이 자동으로하지 않습니다. 시스템이 아닌 수동으로 설치 한 모든 패키지를 볼 수 있도록 필터링하고 싶습니다.)


8
질문은 유효하지만 바이러스에 대한 오해가 포함되어 있습니다. 감염을 피하는 유일한 수단 인 블랙리스트는 Windows의 역 보안 모델 덕분에 유비쿼터스이지만 매우 나쁜 방법 입니다. 소프트웨어 패키지를 "검사"하는 것은 악의적 인 행동을 막는 끔찍한 방법입니다.
와일드 카드

2
토마스, 귀하의 의견은 중재자에 의해 제거되었습니다. 반복해서 게시하지 마십시오.
jokerdino

답변:


108

apt기본 우분투 시스템에서는 바이러스에 감염 될 가능성이 거의 없습니다. 그러나 이것이 불가능하다는 의미는 아닙니다.

  • 악성 PPA
    APT의 기능 중 하나는 관리자가 PPA (Personal Package Archive) 또는 기타 소프트웨어 소스를 APT 캐시에 추가 할 수있는 기능입니다. 이러한 타사 APT 소스는 반드시 신뢰할 수있는 것은 아니며 바이러스가있을 수 있습니다. 그러나 이러한 감염된 소스 중 하나를 추가하려면 시스템 관리자가 의도적으로 조치를 취해야하므로 스스로 추가하기가 다소 어려워집니다.
  • 해킹 된 리포지토리
    이론적으로 소프트웨어 리포지토리는 악의적 인 당사자에 의해 해킹되어 다운로드 한 .deb파일이 잠재적으로 악성 페이로드를 전달할 수 있습니다. 그러나 공식 소프트웨어 리포지토리는 매우주의 깊게 관찰되며 이러한 리포지토리의 보안은 매우 엄격합니다. 해커는 공식 우분투 소프트웨어 소스 중 하나를 제거하기 어려울 것이지만, 타사 소프트웨어 소스 (위 참조)가 훨씬 더 쉽게 손상 될 수 있습니다.
  • 활성 MITM / 네트워크 공격
    네트워크가 네트워크에 의해 손상되면 (예 : ISP) 공식 소프트웨어 소스에서 바이러스를 감염시킬 수 있습니다. 그러나이 구경의 공격은 GPG 키 분배 서버 및 공식 저장소를 포함하여 많은 사이트에서 Man-In-The-Middle 사이트를 처리하는 데 상당한 노력이 필요합니다.
  • 잘못 작성된 / 악의적 인 코드
    취약점은 오픈 소스, 상호 검토 및 유지되는 코드에 존재합니다. 이러한 것들은 기술적으로 "바이러스"로 정의되지 않지만 코드에 숨겨 지거나 노출되지 않은 특정 공격은 악의적 인 공격자가 바이러스를 시스템에 설치하거나 감염시킬 수 있습니다. 이러한 유형의 문제 중 하나는 OpenSSL의 Heartbleed 또는 훨씬 최신 Dirty CoW입니다. 여기에 설명 된대로 universe또는 위치 에서 제공되는 프로그램 multiverse은이 구경의 잠재적 인 위협입니다 .

apt(리눅스 시스템의 중요성으로 인해) 클라이언트와 서버 측 모두에 대한 거의 모든 유형의 공격에 대해 상당히 보호됩니다. 가능한 동안 자신이하는 일을 알고 오류 로그를 읽는 방법을 알고있는 관리자는 이러한 공격이 발생하지 않도록 막을 수 있습니다.

또한 apt서명 확인을 시행하여 다운로드 한 파일이 합법적이며 올바르게 다운로드 apt되도록하여 디지털 서명을 위조 할 수 없으므로 악성 코드를 몰래 침입하는 것을 더욱 어렵게합니다 .


맬웨어 감염 사고에 대응하는 가장 쉬운 방법은 시스템을지면에 굽고 최근에 알려진 백업에서 다시 시작하는 것입니다. Linux의 특성으로 인해 시스템에서 멀웨어가 발견되거나 추출 될 수 없을 정도로 매우 쉽게 드러날 수 있습니다. 그러나 패키지 는 감염 clamav과 같은 rkhunter시스템 검사를 위해 사용될 수 있습니다.


6
"시스템을 땅에 태우십시오"– 잘 작성된 바이러스의 경우 이것은 거의 사실입니다. 하드웨어의 물리적 파괴는 안전 할 것입니다. 더 적은 것은 어려운 일이 될 것입니다 (예 : 하드 디스크 펌웨어가 루팅 된 경우).
Martin Bonner

2
이 세 가지 예가 상호 배타적이지 않다는 점은 주목할 가치가 있습니다. MITM을 통해 해킹 된 타사 PPA를 추가 할 수 있습니다.
el.pescado

11
(3) 어떻게 가능합니까? 패키지에 서명하고 Ubuntu 공식 저장소의 공개 키는 Ubuntu 설치 미디어에서 제공됩니다. 가짜 설치 미디어에서 시작하지 않으면 감염 될 수 있다고 생각하지 않습니다.
Federico Poloni

6
옵션 패키지 4 : Underhanded Code를 공식 패키지에 추가해야합니다. Heartbleed와 같은 버그는 엄청나게 유지되는 오픈 소스 소프트웨어에서도 몇 년 동안 심각한 버그가 공개적으로 존재할 수 있음을 보여줍니다. 따라서 공격자가 피어 리뷰를 견뎌 낼 수있는 방식으로 악성 코드를 리포지토리에 삽입 할 가능성이 항상 있습니다. 이 경우 백도어를 원래 서버에서 완전히 서명 된 패키지로 다운로드하면됩니다.
팔코

22
Linux 이외의 시스템에서는 이보다 더 나은 상황은 아닙니다. 정말 반대입니다. Windows에서 소프트웨어를 얻는 표준 방법은 말 그대로 임의의 사이트에서 소프트웨어를 다운로드하는 것이며 나쁜 일이 일어나지 않기를 바랍니다. 귀하가 설명하는 것은 소프트웨어를 안전하게 설치하는 측면에서 최선을 다하는 것입니다. (이 질문을하는 사람은 초보 수준에 있으며이를 알지 못할 수 있으므로 답변에 명시 적으로 언급 할 가치가 있다고 생각합니다.)
jpmc26

16

apt-get확인 된 공식 우분투 리포지토리 또는 소스에 추가 한 리포지토리에서만 설치됩니다. 모든 저장소를 추가하면 불쾌한 설치가 발생할 수 있습니다. 하지마


1
다른 웹 사이트에서 * .deb를 설치 해야하는 경우가 있지만 체크섬 / 해시 합계도 있습니다. 다른 저장소에서 다운로드하기 위해 ppa를 추가해야하는 경우가 있지만 apt-get 명령이 계속 사용됩니다. 가능하다면 알려진 "나쁜 웹 사이트"목록과 비교하여 ppa를 확인하는 것이 좋을 것입니다 ...
WinEunuuchs2Unix

8
체크섬은 실수로 인한 손상을 방지하지만 의도하지 않은 변조는 방지합니다. 이는 변조를 방지하는 OpenPGP 시그니처입니다.
Charles Duffy

1
패키지에 서명 한 사람을 신뢰하고 신뢰할 수있는 방식으로 키를 확인할 수 있다고 가정합니다. 솔직히 모든 사람이 때때로 웹에서 소프트웨어를 다운로드합니다. 저장소는 크지 만 무한하지 않습니다. 완벽한 보안과 신뢰는 약간의 꿈입니다.
Andrea Lazzarotto

그러나 추가 리포지토리를 추가 할 수 없습니까?
제레미

"만약 당신이 모든 저장소를 추가한다면, 당신은 뭔가 불쾌한 것을 설치하게 될 수도 있습니다. 그렇게하지 마십시오."
Marc

5

에서 다운로드 한 파일 sudo apt-get은 해당 파일에 대한 체크섬 / 해시 합계와 비교되어 변조되지 않았으며 바이러스가 없는지 확인합니다.

실제로 구글 "sudo apt get hash sum"에서 사람들이 겪는 문제는 바이러스에 대해 너무 많은 보안입니다.

리눅스에 바이러스가 전혀없는 것은 아니지만 사건은 아마도 창문보다 1000 배나 적을 것입니다.

그런 다음 다시 내 스크린 이름으로 판단하면 편향 될 수 있습니다. :)

2017 년 11 월 28 일에 대한 의견은 Windows가 Linux보다 1,000 개 더 많은 워크 스테이션을 가지고 있으므로 Linux를 해킹하는 이유를 언급합니다. 현재 리눅스가 더 빠른 슈퍼 컴퓨터 500 대에서 실행되고 있으며 대부분의 웹 서버는 리눅스를 실행하고있어 인터넷에 연결된 모든 Windows 워크 스테이션을 해킹하는 가장 좋은 방법입니다.

Chrome, Android 및 Windows 10은 사용자에게 개인 정보 보호 및 일부 보안 기능을 동시에 제공 할 수있는 충분한 기회를 제공합니다.


4
뭐라고? 체크섬 문제는 의도하지 않은 손상과 같은 의도적 인 수정을 피하는 데 그다지 중요하지 않습니다. 서명이 없으면 (데비안 패키지 에도 OpenPGP 서명이 있는 경우가 아니라면 ) 원시 데이터 자체만큼 체크섬을 수정할 수 있습니다. . 패키지의 체크섬이 빌드시 존재했던 것과 일치하지 않으면 원하는 원본 내용을 얻기 위해 해당 패키지를 추출 할 수 있다고 기대할 수 없습니다.
Charles Duffy

@Jeremy Yet Linux는 상위 500 대 슈퍼 컴퓨터와 대부분의 웹 서버를 실행하며 연결된 모든 Windows 클라이언트를 해킹하는 좋은 방법입니다.
WinEunuuchs2Unix

3

apt-get은 공식 우분투 리포지토리에서만 설치되지만 패키지가 100 % 깨끗하다는 것을 보장하지는 않습니다.

리포지토리가 해킹되면 해커가 패키지에 해로운 코드를 삽입 할 수 있습니다. 예를 들어 Linux Mint 서버가 해킹되었고 해커가 ISO 파일에 맬웨어를 삽입했습니다. http://www.theregister.co.uk/2016/02/21/linux_mint_hacked_malwareinfected_isos_linked_from_official_site/


3
최근 NSA, DNC 및 비트 코인 거래소도 해킹당했습니다. 우분투 리포지토리에 99.99999 %의 바이러스가 없다고 말하는 것이 안전하다고 생각합니다. 실제로이 Q & A에서 실제로 우분투 바이러스를 발견 한 사람은 없습니다. KASLR이 수정 한 오래된 Linux 바이러스 / 악성 프로그램이 있습니다. 대부분의 사람들은 알지 못하며 Linux 기반이 아닌 전 세계 뉴스 기반의 비 MSM 대체 웹 사이트에서만 읽습니다. 나는 리눅스가 Windows보다 훨씬 적은 바이러스를 가지고 있고 Ubuntu Update가 안전하다고 말하고 싶습니다. 그러나 항상 웹 사이트를주의하십시오.
WinEunuuchs2Unix

2
악성 코드를 ISO에 삽입하고 적절한 서버에 주입하는 것에는 큰 차이가 있습니다. ISO는 완전히 서명되지 않았습니다. 부팅 로더 (부트 로더를 보호하기위한 EFI 서명, 커널 및 initrd를 보호하기위한 GRUB OpenPGP 유효성 검사, 루트 파일 시스템을 보호하기위한 dm-verity)에 사용할 수있는 최신 도구가 있지만 dm -verity는 아직 ChromeOS 외부에서 널리 사용되지 않습니다. 반면에 apt 서버의 내용에는 모두 OpenPGP 서명이 있습니다. 신뢰할 수있는 개발자 중 한 사람의 워크 스테이션에 침입하여이를 위조해야합니다.
Charles Duffy

1
ISO를 주입하고 감염된 apt 패키지를 제공하는 것은 완전히 다릅니다. 서버를 해킹하고 감염된 iso를 제공 할 수 있지만 apt는 이런 방식으로 배포 할 수 없습니다. 이를 막을 수있는 서명이 있습니다
Anwar

-4

sudo 권한에 따라 다릅니다. 루트 액세스? 모든 베팅은 해제되어 있습니다-당신은 실제로 안전 할 수도 있고 아닐 수도있는 apt-get 생태계를 신뢰합니다. 나는 그것이 끔찍한 생각이라고 생각하지만 그것이 유일한 선택이기 때문에 항상 그것을합니다. 보안이 중요한 민감한 설치를 실행하는 경우 완전히 제어하지 않는 것에 대해 sudo를 실행하는 것은 아마도 미쳤습니다. 당신이 규칙적인 schmoe라면 아마 괜찮을 것입니다.


여기서의 질문은 apt-get 생태계가 실제로 안전하고 어느 정도까지 안전하다는 것입니다. "끔찍한 아이디어"는 운영 체제가있는 신뢰할 수있는 개발자가 소유 한 OpenPGP 키를 배포하고 (PPA를 추가 할 때와 같이) 추가 키를 활성화하기 위해 명시적인 사용자 작업을 요구하는 것 외에도, 추가 조치는 무엇일까요? 당신은 당신의 자신의 소프트웨어 배포 시스템을 구축하는 경우 추가?
Charles Duffy

아니요, 질문은 매우 명백합니다. 그냥 op를 읽으십시오. "바이러스에 감염 될 수 있습니까?" 그렇습니다. 자신의 소프트웨어 배포 시스템을 구축하는 것은 완전히 다른 질문입니다.
mobileink

추신. 나는 "나는 생각한다"라고 끔찍한 생각이라고 도전 할 수 없다고 말했다. 사실 소프트웨어 배포 시스템이 sudo를 요구하는 것은 끔찍한 생각입니다.
mobileink

6
권한이없는 사용자가 다른 권한이없는 사용자의 기본 경로에있는 위치에 소프트웨어를 설치할 수 있도록하는 것이 끔찍한 아이디어 라고 주장합니다 . Homebrew는 심각한 위반자입니다. 설정을 수행하자마자 관련 uid에서 실행중인 손상된 프로세스 /usr/local/bin는 사용자가 관리 활동을 허용 할 것인지 확인하지 않고도 소프트웨어를 설치할 수 있습니다 .
Charles Duffy

3
이론적으로는 가능하지만 가능성은 훨씬 낮습니다. 그리고 이것은 우리가 이론의 비즈니스에 종사하는 Security SE가 아닙니다. Ask Ubuntu는 실제 사용자에게 질문이있는 최종 사용자에게 중점을 둡니다.
Charles Duffy
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.