Какие форматы файлов используются для создания вирусов в Ubuntu? [закрыто]

9

Какие форматы файлов используются для создания вирусов в Ubuntu? Например, большинство вирусов Windows написаны в .exeформате, но я не могу идентифицировать обычный формат в Ubuntu.

Эшан Малимбада
источник
3
В дикой природе нет вирусов для Linux.
20
@CelticWarrior Конечно , есть вирусы для Linux и довольно много слишком en.wikipedia.org/wiki/Linux_malware Eshan: Вирусы не ограничиваются типом файла, на Ubuntu или Windows, не существует определенный тип файла , чтобы избежать или что-нибудь подобное, прочитайте ссылку в этом комментарии для получения дополнительной информации
Марк Кирби
@MarkKirby это ответ (и хороший), а не комментарий.
don.joey
1
Я не голосую, чтобы закрыть этот вопрос, так как это справедливый вопрос: существуют ли конкретные форматы файлов, которые содержат вирусы в Linux. Также @MarkKirby ответил на это.
don.joey
5
Самая большая проблема, которую я имею: откуда эти вирусы предположительно происходят? Официальный репо? (Я действительно скептически отношусь к этому) Launchpad? (возможно, но сомнительно, так как их послужной список хорош в этом. Снова легко жить с системой, придерживающейся официального репо.). Случайные сценарии? Мы этого не делаем ... мы не обычные пользователи Windows ... Когда вирус не может проникнуть в систему или ограничен одной системой, это вредоносное ПО, а не вирус ;-)
Rinzwind

Ответы:

27

Вопреки распространенному мнению, существуют вирусы для Linux и их тоже немало. Хотя они гораздо реже встречаются в Linux и требуют, чтобы вы пропускали их в систему большую часть времени, они все еще существуют.

Вирусы не ограничиваются типом файла в Ubuntu или Windows. Существует не определенный тип файлов, чтобы избежать или что-то подобное, просто будьте осторожны. Linux безопасен, если вы осторожны.

Некоторые вещи, которые вы можете сделать, чтобы быть в безопасности:

  1. Не скачивайте с третьих лиц, если вы не доверяете тому, что скачиваете.
  2. Используйте aptили Launchpad (сервис хостинга кода Ubuntu) и аналогичные сервисы для получения программного обеспечения из источника.
  3. Избегайте копирования и вставки команд терминала, которые вы найдете в Интернете, особенно если вы их не понимаете.

Вы также можете использовать антивирус, например, clamavесли вы хотите сканировать вашу систему на наличие угроз.

sudo apt-get install clamav

Установите clamtkдля графического интерфейса.

Вот некоторые материалы о распространенных вирусах Linux и о том, как с ними бороться.

Марк Кирби
источник
5
Они просто никогда не влияют на Linux, как на Windows, и почти все (если не все) требуют, чтобы вы сами их установили.
Ринзвинд,
3
@Rinzwind Большинство вирусов в любой ОС требуют, чтобы пользователь установил их; они просто заставляют пользователя думать, что он делает что-то еще. В качестве альтернативы они используют ошибки в определенном программном обеспечении (например, браузерах, почтовых клиентах) для получения повышенных привилегий.
IMSoP
1
«Linux безопасен до тех пор, пока вы осторожны», - как и Windows (с тех пор, как Microsoft начала заботиться о безопасности)
user253751
1
@MarkKirby UAC мало что делает в однопользовательской системе; программа все еще может зашифровать все ваши важные файлы, не вызывая приглашение UAC. Это предотвращает его подключение к системе и делает его неустранимым, так что вы можете удалить его, но к этому моменту ваши файлы уже зашифрованы.
user253751
1
@Rinzwind Нет смысла говорить «Linux более безопасен, потому что пользователи Linux более образованны». Если ваше образование - это то, что обеспечивает защиту, то Windows, которую вы используете , также будет защищена. Вирусы эксплуатируют ошибки, а ошибки есть везде. Вирус на основе макросов может полностью находиться в настройках и форматах файлов одного приложения и успешно распространяться на нескольких платформах.
IMSoP
13

Расширения ничего не значат. В то время как Windows заботится о них, существуют вирусы не .exe. В Linux ваше расширение мало что значит. «Какой файл» немного более элементарно.

По сути, в Linux, вероятно, он представляет собой разновидность двоичного файла ELF , возможно, в виде статического или общего объекта .

Он может даже подключиться к ядру в виде модуля или иным образом как руткит, или просто заменить инструмент или компонент ядра операционной системы своим собственным.

Не все из них, хотя - есть вирусы Java, такие как файлы классов , эксплойты на основе сборок шелл- кода или даже возможность вредоносного программного обеспечения, написанного на bash (хотя было бы интересно, как запустить его с самого начала).

По сути, если вы не уверены, не верьте;)

