Апокалипсический сценарий. Недалёкое будущее. Birus-эпидемия.
Вы вбиваете в поисковике "тур на двоих Анталия", попадаете на какой-то сайт, кликаете страничку с ценами, небольшая заминка и появляется прайс. Через минуту, подбирая нужный вариант отдыха, вы ещё не знаете, что в одной из глобальных бирус-ботнетов добавился ещё один компьютер. Что включив утром ноутбук больше никогда не сможете избавиться от этой гадости. И что в случае даже минимальных требований к безопасности, единственным выходом является лишь вариант полностью отключить его от Интернета, оставив в качестве печатной машинки, несетевых игр и пасьянсов.
Через совсем непродолжительное время незаражёнными остаётся уже меньшая часть всех компьютеров, в основном это древние рабочие лошадки типа Pentium 3 и старше. Смысл понятия "работа в Интернет" да и просто "Интернет" - катастрофически меняется. Занавес.[/right]
<!--break-->
Что такое birus?
Birus – сокращение от BIOS-virus (согласно голосования это слово было выбрано для термина "Вирус в BIOS-е" или "BIOS-ный вирус") - вирус, который располагается в микросхеме Flash/EEPROM. Т.е. принципиальным отличием его есть тот факт, что он находится в постоянной памяти компьютера и удалить его без перешивки (обновления прошивки BIOS) нельзя. В дополнение ещё и то, что и обнаружить его тоже крайне сложно вплоть до вообще невозможно. В остальном (зловредные действия) бирусы ни чем не отличаются от различных вирусных программ типа троянов сотоварищи.
Как работает birus?
Получив управление, бирус внедряется в BIOS (например, считав текущую прошивку и добавив в неё свой код) и перезагружает компьютер (либо пассивно ждёт, пока сам пользователь её осуществит). После очередной загрузки зловредный код становится совершенно невидим для любой работающей в операционной системе программы. Кроме того его код получает возможность одинаково работать в любой операционной системе – Windows, Linux, MAC OS и т.д.
Что может бирус?
- Он может заразить (получить управление и/или выполнить другие зловредные действия) любое приложение для любой операционной системы.
- Он может быть совершенно невидим - запретив возможность своего обнаружения.
- Он может быть совершенно неудаляем – запретив возможность обновления BIOS.
- Он может осуществлять зловредные действия в любое время и абсолютно прозрачно (т.е. его процесс активности нельзя заметить и остановить) в процессе работы компьютера.
- Он имеет доступ ко всем устройствам компьютера, обладая всеми возможностями ОС и даже больше.
Можно ли защититься от заражения бирусом?
Можно. Но сначала перечислим, что ему не помешает:
- Установки любых паролей в BIOS никак не защитит от бируса.
- Прошивка нового BIOS «на самом компьютере» - может не помочь избавиться от бируса. Это верно для перешивки как под DOS, так и под Windows (или другой OS).
Реально защититься от бируса можно лишь на старых компьютерах, у которых есть перемычка для защиты BIOS от перешивки. Обычно это компьютеры Pentium II и старше.
Где доказательства, что бирусы вообще есть?
Доказательства известны и работают ещё с 2002-года, они доступны для скачивания на главной странице www.ROM.by. Называется этот бирус – BIOS Patcher. Характерный классический полуавтоматический представитель - это когда процесс прошивки происходит самим пользователем. Плюс, конечно, вместо зловредных он обладает исключительно полезными свойствами. Однако это не отменяет его природу. И тот факт, что вот уже столько лет он благополучно работает даже на самых ультрасовременных системах, которых близко не было при его разработке – ещё один показательный пример потенциала бирусов.
Лирическое отступление 1.
В 2004-м году, на излёте разработки BIOS Patcher-а мною были успешно закончены тестовые испытания одной из его возможностей – прошивки BIOS его же (BIOS-а) средствами. Сложно сходу осознать результаты этого опыта, однако после него я прекратил все разработки в этом отношении, лишь саркастически отрапортовав на форуме www.ROM.by банальным "Что бы ни делал человек – всё равно получается оружие."
Лирическое отступление 2.
В 2006-м году началась активная фаза других моих экспериментов - с SMM. И через год была успешно протестирована другая возможность патчера – универсально перехватывать управление под любой ОС (Windows, Linux, MAC и т.д.) Ситуация ещё раз доказала всё ту же истину - «Что бы ни делал человек…»
Молчание – золото.
Не сложно догадаться, что могут дать такие технологии, потому тогда было решено просто замять этот процесс и не создавать никакой особой огласки, даже намёками, о том, как такое может работать. Понятно, раз мне удалось до этого дойти, значит и другие смогут это повторить и усовершенствовать впоследствии. И действительно, уже через год стали всплывать заявления в стиле "Обнаружен супер-пупер руткит, использующий уязвимость таких-то процессоров сотоварищи". Ещё через год их стало много больше. Хотя в реальности абсолютное большинство новостей из данной области были (и остаются) чисто пиарными, лишь умно рассказывающими о том, в чём никто абсолютно не разбирается. И не раз хотелось вставить свои пять копеек... Не важно, в общем, недавнее сканирование по этому вопросу Интернета показало, что данную тему уже точно не замнут, потому нужно выходить из текущего пассивного состояния "созерцания происходящего" в активное - чтобы максимально приготовиться к надвигающейся эре бирусов. Нужно писать BIOS Patcher 8.0 – первый антибирус.
Re: Birus-ы. Часть первая.
Цитата:Он может быть
Re: Birus-ы. Часть первая.
Re: Birus-ы. Часть первая.
Ну, возможно, пока этот момент не будет отслеживаться бирусописателем. Да и это предполагает все же подозрение на бирус...
Да и зависит от реализации как бируса, так и Дуалбиоса. Вот если бы Дуалбиос был "джамперным", тогда вроде как нормально. А так, как я понимаю - бутблок выполняется Main-BIOSа в любом случае. Или только в автоматном?
Цитата:Интересно, каким
В свете достижений "великих виртуализаторов" бирус вообще может запустить ОС из себя в "песочнице", к примеру.
Цитата:А так, как я понимаю -
Цитата:Следовало бы
+1
Даже QuadBIOS никак не изменит ситуацию. :)
Проблемы с перехватом нет, т.к. "права на железо" у запущенного ещё в BIOS бируса "выше", чем у любого приложения ОС. Т.е. он не перехватывает управление, а "временно" его отдаёт для работы ОС.
И потому у него проблема больше в том, чтобы найти "где перехватить". Это значит, что бирусу нужно, условно говоря, найти "точку входа". Для этого он сканирует память блоками, постепенно находя по своим паттернам нужные для его (зловредной) работы функции ОС.
Re: Birus-ы. Часть первая.
Re: Birus-ы. Часть первая.
у меня есть чисто китайский
пшоёнахPHOENIXдля интересующихся выкладываю для исследований. Если шпион таки найдётся- то непримините
обсудить его здесь, любезнейше прошу...
(PhoenixBiosEditor его открывает, за исключением 4-х неизвестных модулей)[/off]:-)
Цитата:Эта тема затрагивалась
Это отдельная тема. Будет затронута в последующих частях. Ради шутки я уже поднимал эту тему. Мало кто вспомнил присказку о том, что в каждой шутке есть доля шутки...
небольшое отступление от
Re: Birus-ы. Часть первая.
Цитата:Можно ставить
Можно. Только потом менять по гарантии зае...шься, и тот, кто это сделает - проиграет конкурентам (сейчас - так точно)... Да и найдите мне однократку на SPI или FWH. Есть, может быть, но я как минимум не вкурсе. На это в современных реалиях никто не пойдет. Уж лучше "возродить джампер". Да и возрождать джампер никто не будет, пока петух реально не клюнет.
В общем - :-), т.е. нереально.
Спс автору, что обращает наше
Я спрашивал об этом в умных людей еще, когда только знакомился с ПЗУ, Ассемблером и ВІОS - те крутили пальцем у виска.
А ведь от правды никуда не денешься. Так что лучше пока не забывать наших стареньких друзей (я о девайсах у которых есть эта заветная перемычка от записи). И недаром во многих старых носителях (дискетах, SD флешках и др.) делали физические средства защиты от записи.
Ведь ето дело темное. Кто реально, а не теоретически может сказать, что у него записано в BIOS? И не надо для этого ставить Бирус прямо на заводе. Любой умный чел может изменить (“обновить”) ваш BIOS прям из OS. Что еще можно сказать.
Так что респект автору за работу. С нетерпением жду продолжения, готов предоставить помощь (например, в виде тестирования на разнообразных (в плане BIOS) машинах).
Ну так давайте на SPI-ках
ЗЫ: Для отпайки, кроме паяльника, понадобится кусок бритвенного лезвия. С нитками и бумажками не получится (способ только для SPI)
Re: Birus-ы. Часть первая.
:)
apple_rom Интресно, а на
Интресно, а на какой размер свободной памяти в BIOS flash, может рассчитывать желающий там поселиться бирус?
И примерно какой размер в килобайтах будет иметь тело бируса?
Не знаю можно ли отнести к
KitSover писал(-а):Не знаю
Цитата:Интресно, а на какой
Во времена, "когда BIOS-ы ещё были маленькими" (1-2Мбита) - было места не шибко много. Это было проблемой патчера, в частности. Но даже в "тех" условиях на бирус обычно можно было с большой долей вероятности выделить несколько (~2-5) десятков килобайт непожатого кода. Начиная с 4-х мегабит проблема почти исчезла, речь уже шла о сотнях килобайт. Ну, а с 8Мбит и выше говорить о "нехватке места" стало просто смешно, туда реально можно часто запихнуть целую BirusOS. ;)
Re: Birus-ы. Часть первая.
они(их применение) как то влияют (положительно/отрицательно) на печальный образ будущего, или ни как?
или их влияние только в том что технологии (достаточно)новые и "пока" не сильно освоенные "злыми силами" ?
apple_rom А как так
А как так получилось, что производители материнских плат стали устанавливать flash большей ёмкости?
Неужели это не было вызвано увеличением объёма самого BIOS?
И на какой объём памяти бирус может рассчитывать на современных материнских платах?
В случае перехода к 4Мбитным
apple_rom Мегабайт и больше
Мегабайт и больше свободного места это уже интересно.
А можно ли написать бирус используя Microsoft Visual C++ и при помощи каких функций WinAPI можно записать тело бируса в BIOS flash?
И ещё сможет ли школьник написать бирус?
Цитата:как в свете выше
Это отдельная (тоже печальная) история. Если вкратце/утрированно, то можно выделить две вещи: 1. Исходники EFI доступны (в данном случае - это минус). 2. Защита прошивки в EFI ориентируется на SMM.
Можно. Особенно если он будет ориентировать на упомянутые системы с EFI на борту - оный ведь на С (с возможностью использования С++).
Win32_BiosFlash Class? :D
А Вы из какого класса? :))))
Цитата: А Вы из какого
Закончил 10-й.
Как писали в 2006 на ixbt:
"Пока не сообщается о времени, когда пользователи настольных ПК смогут вместо привычных Award, AMI, Phoenix и других BIOS увидеть нечто вроде Intel EFI. Мы, как обычно, будем держать вас в курсе."
http://www.ixbt.com/news/all/index.shtml?05/74/75
Сейчас 2009, но пока мы видим привычные Award, AMI и т.д.
К сожалению, я не нашёл в MSDN Win32_BiosFlash Class.
Там есть Win32_Bios Class, однако функции этого класса могут только читать данные BIOS, но не записывать.
http://msdn.microsoft.com/en-us/library/aa394077(VS.85).aspx
Так какой всё-таки функцией API можно записывать данные в BIOS?
Любопытный писал(-а):Сейчас
А по реальности использования EFI - Intel'овские платы от 945 чипсета и далее - самый простой пример.
Несколько настольных плат попадалось и у других производителей (можно поискать на форуме тему, в которой собирали BIOS'ы от плат с EFI). В ноутбуках тоже что-то должно быть.[/off]
Цитата:Закончил
Поступайте в профильный ВУЗ и учитесь, учитесь и т.п. Набирайте базовые знания. Надеюсь, будете писать АНТИбирусы.
Ну, и так, типа азы - с 3-го ринга невозможно перешить биос.
"типа Pentium 3 и старше" -