Приходит странный .exe в письме, скачали скрипт с форума, нужно проверить .bat - но лезть в боевую систему страшно? Windows уже давно предлагает удобные инструменты для таких задач: Windows Sandbox и Hyper-V.
Windows Sandbox - это изолированная среда, встроенная в Windows 10/11 Pro и Enterprise, запускаемая как обычное приложение. Каждая сессия создаёт чистую виртуальную Windows, которая полностью удаляется при закрытии. Идеально для тестирования вредоносных или сомнительных файлов.
Панель управления → Программы → Включение компонентов Windows → Windows Sandbox
– Не требует настройки
– Работает поверх Hyper-V
– Доступ к сети (опционально)
– Поддержка копипаста между хостом и Sandbox
– Можно запускать EXE, MSI, BAT, PowerShell-файлы
– Всё, что вы сделали, исчезает после выхода из песочницы
Пример: получили подозрительный .exe? Копируете его в Sandbox, запускаете и смотрите поведение - система хоста в полной безопасности.
Можно создавать .wsb-файлы для кастомных сессий. Пример конфигурации:
<Configuration>
<MappedFolders>
<MappedFolder>
<HostFolder>C:\test</HostFolder>
<ReadOnly>true</ReadOnly>
</MappedFolder>
</MappedFolders>
<Networking>Disable</Networking>
<LogonCommand>
<Command>explorer.exe</Command>
</LogonCommand>
</Configuration>
Hyper-V - полноценная система виртуализации. Позволяет запускать полноценные виртуалки с Windows или Linux, делать снапшоты, настраивать сеть, симулировать заражения. Подходит для постоянных стендов, C2-серверов, песочниц под малварь.
#windows #security
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20
Скачивание ISO-образов Windows с неофициальных источников может привести к установке модифицированных версий с вредоносным ПО. Для обеспечения безопасности рекомендуется проверять контрольные суммы файлов.
Get-FileHash "C:\Path\to\your\file.iso" -Algorithm SHA256
По умолчанию используется алгоритм SHA256, но можно указать другие: SHA1, SHA384, SHA512, MD5.
certutil -hashfile "C:\Path\to\your\file.iso" SHA256
1. На сайте Visual Studio Downloads (требуется учетная запись Microsoft).
2. На ресурсе RG-Adguard, где можно искать по хешу.
$expectedHash = "c90a6df8997bf49e56b9673982f3e80745058723a707aef8f22998ae6479597d"
(Get-FileHash "C:\Path\to\your\file.iso" -Algorithm SHA256).Hash -eq $expectedHash
Если результат True, файл подлинный; если False - файл может быть поврежден или подделан.
#windows #security
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤2
Когда вы скачиваете файл из браузера, а потом открываете его свойства, Windows может предупредить: «Файл получен с другого компьютера и может быть небезопасным». Это происходит не случайно.
Файл, скачанный на NTFS-диск, получает специальную метку в альтернативном потоке данных (Alternate Data Stream, ADS) с именем Zone.Identifier. Эта метка добавляется браузером автоматически и никак не зависит от расширения — она будет даже у mp3, .txt или .jpg.
Get-Content -Path ".\hard_rock.mp3" -Stream Zone.Identifier
Или в Блокноте:
notepad.exe hard_rock.mp3:Zone.Identifier
[ZoneTransfer]
ZoneId=3
ReferrerUrl=https://ya.ru
HostUrl=https://ya.ru/file.mp3
0 - Мой компьютер
1 - Локальная интрасеть
2 - Доверенные сайты
3 - Интернет (по умолчанию для всего, что скачано)
4 - Ограниченные сайты
Даже если вы переименуете файл или перенесёте его, метка сохраняется. Некоторые антивирусы и скрипты используют эту информацию для усиленной проверки.
1. Через свойства файла → Разблокировать
2. Через PowerShell:
Unblock-File .\hard_rock.mp3
#windows #security
Please open Telegram to view this post
VIEW IN TELEGRAM
👍25🔥7🤔3❤1
Удалённое управление принтерами через PowerShell
Во многих случаях для установки или настройки принтера у пользователя нет необходимости заходить через RDP. Все операции можно выполнить удалённо через PowerShell, что удобно и быстро.
Разберем пример пошаговой настройки сетевого принтера:
1️⃣ Подключение к удалённому ПК:
2️⃣ Установка драйвера в хранилище Windows:
pnputil добавляет драйвер в систему, используя .inf файл. Путь может быть сетевым.
3️⃣ Установка драйвера печати:
4️⃣ Создание TCP/IP порта для принтера:
5️⃣ Добавление самого принтера:
Все это можно выполнить вручную или автоматизировать через сценарии - особенно удобно при массовом развёртывании принтеров или переездах.
#windows #printer
🧑💻 NetworkAdmin
Во многих случаях для установки или настройки принтера у пользователя нет необходимости заходить через RDP. Все операции можно выполнить удалённо через PowerShell, что удобно и быстро.
Разберем пример пошаговой настройки сетевого принтера:
Enter-PSSession -ComputerName Comp1
pnputil.exe -i -a "\\server1\drivers\KYOCERA\OEMsetup.inf"
pnputil добавляет драйвер в систему, используя .inf файл. Путь может быть сетевым.
Add-PrinterDriver -Name "Kyocera Classic Universaldriver PCL6"
Add-PrinterPort -Name "IP_192.168.10.26" -PrinterHostAddress "192.168.10.26"
Add-Printer -Name "Ricoh IM 2702" `
-DriverName "Kyocera Classic Universaldriver PCL6" `
-PortName "IP_192.168.10.26" -Verbose
Все это можно выполнить вручную или автоматизировать через сценарии - особенно удобно при массовом развёртывании принтеров или переездах.
#windows #printer
Please open Telegram to view this post
VIEW IN TELEGRAM
👍25
Несколько раз сталкивался с неприятной проблемой: при наборе или вставке текста в PowerShell внезапно "пропадают" заглавные буквы. Особенно заметно, если набираете команды в кириллической раскладке - PowerShell просто не реагирует на Shift.
Проблема возникает из-за сбоя в модуле PSReadLine, который отвечает за подсветку, автодополнение, историю команд и другие удобства в CLI.
# Проверим установленную версию
Get-Module | Where-Object Name -eq "PSReadLine" | Select-Object Name, Path
# Удалим старую версию
Remove-Module PSReadLine
Remove-Item "C:\Program Files\WindowsPowerShell\Modules\PSReadLine\*" -Recurse -Force
# Установим последнюю версию из PSGallery
Install-Module PSReadLine -Force
Модуль будет установлен в актуальной версии, и проблема с заглавными буквами исчезнет. После установки перезапустите PowerShell.
#powershell #windows
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16❤1😁1
Начиная с версии Windows 10 1809, Microsoft отключила автоматическое создание бэкапов реестра - якобы ради экономии места (всего 100–200 МБ). Но вместе с этой "оптимизацией" пользователи лишились простого способа восстановить систему, заменив повреждённые файлы реестра на рабочие копии из RegBack.
Хотя используется эта функция нечасто, иметь резервную копию всегда лучше, чем её отсутствие.
Создайте параметр EnablePeriodicBackup в реестре:
reg add "HKLM\System\CurrentControlSet\Control\Session Manager\Configuration Manager" /v EnablePeriodicBackup /t REG_DWORD /d 1 /f
Теперь задание планировщика RegIdleBackup будет выполняться в рамках автоматического обслуживания системы (раз в сутки), и сохранять резервные копии реестра в папку:
%windir%\System32\config\RegBack
Start-ScheduledTask -TaskName "RegIdleBackup"
#windows #registry
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16
Большинство современных ноутбуков и ПК с предустановленной Windows содержат вшитый в BIOS/UEFI OEM-ключ, который автоматически активирует систему при установке. Удобно, но не всегда.
Раньше (в эпоху win 7) использовалась SLIC-таблица в BIOS, где хранился сертификат и ключ активации. Сейчас производители используют OEM embedded key, записанный прямо в прошивку UEFI. При установке Windows установщик считывает этот ключ и автоматически выбирает редакцию, например - home.
ei.cfg.Путь:
X:\sources\ei.cfg
Содержимое файла:
[EditionID]
[Channel]
Retail
После этого при запуске установки появится меню выбора редакции, и вы сможете установить нужную версию Windows, независимо от OEM-ключа в BIOS.
#Windows #UEFI
Please open Telegram to view this post
VIEW IN TELEGRAM
👍33
Когда windows начинает тормозить, а «диспетчер задач» мало что говорит - на помощь приходят sysinternals tools. Это набор от microsoft, разработанный ещё Марком Руссиновичем, и он до сих пор незаменим для администраторов.
Ключевые инструменты, которые реально помогают увидеть и устранить узкие места в системе:
du -q -l 1 C:\Users\admin
Все утилиты можно использовать без установки, просто скачать и запускать по мере надобности. А некоторые - использовать прямо из PowerShell, если положить их в %PATH%.
#windows #sysinternals
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16👎2❤1
WinRE - это встроенная среда восстановления для windows, которая запускается при проблемах с загрузкой системы или вручную через установочный носитель/средства восстановления. Обычно ее используют для диагностики и восстановления, но среду можно адаптировать под собственные задачи.
reagentc /info
Если среда отключена, включаем ее:
reagentc /enable
Winre.wim (обычно на скрытом разделе Recovery или в C:\Recovery\WindowsRE). Создаем рабочую директорию и монтируем образ:
mkdir C:\WinRE_Mount
dism /mount-image /imagefile:C:\Recovery\WindowsRE\Winre.wim /index:1 /mountdir:C:\WinRE_Mount
Внутри смонтированного образа можно:
dism /image:C:\WinRE_Mount /add-driver /driver:C:\Drivers\ /recurse
dism /image:C:\WinRE_Mount /add-package /packagepath:C:\Updates\update.cab
После внесенных изменений сохраняем:
dism /unmount-image /mountdir:C:\WinRE_Mount /commit
#windows #winRE
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13❤1
Иногда нужно быстро передать файлы по сети, без заморочек с настройкой SMB или FTP. Для этого есть два простых инструмента - один для linux, другой для windows.
В современных дистрибутивах Python уже установлен, так что все сводится к одной команде:
cd /var/log
python3 -m http.server 8181
Открываем браузер, заходим на IP-адрес сервера с портом 8181 и сразу видим содержимое директории.
Файлы скачали - сервер остановили. Удобно и быстро.
Для Windows есть проверенное решение - HFS.
Это небольшой исполняемый файл, который работает на любой версии windows, включая 11. Скачали → запустили → открыли в браузере IP машины.
HFS позволяет публиковать как целые директории, так и отдельные файлы, просто перетащив их в окно программы. В отличие от SMB, который постоянно требует возни с версиями протокола и учетками, HFS работает «из коробки».
▪️ Дополнительные возможности HFS:📍 аутентификация пользователей;📍 логирование;📍 кастомизация внешнего вида через HTML-шаблоны;📍 контроль пропускной способности;📍 работа в фоне.
Программа бесплатна и с открытым исходным кодом.
#linux #windows #tools
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13❤1
Админы, привыкшие к bash и linux, часто недооценивают powershell. А зря - это также неплохая оболочка, которая умеет не только выполнять команды, но и работать с объектами, сервисами и API windows. Ниже несколько полезных сценариев, которые пригодятся, если админите и linux, и windows.
# Процессы по имени
Get-Process | Where-Object { $_.ProcessName -like "*chrome*" }
# Открытые TCP-порты
Get-NetTCPConnection | Where-Object { $_.State -eq "Listen" }
# Найти все *.log файлы и удалить старше 7 дней
Get-ChildItem -Path "C:\Logs" -Filter *.log -Recurse |
Where-Object { $_.LastWriteTime -lt (Get-Date).AddDays(-7) } |
Remove-Item -Force
$hosts = "8.8.8.8","1.1.1.1","networkadmin.ru"
foreach ($h in $hosts) {
Test-Connection -ComputerName $h -Count 2 -Quiet |
ForEach-Object { "$h -> $($_ -replace 'True','OK' -replace 'False','Fail')" }
}
# Проверить статус службы
Get-Service -Name "Spooler"
# Перезапустить службу
Restart-Service -Name "Spooler"
Invoke-RestMethod -Uri "https://api.ipify.org?format=json"
# Системная информация
Get-ComputerInfo | Select-Object CsName, WindowsVersion, OsArchitecture
# Диски
Get-PSDrive -PSProvider FileSystem
#powershell #windows
Please open Telegram to view this post
VIEW IN TELEGRAM
❤13👍2🔥2
Если вы хотите получить максимально легкий и чистый образ windows 11 - без мусора, предустановленных приложений и ненужных сервисов, то обратите внимание на nano11.
Это PowerShell-скрипт, который автоматизирует процесс сборки сильно урезанной версии Windows 11. Он использует встроенные средства DISM и oscdimg.exe, не требуя никаких внешних утилит. В результате получается компактный ISO-образ, идеально подходящий для тестирования, отладки или развертывания на виртуальных машинах.
Создает минимальный ISO-образ Windows 11
Удаляет все предустановленные приложения и лишние компоненты
Не поддерживает обновления и добавление языков (только базовая сборка)
Подходит для VM и изолированных окружений
Полностью открытый исходный код, можно модифицировать под свои задачи
Репозиторий проекта
#windows #powershell
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤7🔥3
PowerShell - это не просто консоль, а полноценная среда для удаленного администрирования. Один из ее инструментов - PowerShell Remoting, позволяющий выполнять команды и скрипты на других windows серверах (и даже на linux) почти так же, как по SSH.
PowerShell Remoting - это механизм, основанный на WinRM (Windows Remote Management), который реализует стандарт WS-Management.
Он позволяет запускать команды, выполнять скрипты и даже открывать интерактивную сессию на удаленной машине.
По сути, это SSH для windows, встроенный в систему начиная с windows 7 / server 2008 R2.
Enable-PSRemoting -Force
Эта команда:
Включает службу WinRM,
Настраивает слушатель HTTP (порт 5985) и HTTPS (порт 5986),
Добавляет правила в брандмауэр.
Проверяем статус:
Get-Service WinRM
Подключиться можно тремя способами:
1. Выполнить одиночную команду:
Invoke-Command -ComputerName server01 -ScriptBlock { Get-Service }
2. Открыть интерактивную сессию:
Enter-PSSession -ComputerName server01
(аналог ssh user@server)
3. Создать постоянную сессию и использовать её повторно:
$session = New-PSSession -ComputerName server01
Invoke-Command -Session $session -ScriptBlock { Get-Process }
Remove-PSSession $session
Если хотите шифровать трафик, то настройте HTTPS-сессию (WinRM через TLS).
А начиная с PowerShell 7, можно использовать нативный SSH-транспорт:
Enter-PSSession -HostName server01 -UserName admin
Теперь PowerShell работает поверх SSH - удобно, безопасно и кроссплатформенно.
Массовый перезапуск служб:
Invoke-Command -ComputerName (Get-Content servers.txt) -ScriptBlock { Restart-Service spooler }
Сбор информации о дисках или обновлениях на всех серверах:
Invoke-Command -ComputerName * -ScriptBlock { Get-HotFix }
Запуск скриптов администрирования без входа по RDP.
Для доменной инфраструктуры remoting работает из коробки.
Для рабочих групп используйте Enable-PSRemoting + Set-Item WSMan:\localhost\Client\TrustedHosts *.
На проде лучше ограничить доступ с помощью HTTPS, Kerberos или SSH.
#powershell #windows
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤1
На GitHub есть готовый способ запустить windows прямо в контейнере docker, без ручной настройки виртуалок. Все автоматизировано и работает поверх KVM. Ссылка: https://github.com/dockur/windows
Разворачивать все на виртуальной машине с включенной вложенной виртуализацией. Выставляется тип процессора в host и на этом все. Дальше - стандартный старт:
git clone https://github.com/dockur/windows
cd windows
docker compose up
Контейнер создался и попытался загрузить образ windows 11. Но тут ошибка: microsoft заблокировала скачивание ISO с моего IP. Выход есть - можно скачать ISO вручную и передать контейнеру, но можно и проще: переключить версию на windows 10.
docker-compose.yml достаточно задать переменную окружения:
version: "3"
services:
windows:
environment:
VERSION: "win10"
После этого запускаем снова:
docker compose up
Контейнер скачивает ISO Windows 10, разворачивает его и устанавливает систему в автоматическом режиме. Через 30 минут будет готовая, неактивированная, но полностью легальная Windows.
http://<ip_сервера>:8006
После установки доступ к системе:
через браузер (встроенный VNC),
или по RDP (пользователь docker, пароль — пустой).
2 CPU
4 GB RAM
64 GB диска
Все параметры можно менять в environment. Важно следить за свободным местом!
Не нужно вручную поднимать виртуалки, скачивать ISO или прописывать драйверы. Просто запускаете контейнер и получаете готовую Windows, работающую поверх KVM. Docker тут используется не ради контейнеризации, а ради автоматизации всего процесса.
#docker #windows
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍17🔥3🗿1
Для администраторов windows есть небольшой, очень быстрый и почти олдовейший по духу инструмент - Terminal Services Manager от LizardSystems. Размер всего ~4 МБ, работает мгновенно, интерфейс простой и предельно функциональный. Изначально утилиту делали для терминальных серверов, но по факту она отлично подходит для любой Windows-машины: от серверов до обычных рабочих станций.
Программа платная, но условно. Для персонального использования доступна полностью бесплатная версия без ограничений.
- Просмотр всех подключённых пользователей
- Видно, кто активен, кто в состоянии Disconnected
- Подключение к пользовательской сессии
- Принудительный logout или завершение всех сессий
- Отправка сообщений прямо в их RDP-сессии
- Быстрый просмотр нагрузки CPU, RAM, диска
- Просмотр процессов на удалённой машине
- Завершение зависших приложений
- Видно процессы по пользователям
- Перезагрузка и выключение удалённых серверов
- Очистка профилей пользователей
- Быстрое включение/отключение RDP-доступа
Если вы часто управляете RDP-серверами, разгребаете зависшие сессии, мониторите пользователей, то эта утилита сильно экономит время.
#windows #RDP
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8
Встроенный брандмауэр windows по умолчанию не пишет логи о входящих и исходящих соединениях, которые он блокирует. Из-за этого сложно понять, кто виноват: само приложение, сеть или firewall. Многие в такой ситуации просто отключают защиту целиком, но это плохая практика.
Куда правильнее включить логирование DROP-пакетов, посмотреть, что именно блокируется (порт, IP, протокол), и уже после этого создать точечное правило.
Set-NetFireWallProfile -Profile Public `
-LogBlocked True `
-LogMaxSize 20480 `
-LogFileName "%systemroot%\system32\LogFiles\Firewall\pfirewall.log" `
-Verbose
После включения логи будут появляться в файле
pfirewall.log. В них видно источник, порт, направление и действие (DROP/ALLOW).
Auditpol /set /category:"System" /SubCategory:"Filtering Platform Packet Drop" /failure:enable
После этого записи о блокировках появятся в:
Event Viewer → Windows Logs → Security#windows #firewall
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19❤2
Если вам нужно, чтобы пользователи запускали через RDP не целый рабочий стол, а только определенное приложение, то для этого подойдет режим RemoteApp. Он чаще ассоциируется с серверами windows, но его реально настроить и на обычной win 10/11.
1. Включить RDP-доступ.
2. Установить нужное приложение и добавить пользователя в группу Remote Desktop Users или дать право через политику безопасности.
3. Разрешить запуск неопубликованных программ как RemoteApp: либо через групповые политики, либо через реестр:
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services" /v fAllowUnlistedRemotePrograms /t REG_DWORD /d 1
Перезагрузить компьютер.
Если хотите ограничить список доступных приложений, то создайте запись в реестре:
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Terminal Server\TSAppAllowList\Applications\<AppName> с указанием пути, иконки и имени. Открываете стандартный RDP-клиент (
mstsc.exe) и настраиваете подключение, затем сохраняете его как файл .RDP. Открываете .RDP в текстовом редакторе и добавляете в конец:
remoteapplicationmode:i:1
RemoteApplicationName:s:Имя_окна
RemoteApplicationProgram:s:"C:\path\to\app.exe"
DisableRemoteAppCheck:i:1
PromptForCredentials:i:0
alternate shell:s:rdpinit.exe
При запуске этого файла на клиенте откроется только окно указанного приложения так, словно оно запускается локально.
Если нужно передать аргументы запуска, можно добавить строку
RemoteApplicationCmdLine:s:....Хотя RemoteApp официально поддерживается на серверах с ролью RDS, этот способ работает и на win 10/11.
При работе через RemoteApp запускается только окно приложения, рабочий стол пользователя остается недоступен. Это удобно, если нужно предоставить доступ к одной программе, не раскрывая систему целиком.
Для работы может потребоваться RDP Wrapper или другие обходы, если Windows пытается ограничить одновременные сеансы.
#windows #remoteapp
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18🔥7