Подмастерье
источник
1
Вирусы в баш? Безусловно. Было бы легко сделать Bash Keylogger.
Нонни Мус
@NonnyMoose просто, если у вас есть права root
random_clyde
1
Социальная инженерия - довольно распространенный способ проникновения вредоносных программ в системы.
подмастерье Компьютерщик
@ Жан-ЛуиБоннаффе, почему? вам нужен root для редактирования ./bashrc у вас дома?
Ринзвинд,
@RinzWind Точно. Вам нужен только root, чтобы установить его для всех пользователей.
Нонни Мус
6

Я собираюсь обратиться к вредоносным программам в целом для этого ответа, а не только к вирусам.

Вирусы в Linux не ограничены определенным расширением / типом файла.

Чтобы лучше понять, о чем мы говорим, нам сначала нужно понять связь между расширениями и типами файлов и как на самом деле работают вирусы.

В Windows .exeфайлы содержат файлы в формате PE (Portable Executable file), который содержит двоичные исполняемые данные. Эти исполняемые данные загружаются в память и затем выполняются путем интерпретации инструкций в этих данных.

Это означает, что самый простой способ запустить ваш код - это упаковать его в .exe. Однако есть и другие способы. Файлы PDF, как известно, небезопасны, поскольку содержат части, которые могут быть интерпретированы читателем. Это означает, что встроенный скрипт может использовать слабые места в безопасности читателя и, например, искать и изменять другие файлы PDF в системе.

Это может стать еще хуже. Вы можете злоупотреблять ошибками программирования в приложениях, чтобы внедрить вредоносный код непосредственно в память компьютера. Как только они появятся, эти инструкции можно будет запускать как собственный код и часто с высокими привилегиями, что приведет к разрушительным результатам.

Так как же это работает под Linux?

Linux, как и Windows, имеет двоичный исполняемый формат. Windows имеет формат PE, Linux - формат ELF. В целом у Unix гораздо меньше требований к расширению файлов, поэтому файлы ELF обычно не имеют расширений. Linux использует Magic Numbers для идентификации этих файлов, поэтому расширения не нужны.

Двоичные файлы, однако, совсем не популярны как способ распространения вредоносного ПО в Linux. Это потому, что конечные пользователи очень редко открывают двоичные файлы, которые они получают, вручную. Двоичные файлы устанавливаются и управляются менеджером пакетов, а не конечным пользователем. Таким образом, вредоносному ПО нужны другие векторы атаки, чтобы внедрить свой код в жертву.

Это означает, что эти другие методы (внедрение кода, создание сценариев) гораздо более популярны в качестве носителей вредоносного кода.

detuur
источник
2

Различие здесь не в расширении файла, а в свойстве файла, установленном командой

chmod +x filename

Таким образом, вы можете сделать исполняемый файл из двоичного файла, а также из файла сценария.

С

ls -l

вы можете перечислить свойства файла безопасным способом перед выполнением.

Также вы можете запустить:

file filename

отображать более подробные данные о файле.

kukulo
источник
4
Я понимаю, что вы здесь говорите: «Разрешения важны для безопасности, а не типы файлов», и это очень хороший момент, но, возможно, вы могли бы прямо заявить об этом. Всегда предполагайте, что у любого читающего нет начального знания предмета :) Сделайте простое редактирование, чтобы просто уточнить это, и я буду голосовать за это.
Марк Кирби
1

Расширения и исполняемые файлы практически не связаны друг с другом в Windows или Linux, а расширения не имеют ничего общего с вирусами. При наличии явного файла для действия обе операционные системы смотрят на заголовок файла, чтобы решить, что с ним делать. Когда в имени файла присутствует неоднозначность, две ОС используют несколько разные стратегии для определения предполагаемой цели. Например, если вы введете «echo hello» в окне запуска Windows, терминале Windows или терминале Linux, оба будут искать в каждом каталоге в переменной среды PATH файл с именем «echo», который имеет разрешение на выполнение, и пытаться выполнить это с аргументом "привет". Windows также будет искать файлы "echo.com", "echo.exe", "echo.bat", "echo.cmd", "echo.vb"

Пол Смит
источник
1
Windows никогда не смотрит на заголовок файла. Используется только расширение.
UniversallyUniqueID
Извините @BharadwajRaju, но вы ошибаетесь. Как я объяснил, в Windows расширение используется для «улучшения» поиска пути, но как только подходящий кандидат найден, оно передается загрузчику, который проверяет «заголовок» файла, чтобы определить, что с ним делать. В более поздних версиях Windows этот загрузчик представляет собой набор функций, содержащихся в ntdll.dll (другое исполняемое расширение).
Пол Смит
Это изменило? Я вижу ... Так что теперь Windows может открывать файлы без расширений?
UniversallyUniqueID
Были изменения, но это было основным поведением со времен MS_DOS и CP / M до него.
Пол Смит
@PaulSmith Хотя Windows может открывать файл без расширения, Windows, как правило, не будет знать, что делать с файлом, который не имеет расширения, если вы не скажете, чтобы он открывался в том или ином приложении .
mchid