Написание вируса за две недели (Реально-ли?)

Модератор: Модераторы разделов

Аватара пользователя
VoidExp
Сообщения: 208
Статус: Lead guitar adept
ОС: Ubuntu

Написание вируса за две недели

Сообщение VoidExp »

В субботу у меня заканчиваются занятия, потом госэкзы и надеюсь, диплом :) Встал вопрос с тем, что притащить на экзамен чтобы произвести хорошее впечатление на экзаменатора и получить высший балл. Вариантов было несколько: написать игру (благо есть опыт и человек, который может помочь уложиться в срок), небольшое офисное приложение для малого бизнеса (которое пишу на Qt отчиму для его фирмы) или вирус. Идея написать вирус нравится больше всего, но у меня только опыт разработки "обычных" программ: низкоуровневых и GUI-шных, веб-приложений, игр, поэтому вирусология - абсолютно новая отрасль. Вот и хотел спросить у форумчан, насколько реально за две недели научиться делу и реализовать полноценный вирус или эксплойт, и с чего посоветуете начать? С программированием все обстоит нормально, занимаюсь этим не первый год и на разных языках (C/C++, PHP, Java, JavaScript), даже ассемблер x86 не совсем "темный лес".
Спасибо сказали:
shotdownsystem
Сообщения: 423
ОС: Basic command interpreter

Re: Написание вируса за две недели

Сообщение shotdownsystem »

Статья 273. Создание, использование и распространение вредоносных программ для ЭВМ.
И по материалам дипломной работы было возбуждено уголовное дело.
Хотите удивить - покажите решение уравнение X^a+Y^a=N^a , для любого а>2.
puts ("Working, please wait...");while(1);
Спасибо сказали:
Ism
Сообщения: 1261
Статус: Никто, по сути быдло

Re: Написание вируса за две недели

Сообщение Ism »

Ну не совсем, есть конторы, которые легально занимаются хакерством в целях улучшения безопасности
Спасибо сказали:
Аватара пользователя
eddy
Сообщения: 3321
Статус: Красный глаз тролля
ОС: ArchLinux

Re: Написание вируса за две недели

Сообщение eddy »

shotdownsystem писал(а):
08.06.2011 00:43
Статья 273. Создание, использование и распространение вредоносных программ для ЭВМ.

Это если вы их планируете по назначению использовать. А вот студенты Касперского, например, в качестве курсовых вирусы пишут :)
Да и вообще, чтобы разобраться в уязвимостях системы, нужно прежде всего ее попытаться сломать.
Если человек сможет написать вирус под линукс - что ж, ему самое место в команде разработчиков ядра :)
RTFM
-------
KOI8-R - патриотичная кодировка Изображение
Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: Написание вируса за две недели

Сообщение watashiwa_daredeska »

VoidExp писал(а):
07.06.2011 22:31
Написание вируса за две недели, Реально-ли?
Раз возникает такой вопрос — нет.

shotdownsystem писал(а):
08.06.2011 00:43
Статья 273. Создание, использование и распространение вредоносных программ для ЭВМ.
«Вирус» — не обязательно вредоносная программа.
Спасибо сказали:
Аватара пользователя
VoidExp
Сообщения: 208
Статус: Lead guitar adept
ОС: Ubuntu

Re: Написание вируса за две недели

Сообщение VoidExp »

Как-то юридический аспект меня не интересует, мне экзамен сдать на "отлично" надо.
Спасибо сказали:
Аватара пользователя
eddy
Сообщения: 3321
Статус: Красный глаз тролля
ОС: ArchLinux

Re: Написание вируса за две недели

Сообщение eddy »

VoidExp писал(а):
08.06.2011 00:51
мне экзамен сдать на "отлично" надо.

Тогда за вирус браться не советую: слишком глубоко надо будет архитектуру ОС изучить и много чего еще. Это минимум года два убить надо...
RTFM
-------
KOI8-R - патриотичная кодировка Изображение
Спасибо сказали:
shotdownsystem
Сообщения: 423
ОС: Basic command interpreter

Re: Написание вируса за две недели

Сообщение shotdownsystem »

watashiwa_daredeska писал(а):
08.06.2011 00:49
«Вирус» — не обязательно вредоносная программа.

ну да, это еще и набор молекул ДНК ))


eddy писал(а):
08.06.2011 00:49
Если человек сможет написать вирус под линукс - что ж, ему самое место в команде разработчиков ядра :)

Ничего общего между вирусом под линукс и разработкой ядра. Дурное дело не хитрое. Даже рута не обязательно получать.
puts ("Working, please wait...");while(1);
Спасибо сказали:
Аватара пользователя
eddy
Сообщения: 3321
Статус: Красный глаз тролля
ОС: ArchLinux

Re: Написание вируса за две недели

Сообщение eddy »

shotdownsystem писал(а):
08.06.2011 01:13
Ничего общего между вирусом под линукс и разработкой ядра. Дурное дело не хитрое. Даже рута не обязательно получать.

Если вы про однострочник на перловке - то это не вирус.
Не зная принципов работы ядра и основ безопасности, вирус написать невозможно.
RTFM
-------
KOI8-R - патриотичная кодировка Изображение
Спасибо сказали:
shotdownsystem
Сообщения: 423
ОС: Basic command interpreter

Re: Написание вируса за две недели

Сообщение shotdownsystem »

eddy писал(а):
08.06.2011 01:16
shotdownsystem писал(а):
08.06.2011 01:13
Ничего общего между вирусом под линукс и разработкой ядра. Дурное дело не хитрое. Даже рута не обязательно получать.

Если вы про однострочник на перловке - то это не вирус.
Не зная принципов работы ядра и основ безопасности, вирус написать невозможно.

ну будет Вам, человек не на Нобелевскую премию идет - по простому, что-нибудь типа брут сисиаш-нфс. можно мульти платформенный сделать. язык си + shell.
А за 2 недели эксплоит найти это надо быть большим везунчиком. или быть в теме. или купить.
puts ("Working, please wait...");while(1);
Спасибо сказали:
Аватара пользователя
eddy
Сообщения: 3321
Статус: Красный глаз тролля
ОС: ArchLinux

Re: Написание вируса за две недели

Сообщение eddy »

shotdownsystem писал(а):
08.06.2011 01:24
брут сисиаш-нфс

Это не вирус
RTFM
-------
KOI8-R - патриотичная кодировка Изображение
Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: Написание вируса за две недели

Сообщение watashiwa_daredeska »

shotdownsystem писал(а):
08.06.2011 01:24
язык си + shell.
По простому — это просто shell. Автозапуск из ~/.profile|~/.xsessionrc|~/.bashrc|~/.*shrc, поиск потенциальных жертв: что-то вроде find / -type f -exec /bin/sh -c 'sed -n "1{/^#!\/bin\/sh/p};q" "$1" | grep . >/dev/null' sh '{}' \; -print с низким приоритетом, ну и т.д.
Спасибо сказали:
BIgAndy
Сообщения: 1923

Re: Написание вируса за две недели

Сообщение BIgAndy »

Как бывший преподаватель, ххоть и с мизерным стажем, скажу: Не выпендривайтесь! :D
Делайте то, в чём уверены на 102%. преподаватель не будет оценивать оригинальность вышего поделия, а его реализацию. Вы может написать ХелоВорд таким красивым кодом. что преподавателю будет достаточно видеть. что вы усвоили программу и можете выпускаться как специалист.
Главное, чтобы вы сумели объяснить каждый бит вашего кода.
Неформально сообщу: Вам оценки уже неформально поставлены. Конечно, вы можете их изменить, сделав оригинальный диплом, но он требует значительных усилий и в полугодовой диапазон могут уложиться только те студенты, которые уже на момент старта дипломного проекта имеют готовые наработки.
небольшое офисное приложение для малого бизнеса (которое пишу на Qt отчиму для его фирмы) или вирус

Имхо небольшое офисное приложение - самое то, что надо. Если оно будет волекать несколько аспетов пройденного материала (например клиент-сервер приложений - сервер БД) - это вообще будет классно.
Не надо делать сложное приложение. просто продемонстрируйте свою компетенцию, а перспективы развития приложения опишите в пояснительной записке.
Спасибо сказали:
shotdownsystem
Сообщения: 423
ОС: Basic command interpreter

Re: Написание вируса за две недели

Сообщение shotdownsystem »

eddy писал(а):
08.06.2011 01:59
shotdownsystem писал(а):
08.06.2011 01:24
брут сисиаш-нфс

Это не вирус

да, это механизм распростронения. просканировали, законнектились, прописались в где-нить bashrc для линуха и какой-нить авторан для винды. при запуске повторить. за 2 недельки можно сообразить. Еще проще сделать банальный авторан, но мультиплтформенности не получится, а она - интересная фишка.
puts ("Working, please wait...");while(1);
Спасибо сказали:
Аватара пользователя
eddy
Сообщения: 3321
Статус: Красный глаз тролля
ОС: ArchLinux

Re: Написание вируса за две недели

Сообщение eddy »

shotdownsystem писал(а):
08.06.2011 12:20
просканировали, законнектились

Ага. Вот здесь-то ваше слабое место. Как вы внедряться собираетесь?
Или думаете, что какой-нибудь дурачок сам запустит ваш скрипт? :)
RTFM
-------
KOI8-R - патриотичная кодировка Изображение
Спасибо сказали:
shotdownsystem
Сообщения: 423
ОС: Basic command interpreter

Re: Написание вируса за две недели

Сообщение shotdownsystem »

eddy писал(а):
08.06.2011 12:44
shotdownsystem писал(а):
08.06.2011 12:20
просканировали, законнектились

Ага. Вот здесь-то ваше слабое место. Как вы внедряться собираетесь?
Или думаете, что какой-нибудь дурачок сам запустит ваш скрипт? :)

для линуха, через сисиаш, переписываем тело для данной архитектуры+набор для других архитектур , и добавляем строчку к примеру .bashrc или в kde или мало ли еще мест... и ждем запуска терминала/ перезагрузки системы. для винды через нфс.
puts ("Working, please wait...");while(1);
Спасибо сказали:
Аватара пользователя
Denjs
Сообщения: 1685
ОС: SuSe 10.2

Re: Написание вируса за две недели

Сообщение Denjs »

Думаю что только на чтение и понимание книжки Касперски "Техника и философия хакерских атак" (в 2-х частях) уйдет не менее недели. (в самом лучшем случае. если ничем другим не заниматься а только читать и проверять на практике все что там описано, и оно будет с первого раза получаться.). А потом ещё есть продолжение как я понимаю
А потом ещё надо и уязвимости найти, что бы вирус смог хоть что-то сделать... как вы понимаете - если бы уязвимости были - то майкрософт уже давно бы завалил все *NIX сервера по всему миру ;) а вот нет... не выходит почему-то...

В общем я вам предлагаю пока не поздно - начать делать что-нибудь из игрушек.
Я предлагаю вам сделать на основе Panda 3D игрушку: MMO-FPS ядро с клиентом..
(нужен естественно сервер с возможностью масштабирования, и PFS клиент(желаельно с 2-я видами - FPS и "из-за плеча сзади")
сетевые технологии для MMO + технолоии подержки больших пространств + поддержка специфики FPS - это достаточно серьезно.
Когда вы продемонстрируете что вся ваша группа (чел 20 для демонстрации будет достаточно) рубится в "доморощенный каунтерстрайк" на локации примерно километра 3 на 3... и при этом таких локаций в вашем мире не менее десятка ... имхо этого будет достаточно.
а за свободный кроссплатформенный MMO-сервер вам ещё и спасибо скажут.


За неделю-две с вашим рвением - думаю вы как-раз базис и сделаете я думаю...
а потом мы будем делать свободного убийцу "Stalker Online". Сценарий и general-идею мира я дам... вопрос в программном ядре и базисе...

Это - реально сделать, и полезно.
QDroid - Среда исполнения и фреймворк для QtScript.
OTPD - Открытые драйвера промышленных принтеров чеков и этикеток (кроссплатформенная подсистема печати).
Спасибо сказали:
Аватара пользователя
eddy
Сообщения: 3321
Статус: Красный глаз тролля
ОС: ArchLinux

Re: Написание вируса за две недели

Сообщение eddy »

shotdownsystem писал(а):
08.06.2011 13:29
добавляем строчку к примеру .bashrc

Это уже не вирус, если вы на целевом компьютере имеете права доступа рута =)
RTFM
-------
KOI8-R - патриотичная кодировка Изображение
Спасибо сказали:
shotdownsystem
Сообщения: 423
ОС: Basic command interpreter

Re: Написание вируса за две недели

Сообщение shotdownsystem »

Denjs писал(а):
08.06.2011 13:35
Думаю что только на чтение и понимание книжки Касперски "Техника и философия хакерских атак" (в 2-х частях) уйдет не менее недели.

и пусть большую советскую энциклопедию прочтет, тоже не повредит.
Denjs писал(а):
08.06.2011 13:35
как вы понимаете - если бы уязвимости были - то майкрософт уже давно бы завалил все *NIX сервера по всему миру а вот нет... не выходит почему-то...

O sancta simplicitas!

права рута не нужны, достаточно непривилегированного пользователя. еще можно читать его хистори на предмет ssh, можно ввод грабить на тотже ssh и пароль... много не сложных вариантов, кто бы за реализацию взялся.. )))
puts ("Working, please wait...");while(1);
Спасибо сказали:
Аватара пользователя
eddy
Сообщения: 3321
Статус: Красный глаз тролля
ОС: ArchLinux

Re: Написание вируса за две недели

Сообщение eddy »

shotdownsystem писал(а):
08.06.2011 14:23
можно читать его хистори на предмет ssh, можно ввод грабить на тотже ssh и пароль...

Еще раз повторю: для этого вам нужен доступ в систему. И вредительский софт такого типа называется не вирусом, а руткитом, т.к. он не самореплицирующийся - для его установки нужно как-то попасть в систему.
RTFM
-------
KOI8-R - патриотичная кодировка Изображение
Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: Написание вируса за две недели

Сообщение watashiwa_daredeska »

eddy писал(а):
08.06.2011 14:49
Еще раз повторю: для этого вам нужен доступ в систему.
В часть системы: профиль пользователя. В профиль пользователя можно попасть с правами этого самого пользователя, никаких прав рута, руткитов и прочей фигни не нужно.
Спасибо сказали:
Аватара пользователя
Denjs
Сообщения: 1685
ОС: SuSe 10.2

Re: Написание вируса за две недели

Сообщение Denjs »

watashiwa_daredeska писал(а):
08.06.2011 15:55
eddy писал(а):
08.06.2011 14:49
Еще раз повторю: для этого вам нужен доступ в систему.
В часть системы: профиль пользователя. В профиль пользователя можно попасть с правами этого самого пользователя, никаких прав рута, руткитов и прочей фигни не нужно.

ну а, собственно, а размножаться-то вы как вирус как собираетесь после этого? все исполняемые файлы-то закрыты.
Попросить пользователя запустить какой-то бинарник который перенастроит его(пользовтаеля) настройки - это ещё не вирус, и даже не шибко сильно "вредоносная программа".

Мы же тут про "вирус" рассуждаем? который саморазножается, получив для этого приведлегилированные права... ну а без них - перекогфигили вы файлы пользователя... дальше то что? кроме пространства пользователя вы не шибко куда вылезете.
Это не говоря про то, что если вы хотите по ssh подключаться - вам для начала ещё нужен пароль этого самого пользователя. А сетевой вирус как бы предполагает, что ему для заражения компьютера пароль не нужен.
т.е. "классический вирус" - назовем его так - попадает в систему совсем без всяких паролей и без активных/помогающих действий пользователя.
QDroid - Среда исполнения и фреймворк для QtScript.
OTPD - Открытые драйвера промышленных принтеров чеков и этикеток (кроссплатформенная подсистема печати).
Спасибо сказали:
frp
Сообщения: 1445
ОС: Debian Squeeze

Re: Написание вируса за две недели

Сообщение frp »

eddy писал(а):
08.06.2011 01:16
Не зная принципов работы ядра и основ безопасности, вирус написать невозможно.

Не правда. Вирус по определению должен уметь только одну штуку - размножатся :) А заражение реализуется очень просто (по-правильному - сложно, но как-нибудь лишь бы работало - совсем просто (в программировании на этом форуме есть где-то моя тема про Joiner, там даже код есть)). Правда, под никсами жертвы, доступные от простого юзверя на запись, найти будет сложновато, но можно поступить так:
1. Вирус при запуске, если он запущен от рута, тупо заражает все подряд (начать стоит с /usr/bin, /usr/local/bin, /usr/sbin ну и других мест, где лежат бинарники). В первую очередь заражаем те файлы, у которых есть SUID.
2. Если вирус запущен от пользователя, он модифицирует ~/.bash_rc, прописывая алиасы на всевозможные комманды (стандартные башевые и файлы из /bin, /usr/bin и т.д. и т.п.), чтобы при вызове этих комманд запускался вирус. Обязательно пишем обертку для su, которая будет запускать вирус с правами рута при каждой попытке сделать su. Аналогично делаем для sudo, gksu, kdesu и других программ, дающих рут.
3. От простого пользователя можно пытаться искать бинарники на доступных ему маздайных разделах и заражать их маздайной версией вируса :) Можно заражать еще файлы в .wine/drive_c. Можно пытаться искать эльфы, доступные пользователю на запись, но на очень немногих компьютерах такие есть.
4. Добавить функциональность по вкусу :)
За две недели вполне реально (можно и быстрее).

PS. Желательно сделать, чтобы папки /usr/bin и т.д. и т.п. просматривались не чаще, чем раз в 10-15 минут, иначе вирус будет вызывать аномальную нагрузку на винчестер и процессор. Еще можно (если вирус уже надежно засел в системе) перечитывать папки только при запуске компьютера, а дальше для того, чтобы узнавать о изменениях файлов - FAM или напрямую inotify (постоянно держать запущенный демон, который бы получал события от FAM или inotify).
Спасибо сказали:
shotdownsystem
Сообщения: 423
ОС: Basic command interpreter

Re: Написание вируса за две недели

Сообщение shotdownsystem »

называйте как хотите - суть программы от этого не изменится.
Не хватает вредоносности, ок. Давайте сканировать текстовые файлы на предмет "assword" и отправлять по почте. Пользовательских прав хватит. Еще можно зашифровать все пользовательские данные, накачать порнухи на комп и сообщить об это в полицию. Еще?
И зачем нам рут - рут нам не нужен.
puts ("Working, please wait...");while(1);
Спасибо сказали:
frp
Сообщения: 1445
ОС: Debian Squeeze

Re: Написание вируса за две недели

Сообщение frp »

eddy
Как ни странно, вирусы под Linux существуют. Конечно, ими заразится сложновато, т.к. в Linux, по сути, нет стандартных для винды способов заражения (неотключаемые автораны (в винде они отключаются только копанием в реестре, а в Linux система всегда спрашивает, запускать или не запускать, да и мало где никсовые автораны вообще используются - видел 2(!) таких диска), пользователи практически не обмениваются бинарниками, разработчики быстро фиксят уязвимости, никто не работает постоянно от рута, большинство ставит бинарники с репозитариев своего дистрибутива либо с сайта производителя проприетарщины, да и самой проприетарщины немного).
Спасибо сказали:
Аватара пользователя
Crazy
Сообщения: 862
Статус: Адепт Дзен.
ОС: Mint, Win7.

Re: Написание вируса за две недели

Сообщение Crazy »

eddy писал(а):
08.06.2011 12:44
Или думаете, что какой-нибудь дурачок сам запустит ваш скрипт? :)

собрать левую rpm, и выложить на всеобщий доступ, или же вложить в траболл с темами для KDE/GNOME соответствующий Makefile.

