Как организована безопасность вашей операционной системы Windows?

от автора

А вы уверены, что знаете, какие действия выполняют программы на ваших компьютерах и прочих девайсах? К примеру, могут ли игры копаться в ваших документах?

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

Попробуем разобраться вместе.

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

За многие годы пользования компьютером я часто ловил трояны/вирусы по разным причинам. Однако, они никогда существенно не портили мою систему. Реклама, ошибки, лишние сервисы — это было достаточно безобидно, поэтому меня не интересовало как работают вирусы/антивирусы.

В статье я делюсь своим личным мнением и опытом. Цель статьи — разобраться, как обеспечить безопасную работу в Windows

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

Обо всем по порядку.

# Немного лирики. Без небольшой предыстории не обойтись

Совсем недавно я решил освоить python. Подучив основы, я решил написать приложение для автоматизации своих рутинных задач. Я не программист, но знания PL/pgSQL помогли быстро освоиться.

1. Завязка

Я удивился, когда скомпилированная в .exe и .bin программа без каких-либо вопросов запустилась с флешки на другом компьютере, выполнив все, что в ней прописано:
— удалить файлы из папки «Мои документы»
— прочесть и заменить буфер обмена
— вывести информацию о файлах в других каталогах
— обратиться к интернету
— выключить компьютер и прочие «шалости»

Справедливости ради, попробовал на Linux — результат тот же.

P.S.

На Linux редко кто ставит антивирус и прочие средства защиты, т.к. пользователи Linux обычно не качают что-либо из сомнительных источников. Обычно все устанавливается из доверенных репозиториев. Наверное, поэтому он не усыпан вирусами.

Но в Windows(8/10) я наивно ожидал какого-либо диалога о подтверждении запуска, визга антивируса и прочих прелестей. Я привык думать, что я надежно защищен, т.к. с моим компьютером ничего особо опасного не случалось.
Я пробовал запускать программу на разных компьютерах друзей, используя запись гостя и нового простого пользователя, ставил разные средства защиты — эффект тот же.

Исповедь ламера:
Я почему-то наивно полагал, что буфер обмена — это нечто «святое», т.к. в нем часто мелькает важная информация, и мне казалось, что я сам регулирую вставку данных.

Однако, как я понял, для ОС это просто программа, как PuntoSwitcher, Teamviewer и прочие, которые спокойно выполняют разного рода действия.

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

2. Немного о программе

Консольная версия программы была бы скучной для запуска, поэтому я решил добавить интерфейс.
Пока баловался с ним — вышла незамысловатая игра. Хотел написать сапера, но это было сложно решил придумать что-то свое.

Меню игры при первом запуске

Программа может показаться безобидной игрой, однако через несколько минут после скачивания файла (или другого обозначенного события) активируются новые функции

ограничился следующим списком:

Программа
— собирает некоторые данные о компьютере и показывает их в блокноте
— читает и подменяет буфер обмена
— обращается к интернету (просто получает главную страницу известного поисковика)
— открывает браузер с указанными ссылками
— дружит с антивирусами (пока что, проверил на virustotal.com). При скачивании этой программы из интернета, единственный барьер, который я встретил — это SmartScreen, который не любит приложения от неизвестных производителей
— может выключить компьютер даже быстрее, чем это делает кнопка из меню «Пуск»
— удаляет файлы в конкретной папке
Из украшательств: окно находится всегда по центру, не дает свернуть/переместить/закрыть себя, т.к. не имеет заголовка, перекрывает все окна. Не реагирует на ALT+F4 (добавил кнопку для выхода).
Бонус: случайно вышла оптическая иллюзия мерцающих кругов между квадратами.

Программа весит около 7 Мб, хотя код на строк 300 (включая множество пустых), потому что используемый мною компилятор (pyinstaller) даже «Hello world» компилирует в 5-Мб exe.

Меню игры, которое мы заслужили

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

P.S.

Если захотите скачать этот файл для эксперимента, то сможете догадаться, где скачать «более безобидную» версию программы (без удаления и выключения).
Но делать этого я не советую, мало ли что там 🙂

Но суть не в этой программе, она лишь в качестве примера.

3. Что меня смущает?

«Я знаю, что я ничего не знаю«.
Я простой пользователь, убежденный в том, что меня защитят антивирусы и сама система от большинства сомнительных (на мой взгляд) действий программ. Вряд ли мое приложение считается вирусом, но навредить оно может.
Никаких претензий к антивирусам не имею, они спасают от популярных угроз, фишинговых сайтов и прочих проблем.
Главная причина проблем — действия самого пользователя.

Наверняка есть пользователи, которые не подозревают насколько может быть опасно скачивать незнакомые/cracked приложения с торрентов, файлообменников, и прочих сайтов.
Особенно те, что требуют прав администратора для запуска. Сериал «Черное зеркало» намекает. Про Root прошивки/приложения телефона — промолчу.

Далеко не все люди хорошо ладят с компьютером, скачивают что предлагают, и доверчиво нажимают «Далее/Продолжить» при всех установках.Поэтому, когда знакомые просят меня посмотреть компьютер, который еле шевелится, я всегда вижу кучу хлама полезных сервисов.

Типичный режим эксперта

Меня немного раздражает ‘вседозволенность’ программ, когда они прописывают себя не только в автозагрузке, но и пускают корни в службах, реестре и планировщике задач, замедляя компьютер своими непонятными процессами.
Пока я пробовал разные антивирусы, один из них при удалении испортил драйвер для сетевой карты, и я остался без интернета. Помогла точка восстановления системы.

У меня нет паранойи, но мне не нравится, что при установке программы всплывает лишь 2 варианта:
-Установить (*Установить с правами администратора)
-Отменить

А что, если я хочу (на всякий случай), чтобы приложение видело только свою папку, не имело доступ к интернету, буферу обмена и т.д.? Куда мне нажать?
Благо ограничения камеры/микрофона имеются в настройках конфиденциальности.

4. Что ты хочешь? Всегда же так было

Видимо, я уже привык, что на телефоне приложения назойливо запрашивают доступ к данным и функциям системы («разрешить доступ к Фото/Камере/Микрофону/Геопозиции»)

Однако!

Теперь я задумался, это постоянный доступ в любой момент работы приложения? Или только когда я нажимаю «Записать/Сфотографировать/Отправить файл»?
Надеюсь там все в порядке, но это уже другая тема..

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

5. Поиск решения

Самый важный и очевидный шаг прозвучит наивно, т.к. многие о нем знают, но часто пренебрегают этим.
Большинство бед (вирусы, майнеры, сбои и т.п.) Windows из-за того, что многие пользуются учетной с правами администратора, созданной при установке, тем самым запускают все программы с избыточными правами. Каюсь, я один из них.

Не знаю, почему до сих пор в Windows это не такой очевидный момент,

как в Linux

Краткая инструкция для тех, кто понимает, о чем речь, но не решается на такой шаг:

Создайте отдельного пользователя, дайте ему права администратора, а с себя снимите.
Только с паролями не запутайтесь.
При запуске/установке некоторых программ и прочих изменениях в системе будет запрашиваться пароль администратора (а не просто: Да/Нет), появится повод задуматься, для чего программа требует такие права.
От прижившихся приложений не поможет

Заметил, что некоторые программы при запуске хотят получить права администратора, однако при неудачной попытке могут предложить альтернативу:

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

Я вышел в интернет с подобным вопросом (+ IT чаты в мессенджерах): «Как безопасно/изолированно запустить программу EXE?»
Еще опросил знакомых близких к IT.

Нашел следующие варианты:
1) Использовать виртуальную машину
Отличный вариант, но не для всех случаев.

Думаю, что часть пользователей могут представлять виртуальную машину как-то так

2) Системные настройки
Настроить политику безопасности, права на важные папки и т.д.
Понять, почему программа просит дополнительные права, и подавить UAC запрос

Конечно, Windows достаточно гибкий в настройке. Я считаю считал себя достаточно «продвинутым» пользователем, но даже я не хочу возиться с настройками политики, дополнительным софтом и прочими хитростями.

P.S. Пока искал информацию, чаще всего находил статьи о том как отключить UAС, чтобы он не мешал своими предупреждениями.

3) Не скачивать подозрительные приложения. Лучший вариант!.
У меня теперь сомнения, откуда мне знать, что любое известное приложение не делает/сделает того, что я не хочу?

Фрагменты типичного лицензионного соглашения

Пользователь уведомлен и соглашается с автоматическим обновлением Программы без каких-либо дополнительных уведомлений.

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

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

4) Использовать программы «песочницы«
Наиболее удобный вариант, на мой взгляд. Я смог подавить некоторые опасные операции своей программы, что весьма не плохо. Однако, это сторонний и не бесплатный софт, который требует настройки.
Хочется чего-нибудь похожего встроенного в ОС, с понятным интерфейсом.

Итог

Я никого не обвиняю, не призываю к панике: просто захотелось поделиться с вами своими мыслями на счет безопасности наших ОС.

Меня удивляет, что любое приложение может быть «ящиком Пандоры», от которого мало кто знает как защититься (по моему наблюдению).

Мне кажется это очень странным, во времена, когда все стараются защитить свою информацию, используют двухфакторную авторизацию/SMS, шифрование в мессенджерах и прочие вещи.

Я надеюсь, что я грубо ошибаюсь, и программы не могут выходить за ожидаемые рамки (каким-то чудом).
Если есть простая штатная возможность организовать более безопасную среду, буду рад, если подскажете как это сделать!

Спасибо за внимание!

Как организована безопасность Вашей операционной системы Windows? Что можете посоветовать?


ссылка на оригинал статьи https://habr.com/post/426217/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *