Гугл по этой теме выдает статьи, где описан алгоритм запрета на установку программ по сертификату издателя. Способ хороший, но трудоёмкий, и сертификаты могут меняться, и вытащить их из установщика проблемно… в итоге у меня так и не получилось его реализовать. Мой алгоритм очень простой:
Мы знаем, что «любимые» всеми админами программы устанавливаются в папку c:\Users\%username%\AppData\Local (поправьте, если есть еще скрытые места). Вот и пришла мне в голову мысль о том, что если создать папки с названиями ненужных нам программ самим, и убрать им
Итак, сей скрипт:
::удаляем папки если они уже есть
rmdir c:\Users\%username%\AppData\Local\Mail.Ru /s /q
rmdir c:\Users\%username%\AppData\Local\MailRu /s /q
rmdir c:\Users\%username%\AppData\Local\Unity /s /q
rmdir c:\Users\%username%\AppData\Local\Amigo /s /q
rmdir c:\Users\%username%\AppData\Local\Apps /s /q
::создаем папки
mkdir c:\Users\%username%\AppData\Local\Mail.Ru
mkdir c:\Users\%username%\AppData\Local\MailRu
mkdir c:\Users\%username%\AppData\Local\Unity
mkdir c:\Users\%username%\AppData\Local\Amigo
mkdir c:\Users\%username%\AppData\Local\Apps
::устанавливаем права (заменяем все существующие на новые)
echo y|cacls c:\Users\%username%\AppData\Local\Mail.Ru /C /G domain.ru\adminuser:F
echo y|cacls c:\Users\%username%\AppData\Local\MailRu /C /G domain.ru\adminuser:F
echo y|cacls c:\Users\%username%\AppData\Local\Unity /C /G domain.ru\adminuser:F
echo y|cacls c:\Users\%username%\AppData\Local\Amigo /C /G domain.ru\adminuser:F
echo y|cacls c:\Users\%username%\AppData\Local\Apps /C /G domain.ru\adminuser:F
Как видно, список программ в примере небольшой (Mail.Ru и MailRu — это от игр мэила и спутника, UnityPlayer, Амиго, Apps — что-то нехорошее я там увидел).
Список можно пополнять любыми замеченными программами, создающими свою папку, главное знать название такой папки. Есть еще куча гадостей, вроде Менеджера Браузеров, нихром, бромиум и прочего. Пока к нам такое не попало, не могу узнать названия папок, но всё в Ваших руках!
Дальше всё просто — ставим запуск этого файла в логон скрипты, или в назначенные задания (для пользователя при входе в систему), и наслаждаемся результатом! Работает в Win7 100%, Амиго, например, даже не выдает никаких ошибок, просто не устанавливается.
p.s. Амиго и прочая дрянь может запуститься раньше скрипта, тем самым не даст удалить свою папку. Чтобы всё было четко, нужно переписать скрипт таким образом, чтобы он сканил все папки всех пользователей компьютера на предмет «плохишей» и ставить его на выполнение при запуске компьютера. Меня переполняют эмоции, скорее хотел написать статью, так что скрипт доделывайте сами до нужного состояния.
p.s.s. Просьба не говорить, что скрипт
Комментарии (58)
VaMpir
22.10.2015 15:35+1Амиго и прочая дрянь может запуститься раньше скрипта, тем самым не даст удалить свою папку.
Добавить в скрипт запуск Unlocker'а.
Olanonymous
22.10.2015 15:55+6> Просьба не говорить, что скрипт написан некрасиво, и всё можно сделать в цикле перебором по списку папок и пр… Он облегчен для наглядности простоты идеи в целом.
Но в цикле наглядность и простота никуда не теряются же. http://pastebin.com/vkqdg06Kaxeax
22.10.2015 15:58-2Спасибо, но говорю же, торопился спасти мир!) а на самом деле я в бате не силен, дольше бы искал синтаксисы массивов и циклов.
ketrin7
22.10.2015 16:41-4Амиго — злостная штука. Но как по мне, самый действенный способ смотреть, что устанавливаешь, а не просто нажимать, кнопку далее, и не загружать игры и прочую муру.
У меня Амиго установился с архивом какой-то очень нужной книги, которую больше нигде не нашла. В итоге и книги там не было и Амиго в наличии. Теперь просто внимательна к таким вещам.TokminD
23.10.2015 09:04+4Речь идет про рабочую среду, где пользователи «не умеют» смотреть, что нажимают. Попадаются разные экземпляры. Самый жесткий случай в моей практике — это работница (в возрасте), которая хранила важные документы в корзине о_О К счастью у меня Амиго почти никто не устанавливает. Везёт видимо
PoliTeX
22.10.2015 16:58+6А Юнити за что? Он, вроде, не мусорит и не скрытничает?
Wedmer
22.10.2015 16:59-9На работе люди должны работать)))
PoliTeX
22.10.2015 17:03+6На нем не только игры делают. Но это ваше дело.
Wedmer
22.10.2015 17:09Среднестатистическому офисному работнику и остальные области применения не нужны. А если реально нужны, то нужно обоснование, с которым этот вопрос решается в административном порядке.
axeax
22.10.2015 17:13У нас школа, юнити просочился в кабинеты информатики
Wedmer
22.10.2015 17:24Школа/Офис — неважно. Списки могут быть разными. Но, кажется, уточнение вам надо было не мне писать, а в статье, или автору корня этой ветки.
Wedmer
22.10.2015 17:28+4Кто из минусующих может предоставить пример, когда среднестатистическому офисному работнику нужен Unity?
Wernisag
22.10.2015 18:30Дополню. Если все таки кому действительно нужен Unity, в чем проблема подойти к вопросу персонально и снять ограничение
fshp
23.10.2015 06:17-3Например среднестатистический офисный работник является разработчиком и использует Unity?
gotch
22.10.2015 17:11+4Applocker, именно Applocker. Раньше думали — «кошмар-кошмар-кошмар», но нет, работает, и довольно просто сопровождается.
Ckorpion
22.10.2015 17:14+5Я использовал на работе Software Restriction Policies (включаются через GPO), что позволило полностью запретить пользователям запускать исполняемые файлы, кроме списка заранее одобренных. Есть, конечно, некоторые неудобства — зато повышается безопасность.
Wedmer
22.10.2015 17:30Ну неудобства скорее административного плана. На самом деле, если человеку нужен еще какой софт, то пусть обосновывает и получает санкцию на установку/запуск. Безопасность прежде всего.
Ckorpion
22.10.2015 17:43Тут вопрос в обновлении уже существующего программного обеспечения. В отличии от Applocker и его более гибких правил, некоторые программы, после обновления, надо заново заносить в список исключений (если эти программы не установлены в Program Files).
yosemity
23.10.2015 01:33+2Это очень легко решается. Убираем незамедлительно у всех админские права. Включаем SRP так же для всех (включая гендира) SRP работает начиная с ХР проф, не надо никаких Этерпрайзных Семерок. Запуск софта разрешен только из %WINDIR% и %ProgramFiles% (+x86). Юзер не может писать в указанные выше директории, следовательно не может запустить оттуда левую прогу. Из своего профиля, или из любого другого места, хоть обзапускайся, винда не разрешит. ВЕСЬ Софт разворачивается централизованно через LUP. Опционально: включаем централизованный мониторинг логов SRP с клиентских машин и весело наблюдаем за попытками бухгалтерии запустить очередной вирус «от налоговой». Спасает не только от всяких «Амигов», но и от любой заразы, даже неизвестной антивирусам.
Это всего один раз вникнуть в тему и на 99% снизить риск. Дополнительно запиливаем всем EMET с правилами (Popular и Recomended Software), чтобы повысить защиту софта от 0-day.
Ну а колхозить такие убивальщики… наверное интересно, но абсолютно неэффективно.
Добавлю, что все вышеуказанное с успехом работает у нас не первый год.
pehat
22.10.2015 17:24+5Хм, в заголовке у вас ЯБро почему-то перечислен в списке гадости, а в скрипте нет. Поменялось мнение, пока статью писали?
jah
22.10.2015 17:54-9pehat глазастая ;)
pehat
22.10.2015 17:56+12Чего, увы, не могу сказать о Вас. Мой пол указан в профиле, дабы не происходило путаницы.
jah
23.10.2015 18:31+1Ренат, приношу свои извинения. Вы на маленькой аватарке кажетесь девушкой. Дело было вечером… Советовать сменить аватарку я не буду, но прошу понять ибо путаница произошла.
mtivkov
22.10.2015 18:01+5Если этот способ пойдет в массы, то инсталляторы подправят.
Если папка Name будет недоступна на запись, то инсталлятор будет использовать первую свободную папку с именем вида Name.N, например, Amigo.1.
alexsupra
23.10.2015 01:09+1rmdir c:\Users\%username%\AppData\Local\Mail.Ru /s /q
В варианте
rmdir "%localappdata%\mail.ru" /s /q
было более универсально для всех ОС Windows, начиная с NT 6.0 (Vista).
IIPu3PAK
23.10.2015 05:48Зачем весь этот геморой с созданием папок? не проще ли запретить запуск любых программ из папки c:\Users\%username%\AppData\Local? с помощью политики ограниченного использования программ, вот тут описано подробнее — habrahabr.ru/post/101971
shifttstas
23.10.2015 09:26тогда хром не встанет и много чего что устанавливается без админ привелегий
Inlore
23.10.2015 13:37Так ведь в этом и смысл — установка должна производиться только админом и разрешения на запуск выставляться им же
Zagrebelion
23.10.2015 13:45c:\program files\python34\python.exe -c «import os; os.system('c:\\users\\vasya\\chrome.exe')»
такой трюк «политики ограниченного использования» отловят?Inlore
23.10.2015 20:05Конечно нет. technet.microsoft.com/en-us/library/cc709689%28WS.10%29.aspx
Software restriction policies only restrict whether a program can be run from Windows Explorer, the Run command, a Command Prompt window, or Windows Script Host (wscript.exe). Programs started in other ways, such as by using perl.exe, cannot be restricted through software restriction policies.
omegicus
23.10.2015 09:39-5ЯндексБраузер-то за что? Я вот осознанно пользуюсь только Яндексом и Оперой. Хром не переношу + еще и небезопасно. А в яндексе хорошая интеграция с Я.Диском, а это уже точно единственный в своем роде продукт. гуглДиск и рядом не стоял.
kvaps
23.10.2015 10:13+3Можно поинтересоваться? -почему вы считаете использовать Яндекс браузер или Оперу безопаснее чем Google Chrome?
omegicus
23.10.2015 10:14-3исключительно потому что яндекс российский, а оперу по другой причине — просто удобнее.
Wernisag
23.10.2015 13:02+1Вас не тревожит тот факт, что Яндекс браузер целиком и полностью основан на Хроме? Не считая оформления, они практически одинаковы.
omegicus
23.10.2015 13:04-1это не так. движок браузера (который может очень сильно модифицироваться) — это не весь браузер.
ясное дело, что кроме blink\webkit и gecko других почти нету, но я далек от мысли, что Opera(new)\Yandex — это просто оформление.
режим Turbo, антиреклама встроенная, синхронизация с ЯндексДиском и т.п. — это разве копия хрома??tundrawolf_kiba
23.10.2015 14:34> движок браузера
Ну тут смотря что понимать под этим. Двжики рендеринга и Яваскрипта они юзают идентичные. А вот оболочку оба форкают от хромиума, гугл с небольшими изменениями, а Яндекс — с достаточно приличными.
omegicus
23.10.2015 13:11это приблизительно что, что говорить RedHat и Debian — одно и то же, нас же не смущает что они оба целиком и полностью на linux основаны?
Wernisag
23.10.2015 13:13Ну тогда уж не Debian, а CentOS. И в целом одно и тоже, только другой состав пакетов и уровень поддержки.
omegicus
23.10.2015 13:16Почему не Debian??? Ядро то одно…
CentOS — поздняя копия RedHat…
А ничего что RedHat достаточно сильно модифицирует ядро Linux? И набор драйверов намного шире???
Ну если это одно и то же, то с этой точки зрения конечно, Chrome тоже равен Ya.Browser
omegicus
23.10.2015 10:26+ кстати (по теме) в /app устанавливаются далеко не только мусорные программы и игры. Далеко не только.
onthefly
24.10.2015 02:10+1По доброй традиции хаба «Клиентская оптимизация» поинтересуюсь:
— автор, вам известно значение термина, давшего название упомянутому хабу?
— какое отношение этот топик имеет к предметной области, описываемой этим термином?
Ramires
Насколько я помню, папка «c:\Users\%username%\AppData\Local\Apps» нужна некоторым приложениям.
axeax
Ага, в основном это игры
Zagrebelion
а ещё софт, которые распространяется через clickonce.
fshp
А ещё туда и обычные приложения могут устанавливаться не из-под админа.
Delphinum
Ставим все нужные приложения, затем забираем у папки права на запись (не трогаем вложенные папки).
axeax
в AppData еще логи и кофиги пишутся, и нужные программы могут ругаться на это
fshp
Поэтому проще снести? А если лог в это время пишется? Винда, в отличие от *NIX, не позволяет удалять открытые файлы.