Linux malware includes viruses, Trojans, worms and other types of malware that affect the Linux family of operating systems. Linux, Unix and other Unix-like computer operating systems are generally regarded as very well-protected against, but not immune to, computer viruses.

Linux vulnerability
Like Unix systems, Linux implements a multi-user environment where users are granted specific privileges and there is some form of access control implemented. To gain control over a Linux system or to cause any serious consequences to the system itself, the malware would have to gain root access to the system.

In the past, it has been suggested that Linux had so little malware because its low market share made it a less profitable target. Rick Moen, an experienced Linux system administrator, counters that:

In 2008 the quantity of malware targeting Linux was noted as increasing. Shane Coursen, a senior technical consultant with Kaspersky Lab, said at the time, "The growth in Linux malware is simply due to its increasing popularity, particularly as a desktop operating system ... The use of an operating system is directly correlated to the interest by the malware writers to develop malware for that OS."

Tom Ferris, a researcher with Security Protocols, commented on one of Kaspersky's reports, stating, "In people's minds, if it's non-Windows, it's secure, and that's not the case. They think nobody writes malware for Linux or Mac OS X. But that's not necessarily true."

Some Linux users do run Linux-based anti-virus software to scan insecure documents and email which comes from or is going to Windows users. SecurityFocus's Scott Granneman stated:

Because they are predominantly used on mail servers which may send mail to computers running other operating systems, Linux virus scanners generally use definitions for, and scan for, all known viruses for all computer platforms. For example, the open source ClamAV "Detects ... viruses, worms and trojans, including Microsoft Office macro viruses, mobile malware, and other threats."

Viruses and trojan horses
The viruses listed below pose a potential, although minimal, threat to Linux systems. If an infected binary containing one of the viruses were run, the system would be temporarily infected, as the Linux kernel is memory resident and read-only. Any infection level would depend on which user with what privileges ran the binary. A binary run under the root account would be able to infect the entire system. Privilege escalation vulnerabilities may permit malware running under a limited account to infect the entire system.

It is worth noting that this is true for any malicious program that is run without special steps taken to limit its privileges. It is trivial to add a code snippet to any program that a user may download and let this additional code download a modified login server, an open mail relay, or similar program, and make this additional component run any time the user logs in. No special malware writing skills are needed for this. Special skill may be needed for tricking the user to run the (trojan) program in the first place.

The use of software repositories significantly reduces any threat of installation of malware, as the software repositories are checked by maintainers, who try to ensure that their repository is malware-free. Subsequently, to ensure safe distribution of the software, checksums are made available. These make it possible to reveal modified versions that may have been introduced by e.g. hijacking of communications using a man-in-the-middle attack or via a redirection attack such as ARP or DNS poisoning. Careful use of these digital signatures provides an additional line of defense, which limits the scope of attacks to include only the original authors, package and release maintainers and possibly others with suitable administrative access, depending on how the keys and checksums are handled. Reproducible builds can ensure that digitally signed source code has been reliably transformed into a binary application.

Worms and targeted attacks
The classical threat to Unix-like systems are vulnerabilities in network daemons, such as SSH and web servers. These can be used by worms or for attacks against specific targets. As servers are patched quite quickly when a vulnerability is found, there have been only a few widespread worms of this kind. As specific targets can be attacked through a vulnerability that is not publicly known there is no guarantee that a certain installation is secure. Also servers without such vulnerabilities can be successfully attacked through weak passwords.

Web scripts
Linux servers may also be used by malware without any attack against the system itself, where e.g. web content and scripts are insufficiently restricted or checked and used by malware to attack visitors. Some attacks use complicated malware to attack Linux servers, but when most get full root access then hackers are able to attack by modifying anything like  replacing binaries or injecting modules. This may allow the redirection of users to different content on the web. Typically, a CGI script meant for leaving comments, could, by mistake, allow inclusion of code exploiting vulnerabilities in the web browser.

Buffer overruns
Older Linux distributions were relatively sensitive to buffer overflow attacks: if the program did not care about the size of the buffer itself, the kernel provided only limited protection, allowing an attacker to execute arbitrary code under the rights of the vulnerable application under attack. Programs that gain root access even when launched by a non-root user (via the setuid bit) were particularly attractive to attack. However, as of 2009 most of the kernels include address space layout randomization (ASLR), enhanced memory protection and other extensions making such attacks much more difficult to arrange.

Cross-platform viruses
An area of concern identified in 2007 is that of cross-platform viruses, driven by the popularity of cross-platform applications. This was brought to the forefront of malware awareness by the distribution of an OpenOffice.org virus called Badbunny.

Stuart Smith of Symantec wrote the following:

What makes this virus worth mentioning is that it illustrates how easily scripting platforms, extensibility, plug-ins, ActiveX, etc, can be abused. All too often, this is forgotten in the pursuit to match features with another vendor... The ability for malware to survive in a cross-platform, cross-application environment has particular relevance as more and more malware is pushed out via Web sites. How long until someone uses something like this to drop a JavaScript infecter on a Web server, regardless of platform?

Social engineering
As is the case with any operating system, Linux is vulnerable to malware that tricks the user into installing it through social engineering. In December 2009 a malicious waterfall screensaver that contained a script that used the infected Linux PC in denial-of-service attacks was discovered.

Go-written malware 
The IBM Security Report: Attacks on Industries Supporting COVID-19 Response Efforts Double had as a key point that ""Cybercriminals Accelerate Use of Linux Malware – With a 40% increase in Linux-related malware families in the past year, and a 500% increase in Go-written malware in the first six months of 2020, attackers are accelerating a migration to Linux malware, that can more easily run on various platforms, including cloud environments."" That these cybercriminals are increasingly using Linux and Unix to target hospitals and allied industries (that rely on these systems and cloud networks) that they are increasingly vulnerable during the Covid-19 crisis, such as the Red Cross cyberattack.

Anti-virus applications

There are a number of anti-virus applications available which will run under the Linux operating system. Most of these applications are looking for exploits which could affect users of Microsoft Windows.

For Microsoft Windows-specific threats
These applications are useful for computers (typically, servers) which will pass on files to Microsoft Windows users. They do not look for Linux-specific threats.

For Linux-specific threats
These applications look for actual threats to the Linux computers on which they are running.

 chkrootkit (free and open source software)
 ClamAV (free and open source software)
 Comodo (proprietary) 
 Crowdstrike (proprietary)
 Dr.Web (proprietary) 
 ESET (proprietary)
 Linux Malware Detect
 lynis (open source auditing) 
 rkhunter (free and open source software)
 Samhain (free and open source software) 
 Sophos (proprietary)

Linux malware can also be detected (and analyzed) using memory forensics tools, such as:
 Forcepoint (proprietary)
 Volatility (free and open source software)

Threats

The following is a partial list of known Linux malware. However, few if any are in the wild, and most have been rendered obsolete by Linux updates or were never a threat. Known malware is not the only or even the most important threat: new malware or attacks directed to specific sites can use vulnerabilities previously unknown to the community or unused by malware.

Botnets
 Mayhem – 32/64-bit Linux/FreeBSD multifunctional botnet
Linux.Remaiten – a threat targeting the Internet of things.
Mirai (malware) – a DDoS botnet spreads through telnet service and designed to infect Internet of Things (IoT).
 GafGyt/BASHLITE/Qbot – a DDoS botnet spreads through SSH and Telnet service weak passwords, firstly discovered during bash Shellshock vulnerability.
 LuaBot – a botnet coded with modules component in Lua programming language, cross-compiled in C wrapper with LibC, it aims for Internet of Things in ARM, MIPS and PPC architectures, with the usage to DDoS, spreads Mirai (malware) or selling proxy access to the cyber crime.
 Hydra, Aidra, LightAidra and NewAidra – another form of a powerful IRC botnet that infects Linux boxes.
 EnergyMech 2.8 overkill mod (Linux/Overkill) – a long last botnet designed to infect servers with its bot and operated through IRC protocol for the DDoS and spreading purpose.

Ransomware

Rootkits
 Snakso – a 64-bit Linux webserver rootkit

Trojans

Viruses

Worms

See also
Botnet
Comparison of computer viruses
Computer virus
Computer worm
Dirty COW
Ransomware
Spyware
Timeline of computer viruses and worms
Trojan horse (computing)

References

External links 
Linuxvirus on the Official Ubuntu Documentation

 
Linux
Malware by platform
리눅스 악성 소프트웨어는 리눅스 운영 체제에 영향을 주는 바이러스, 트로이의 목마, 웜 등 여러 종류의 악성 소프트웨어이다. 리눅스, 유닉스 및 여러 유닉스 계열의 컴퓨터 운영 체제들은 일반적으로 공격에 잘 보호된다고 여겨지나, 컴퓨터 바이러스에게서 면역된 것은 아니다.

마이크로소프트 윈도우에서처럼 널리 퍼진 리눅스 악성 소프트웨어는 없다. 이러한 상황은 악성 소프트웨어의 루트 접근 권한 제한, 및 취약점에 대한 빠른 업데이트 때문으로 여겨진다.

리눅스 취약점
유닉스 운영 체제처럼, 리눅스는 사용자가 특정 권한을 부여받는 다중 사용자환경을 사용하고 일부 형태의 접근권한 제어를 사용한다. 리눅스 시스템의 제어 권한을 얻거나, 심각한 영향을 주고싶으면 악성 소프트웨어는 시스템에 대한 루트 접근권한을 얻어야 한다.

과거에는, 낮은 시장점유율로 매력이 없다고 느껴져 리눅스는 악성 소프트웨어가 거의 없다고 여겨졌다. 경험이 풍부한 리눅스 시스템 관리자인 Rick Moen 다음과 같은 상황과 직면한다.

리눅스를 공격하는 악성 소프트웨어들이 최근 몇년 새 급격하게 증가했지만, 카스퍼스키 랩의 수석 기술 고문인 Shane Coursen은 "리눅스 악성 소프트웨어의 성장은 단지 점유율의 증가, 특히 데스크탑 운영 체제로서의 성장 때문으로, 운영 체제의 사용은 악성 소프트웨어 개발자의 개발 의욕과 연관되어있다."

Security Protocols의 연구원인 Tom Ferris는 카스퍼스키의 보고서에 "사람들은 속으로 비윈도 환경이면 안전하고 악성 소프트웨어는 실제 사례가 아니라고 생각한다. 누구도 리눅스나 맥 OS에서 작동하는 악성 소프트웨어를 만들지 않을 것이라고 생각한다. 하지만 그건 무조건 적인 사실은 아니다"

바이러스와 트로이의 목마
아래 나열된 바이러스들은 최소한이지만 잠재적인 리눅스 시스템의 위협으로 간주된다. 만약 저 바이러스들이 포함된 바이너리가 실행되면, 시스템은 감염될 것이다. 감염 수위는 바이너리를 실행한 유저의 권한에 따라 달라진다. 루트 계정 아래서 실행된 바이너는 시스템 전체에 영향을 미칠 수 있다.

소프트웨어 저장소(Software Repository)는 관리자가 항상 저장소를 점검하기 때문에 소프트웨어 저장소의 사용은 악성 소프트웨어 설치의 위협을 상당히 줄여준다. 뒤이어 안전한 소프트웨어의 배포를 위해 체크섬이라는 것을 사용할 수 있게 되어있다. 이러한 것들은 중간자 공격을 이용한 상호간 통신 탈취, ARP poisoning이나 DNS poisoning같은 방향 전환 공격에서 침투될 수 있는 악성 소프트웨어를 찾아 낼 수 있다. 디지털 서명의 적절한 사용은 공격자의 범위를 상당히 줄여 추가적은 방어선을 구축해준다.

웜 및 특정 대상 공격
고전적인 유닉스 계열 시스템에대한 공격은 SSH나 웹서버같은 네트워크 데몬에 대한 취약점을 이용한 공격이다. 이러한 공격은 웜 또는 특정 대상에 대한 공격의 수단으로 이용될 수 있다. 취약점이 발견되었을 때 서버를 빠르게 패치함으로써 이런 종류의 웜의 증식은 거의 없다.  특정 대상 공격은 제로데이 공격과 같은 취약점을 통해 이루어지며, 이러한 것은 누구도 프로그램을 설치하는 것이 안전하다고 보장해 주지 않는다. 또한 취약점이 없는 서버들은 미약한 암호를 통해 공격당할 수 있다.

웹 스크립트
웹 컨텐츠와 스크립트들이 적절히 제한되거나 검사되지 않으면 리눅스 서버들은 시스템 자체에 공격을 당하지 않고도 서버에 접속하는 사용자를 공격하는 목적으로 악성 소프트웨어들에게 이용될 수 있다.  일반적으로 CGI 스크립트는 착오로 인해 웹서버의 취약점을 이용하는 코드를 포함할 수 있다.

버퍼 오버런
구식 리눅스 배포판들은 버퍼 오버런공격에 예민하다:프로그램이 자체의 버퍼 크기에 제대로 신경쓰지 않는다면, 커널은 제한된 보호수단만 제공하기 때문에 공격자가 공격자가 취약한 응용 프로그램을 공격해 자신이 원하는 코드를 실행할 수 있을 정도로 취약해진다. 루트권한 없이 실행되었더라도 루트 접근권한을 얻은 프로그램(setuid를 통한)은 공격당하기 쉽다. 그러나 2009년에 이르러 대부분의 커널들은 주소 공간 배치 난수화(ASLR)과 향상된 메모리 보호와 언급한 공격들을 더 어렵게 만드는 확장기능들을 포함하고 있다.

크로스 플랫폼 바이러스
이 부분에 대한 우려는 2007년에 크로스플랫폼 응용 프로그램들의 사용 증가로 인해 생긴 바이러스로 인식되었다. 오픈오피스를 감염시키는 Badbunny라는 바이러스로 이러한 위협은 최전방으로 나오게 되었다.

안티바이러스 응용 프로그램

리눅스 운영 체제상에서 구동되는 수많은 안티바이러스 응용 프로그램들이 있으며 대부분은 마이크로소프트 윈도유저들에게 영향을 미치는 취약점을 찾는다.

마이크로소프트 윈도의 악성프로그램을 찾는 응용 프로그램
이 응용 프로그램들은 윈도 사용자들에게 파일을 전송해 주는 컴퓨터들(일반적으로 서버들)에게 유용하다. 이들은 리눅스에 대한 위협을 감지하지 못한다.

리눅스에 대한 위협을 찾는 응용 프로그램
아래 응용 프로그램들은 실제 리눅스 컴퓨터에대한 위협을 찾는다.
 chkrootkit (무료, 오픈 소스 소프트웨어)
 ESET (proprietary) ( OS X, 윈도 대상 악성프로그램 또한 감지)
 rkhunter (무료, 오픈 소스 소프트웨어)
 Sophos (상용) (윈도 악성프로그램또한 감지)

리눅스 악성프로그램들은 아래와 같은 메모리 감식툴을 통해 감지(또는 분석)할 수 있다.
 Second Look (상용)
 Volatility (무료, 오픈 소스 소프트웨어)

위협
다음은 리눅스 악성프로그램으로 알려진 것들의 일부이다. 그러나, 적지만 이 악성프로그램들이 퍼져있다 해도, 리눅스 업데이트로 인해 무용지물이 되었거나, 더 이상 위협이 되지 않는다. 알려진 악성프로그램들은 더 이상 위협이 되지 않는다:새로운 악성프로그램이나 특정 지점에 대한 공격은 알려지지 않은취약점을 사용할 수 있다.

루트킷
 Snakso-A - 64-bit Linux webserver 루트킷

트로이의 목마

바이러스

웜

참고자료

외부 링크 
  Linuxvirus on the Official Ubuntu Documentation

악성 소프트웨어
리눅스 소프트웨어