Desipere in loco
Спасибо сказали:
Аватара пользователя
eddy
Сообщения: 3321
Статус: Красный глаз тролля
ОС: ArchLinux

Re: Написание вируса за две недели

Сообщение eddy »

frp, этот "вирус" легко можно будет вычислить, просмотрев top или пройдясь по дереву /proc (если top уже заражен). Если он успеет позаражать много бинарников, система просто переустанавливается, а конфигурация накатывается из бекапа. Ну и опять-таки, кто же этому вирусу рутовский доступ даст?
А вот вредоносный скриптик-плагин к огнелису, высылающий вам пароли/логины пользователя, сделать намного более реально.
Crazy писал(а):
08.06.2011 17:27
собрать левую rpm

и ее довольно быстро удалят из репозитория.
RTFM
-------
KOI8-R - патриотичная кодировка Изображение
Спасибо сказали:
frp
Сообщения: 1445
ОС: Debian Squeeze

Re: Написание вируса за две недели

Сообщение frp »

eddy писал(а):
08.06.2011 17:32
frp, этот "вирус" легко можно будет вычислить, просмотрев top или пройдясь по дереву /proc (если top уже заражен).

От этого под виндами часто делают имена типа svchost.exe. Ну а под Linux вполне сойдет имя bash :) Тем более, что сия идея была реализована в первом вирусе под никсы, который на несколько дней уложил ARPANet.
eddy писал(а):
08.06.2011 17:32
Если он успеет позаражать много бинарников, система просто переустанавливается, а конфигурация накатывается из бекапа.

Так абсолютно любой вирус легко вылечить.
eddy писал(а):
08.06.2011 17:32
Ну и опять-таки, кто же этому вирусу рутовский доступ даст?

Перечитайте внимательно мой пост:
frp писал(а):
08.06.2011 16:47
Обязательно пишем обертку для su, которая будет запускать вирус с правами рута при каждой попытке сделать su. Аналогично делаем для sudo, gksu, kdesu и других программ, дающих рут.

В результате при первом же запуске пользователем su, gksu, kdesu, sudo вирус получит права рута.
eddy писал(а):
08.06.2011 17:32
и ее довольно быстро удалят из репозитория.

Если это официальный репозитарий дистрибутива, то ее туда не положат даже. Однако никто не мешает поднять свой репозитарий - пользователи найдутся. А еще есть всякие kde-look/gnome-look/..., в которых практически ничего никем не контролируется. Возможностей подсунуть человеку левый софт - куча.
eddy писал(а):
08.06.2011 17:32
А вот вредоносный скриптик-плагин к огнелису, высылающий вам пароли/логины пользователя, сделать намного более реально.

Он - не вирус, т.к. принципиально не может размножатся. Хотя можно к предложенной мной идее добавить: автоматически ставить сей скриптик-плагин :)
Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: Написание вируса за две недели

Сообщение watashiwa_daredeska »

Denjs писал(а):
08.06.2011 16:11
ну а, собственно, а размножаться-то вы как вирус как собираетесь после этого? все исполняемые файлы-то закрыты.
shell-вирусу не нужны исполняемые файлы, ему нужны скрипты. Например, всякая *.run-херня, которую пользователи качают с сайтов вроде nVidia, а потом еще соседям передают.

Кроме того, можно регулярно тыкаться в sudo на терминалах пользователя по очереди — в большинстве дистрибутивов sudo настроен с таймаутом, так что рано или поздно права root вирус получит, а там всяких shell-скриптов, выполняемых с правами root при загрузке системы — валом, а можно и свои в какой-нибудь /etc/inittab пририсовать.
Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: Написание вируса за две недели

Сообщение watashiwa_daredeska »

watashiwa_darede... писал(а):
08.06.2011 17:58
всякая *.run-херня, которую пользователи качают с сайтов вроде nVidia
Кстати, эту хренотень пользователи качают в каталог, куда имеют право записи он и все его вирусы, а потом еще и запускает с правами root — раздолье вирусам для повышения привилегий.
Спасибо сказали: