Программа которая ломает компьютер

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

Нам может потребоваться отмазка, чтобы не давать пользоваться своим ПК или ноутбуком левым людям, которым жизненные обстоятельства не позволяют сказать чётко «Нет». У кого есть дети или младшие братья-сёстры может прибегнуть к воспитательному приёму, когда ребёнка нужно наказать запретом временно использовать компьютер. В этой статье рассмотрим альтернативу внесению изменению настроек в BIOS с целью создания видимости поломки компьютера – будем работать с загрузчиком Windows в среде LiveDisk’а от Sergei Strelec.

Как намеренно вывести из строя компьютер, чтобы Windows на нём загружалась только когда надо, с помощью LiveDisk by Sergei Strelec

Итак, друзья, имеем ситуацию, когда надо создать иллюзию поломки компьютера. Если тот, для кого такая иллюзия создаётся, имеет доступ к компьютеру в наше отсутствие, т.е. это член нашей семьи, и если этот член семьи — смышлёный товарищ, возможно, ему не составит труда исследовать устройство на предмет поломки.

СИНИЙ ЭКРАН СМЕРТИ! Подхватил вирус на ПАПИН комп / МНЕ КОНЕЦ!!!

И осознанно или интуитивно, что часто случается с детьми, устранить поломку. Что мы все делаем, когда Windows не загружается? Мы либо берём смартфон и ищем в сети информацию по ошибке, которая выдаётся вместо запуска операционной системы, либо идём в BIOS и смотрим, всё ли там в порядке с настройками. Так что вариант с внесением настроек в BIOS основательным можно считать только при условии установки в BIOS пароля.

А как создать эффект поломки компьютера, не трогая настройки BIOS? Можно деактивировать загрузчик Windows. И тогда нашему смышлёному члену семьи как минимум не удастся устранить поломку интуитивно, перебирая какие-то настройки наугад. Ему потребуются точные знания по восстановлению системного загрузчика и инструмент для проведения операции – диск установки Windows или аварийный LiveDisk.

Инструмент такой потребуется, соответственно, и нам. С его помощью мы будем убирать загрузку Windows и восстанавливать её, когда нам это потребуется. В качестве такого инструмента предлагаю взять известный читателям нашего сайта LiveDisk на базе WinPE от Sergei Strelec

Читайте также:
Как записаны в телефоне программа Андроид

Друзья, где и как скачать LiveDisk Сергея Стрельца, как создать с ним загрузочный носитель, т.е. записать на флешку или оптический диск, смотрите здесь.

1. Удаление записи о загрузке Windows в программе EasyBCD

Один из способов создания препятствий загрузке Windows – удаление записи о её загрузке. Нам не придётся вводить команды командной строки для редактирования информации в загрузчике. На борту LiveDisk’а Стрельца присутствует программа EasyBCD, с помощью которой удаление и добавление записей проводится с использованием GUI, просто и понятно.

Девушка разбила мой компьютер🤬 я отомстил и сломал ей ноутбук🤯

Идём в раздел программы «Редактировать меню загрузки». Кликаем запись о загрузке нашей Windows. И жмём кнопку «Удалить».

Всё – теперь Windows не запустится, а выдаст синий экран смерти с сообщением о необходимости восстановления из-за файла конфигурации загрузки.

Для восстановления загрузки Windows загружаемся с LiveDisk’а Стрельца. Запускаем программу EasyBCD. Идём в раздел «Добавить запись». Во вкладке «Операционные системы» Windows выбрана по умолчанию. В графе «Диск» указываем раздел диска, на котором расположена система, т.е. её диск С. Но только в среде LiveDisk’а раздел Windows может значиться под другой буквой.

Под какой – предварительно смотрим в проводнике среды WinPE. И потом жмём зелёную кнопку.

На этом всё.

2. Деактивация загрузочной записи в программе Victoria

Второй способ, как можно временно убрать загрузку Windows – это деактивация загрузочной записи в программе для диагностики жёстких дисков Victoria. Она также присутствует в числе арсенала LiveDisk’а Стрельца.

У Виктории есть функция деактивации загрузочных записей с целью обнуления нулевого сектора жёсткого диска. Чтобы это не мешало проведению тестирования поверхности диска с применением ремаппинга. Запускаем Victoria, в первом её разделе «Standart» указываем жёсткий диск, на котором установлена Windows.

Далее идём в раздел программы «Advanced» и кликаем кнопку-переключатель «MBR OFF». Жмём в окошке запроса на подтверждение «Yes».

В итоге кнопка-переключатель «MBR OFF» должна загореться красным индикатором.

Всё, можем тестировать запуск Windows. В этом случае на экране увидим либо стандартное сообщение на чёрном фоне «Operating System not found», либо синий экран смерти.

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

Для активации загрузчика проделываем обратную операцию – жмём кнопку-переключатель «MBR ON».

3. Работа с Windows без загрузчика

Друзья, если вы будете использовать первый способ с удалением записи о загрузке Windows, вам для собственного использования компьютера не обязательно каждый раз восстанавливать запись о загрузке Windows. Система может по-прежнему оставаться с пустым загрузчиком, вы же можете её запускать с помощью LiveDisk’а Стрельца с использованием его пункта загрузки ««Search https://remontcompa.ru/zagruzochnyy-nositel/livedisk/1968-kak-namerenno-vyvesti-iz-stroja-kompjuter-chtoby-windows-na-nem-zagruzhalas-tolko-kogda-nado-s-pomoschju-livedisk-by-sergei-strelec.html» target=»_blank»]remontcompa.ru[/mask_link]

Читайте также:
Лучшая программа для освобождения оперативной памяти Андроид

Программа которая ломает компьютер

Будь в курсе последних новостей из мира гаджетов и технологий

iGuides для смартфонов Apple

Создан zip-архив, который выводит из строя любой компьютер

Александр

Александр Кузнецов — 11 июля 2019, 16:40

Бомба

Программист Дэвид Фифилд изобрёл файловую бомбу с помощью которой можно «сломать» практически любой ПК.

Файловая бомба (она же zip-бомба и архивная бомба) — относительно небольшой архив, который при распаковке занимает весь накопитель, значительную часть оперативной памяти и почти всё процессорное время. Такие архивы в основном используют для того, чтобы подшутить над кем-нибудь, но бывают случаи, когда они наносят вред — например, блокируют работу антивируса, чтобы открыть вирусу возможность заразить машину.

Фифилду удалось добиться сжатия файлов в 28 миллионов раз: изначальные данные в архиве занимают совсем мало места, а при распаковке их объём с каждым шагом увеличивается в геометрической прогрессии. Программист продемонстрировал несколько примеров таких архивов. Самый опасный весит 46 мегабайт, а после распаковки разрастается до 4,5 петабайт, засоряя память компьютера мусорными файлами. Процесс распаковки создаёт большую нагрузку на процессор, поэтому компьютер может зависнуть, перестать реагировать на действия пользователя или перегреется и аварийно выключится.

Источник: www.iguides.ru

Как уронить Windows шестью строчками кода

Однажды один знакомый рассказал мне про одну уязвимость в Windows. А именно из-за нее можно легко вызвать синий экран смерти шестью строчками кода на Си. Причем программа не требует никаких прав администратора и вызывает только одну функцию масштабирования окна.

Немного теории

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

Например, в этом коде деление на ноль — недопустимая инструкция.

#include int main() < int a = 2 / 0; printf («%d», a); return 0; >

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

Если же выполняется недопустимая инструкция в ядре системы, то все немного интереснее: мы увидим синий экран.

INT_MIN / -1

Есть еще одна исключительная инструкция — деление INT_MIN на -1.
Дело в том, что INT_MIN=−2,147,483,648=-2 31 , а INT_MAX=2,147,483,647=2 31 -1. Довольно очевидно, почему они отличаются на единицу: невозможно в int запихнуть ноль, множество положительных чисел и множество отрицательных чисел так, чтобы количество положительных и отрицательных чисел было равно.
Получается, при делении INT_MIN на -1 результат не умещается в int и процессор бросает исключение.

Читайте также:
Как спрятать стиллер в программу

Следующий код, скомпилированный без оптимизации, вызывает исключительную инструкцию:

#include #include int main() < int a = INT_MIN; int b = -1; int c = a / b; printf («%d», c); return 0; >

Ядро Windows

В ядре Windows принято не использовать переменные с плавающей точкой. Прямо вообще-вообще не использовать. Поэтому когда приходится работать с чем-то нецелым, используют две целочисленные переменные: числитель и знаменатель.
Также для увеличения производительности некоторые WinAPI функции, вызываемые программой, выполняются в ядре системы. Пример такой функции — ScaleWindowExtEx. Она ничего особенного не делает — функция масштабирует окно.
Прототип функции:

BOOL ScaleWindowExtEx( _In_ HDC hdc, _In_ int Xnum, _In_ int Xdenom, _In_ int Ynum, _In_ int Ydenom, _Out_ LPSIZE lpSize );

Сама программа

Отлично, это то, что нам нужно. Второй и третий параметры, четвертый и пятый параметры — это как раз числитель и знаменатель.
Xnum / Xdenom — масштабирование по x.
Ynum / Ydenom — масштабирование по y.
Но функция не всегда делит одно число на другое. Функция будет делить одно число на другое в случае, если разметка контекста рисования (device context) располагается справа налево. В противном случае она, видимо, будет перед делением как-то менять эти числа. Чтобы поменять разметку контекста, есть функция SetLayout.
Значит, создаем контекст рисования вызовом CreateCompatibleDC (NULL). Устанавливаем разметку контекста с помощью SetLayout. После чего вызываем функцию ScaleWindowExtEx с нужными параметрами.
Конечно, программисты Майкрософт не полные дебилы проверяют деление на ноль, и передачей третьим параметром числа ноль Windows не уронишь.
Но вот деление INT_MIN на -1 они не проверяют. Из-за чего происходит необработанное исключение в ядре системе, что приводит к синему экрану.
Такой код программы при добавлении библиотеки gdi32.lib уронит Windows:

#include #include int main()

Его можно подсократить до шести строчек для добавления пафосного заголовка:
#include int main()

Тут INT_MIN заменен на -2147483648, чтобы не добавлять лишнюю строчку, подключая файл limits.h. Конечно, можно код сократить до двух строчек, но тогда он уже будет совсем нечитабелен. Да и все функции на Си всегда можно сократить в одну очень-очень длинную строчку.

Система падает на Windows Vista, 7 и 8. Баг наблюдался как на 32-разрядной системе, так и на 64-разрядной (хотя на 64-разрядной не всегда этот баг наблюдается).

P.S. Раньше с помощью такой недопустимой инструкции можно было убить bash, но сейчас это исправили.

UPDATE1: Изменил ((int) 0x8000/0x80000000) на (-2147483647 — 1), теперь должно работать. Спасибо, AndreyDmitriev и alper.
UPDATE2: Microsoft исправила эту уязвимость.
UPDATE3: Ссылка на статью «первооткрывателя»: blog.cmpxchg8b.com/2013/02/the-other-integer-overflow.html.

  • Информационная безопасность
  • C

Источник: habr.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru