Показать полную графическую версию : Тихий запуск скрипта, полученного по https
Здравствуйте.
Есть подсеть, из которой закрыты smb-ресурсы. Скрипт размещен на внутреннем https сервере.
Задача нужно под пользователями запустить VBS скрипт. Все клиенты W10 19042/19043. Запуск PS под пользователем запрещен.
Использовать внешние утилиты, которые бы скрывали черное окно нельзя (ИБ).
Реализовал через планировщик нужные тригеры. В качестве команды запуска
cmd.exe с аргументами "/c curl.exe --url https://server.domain.local/scripts/Settings/gl-usr-MessagePassword/gl-usr-ChangePassMessage.vbs --output %temp%\chpass\gl-usr-ChangePassMessage.vbs & wscript.exe %temp%\chpass\gl-usr-ChangePassMessage.vbs" (через cmd вызываем curl, который "тихо" скачивает скрипт в нужную папку и потом запускаем его).
Curl нативный и поэтому его использовать можно. Все работает, но появляется черное окно, которого пугаются пользователи.
Долго читал документацию по wscript и cscript. Как я понял нельзя их запустить и им на вход передать команды, которые бы или скачали скрипт или "тихо" запусти curl. Поправьте меня если я не прав.
Нужна помощь: как можно, используя нативные утилиты W10 скачать скрипт и запустить его "тихо".
Пока получилось добиться моргание черного окна и запуск окна cmd свернутым
cmd.exe /c start /min cmd /c "curl.exe --silent --url https://whq-fs-app.sovcombank.group/scripts/OCPRIS/Settings/gl-usr-MessagePassword/gl-usr-ChangePassMessage.vbs --output %temp%\gl-usr-ChangePassMessage.vbs & wscript.exe %temp%\gl-usr-ChangePassMessage.vbs"
Serguei Kouzmine
21-06-2022, 16:48
плохо тому живется наверное кого в гугле забанили ?
плохо тому живется наверное кого в гугле забанили ? »
VBS не совсем мой профиль, поэтому гуглил и достаточно долго, но если у вас есть идея по реализации - буду рад помощи.
Serguei Kouzmine
21-06-2022, 18:24
Download a file with VBS
https://stackoverflow.com/questions/2973136/download-a-file-with-vbs
с https://www.wikipedia.org/portal/wikipedia.org/assets/img/Wikipedia-logo-v2.png работает
Наверно я не совсем понятно описал ТЗ.
Нужно через планировщик запустить команду, которая бы скачала бы с https VBS-скрипт и запустила его без создания дополнительных окон.
Если запускать cmd команду - создаются дополнительные окна. PS, не нативные утилиты ОС запрещены (ИБ).
Про то, что можно VBS-скриптом скачать файл я знаю, НО!!! как запустить этот VBS скрипт, если находится не на сетевом ресурсе (SMB), а на HTTPS сервере?
Если бы был разрешен PS я бы сделал через команду
powershell.exe -Command "& {Invoke-WebRequest -Uri 'https://server.domail.local/script.ps1' -OutFile C:\temp\script.ps1; & C:\temp\script.ps1}"
Но как я понял из документации wscript и cscript нельзя вызвать и передать им на вход набор команд. Они работают только со скриптами.
Если сделать
cmd.exe /c "echo WScript.Echo "Test" > c:\temp\test.vbs & wscript.exe c:\temp\test.vbs"
то это тоже создает черное окно cmd.
PS, не нативные утилиты ОС запрещены (ИБ). »
ИБ у вас своеобразная...
нативный PS запрещен, не нативные утилиты запрещены... а скачивание левых скриптов, для запуска нативным VBS, не запрещено... "железная логика" безопасности...
1. Если Вы админ, то, наверное, найдете способ запуска VBS без консольного окна... если иначе, то Вы работаете не на своем месте, уж извините за прямоту.
2. Если Вы пользователь, ищущий способ обхода запретов (ИБ), то правилами данного форума запрещено обсуждение взлома.
Но как я понял из документации wscript и cscript нельзя вызвать и передать им на вход набор команд. »
Вы неправильно поняли.
Подсказка:
WScript имя_сценария.расширение [параметры...] [аргументы...]
То бишь, после имени сценария могут указываться параметры/аргументы. Никто не мешает указать в качестве параметра/аргумента имя сценария CMD.
ИБ у вас своеобразная...
нативный PS запрещен, не нативные утилиты запрещены... а скачивание левых скриптов, для запуска нативным VBS, не запрещено... "железная логика" безопасности... »
"Правильные" скрипты по хешу добавлены в белый список. "Левые" скрипты блокируются средствами других приложений.
1. Если Вы админ, то, наверное, найдете способ запуска VBS без консольного окна... если иначе, то Вы работаете не на своем месте, уж извините за прямоту. »
VBS не мой профиль, я больше по PS.
VBS не мой профиль, я больше по PS. »
Ок. Описанный способ взломом не является, всего лишь скрывает окно cmd... остальное на Вашей совести.
Вариант 1:
Set oTmp=CreateObject("WScript.Shell")
oTmp.Run """" & WScript.Arguments(0) & """", 0, False
Далее, создаем ярлык с командой:
C:\Windows\System32\wscript.exe //nologo "hide.vbs" "run.bat"
и запускаем.
Вариант 2:
с помощью компиляции встроенным VB.NET
' Запуск программ в скрытом режиме, в том числе пакетных сценариев, указываются первым параметром
' пример: <hid.exe "z:\путь к программе\пуск.bat"> или если программа в одном каталоге: <hid.exe run.exe>
Module mainModule
Sub Main(ByVal Args() As String)
Dim oTmp As Object
Dim oStr As String = ""
if Args.Length > 0 Then
oTmp = CreateObject("WScript.Shell")
For Num As Integer = 2 To Args.Length
oStr = oStr & " " & """" & Args(Num-1) & """"
Next Num
oTmp.Run (Args(0) & oStr, 0, False)
Else
MsgBox ("Упс, Вы кажется забыли указать приложение! Для скрытого запуска приложения, выполните: hide.exe 'приложение.cmd'",MsgBoxStyle.Critical,"Это неправильно!")
End if
End Sub
End Module
Чтобы скомпилировать Windows-приложение, выполните команду (в зависимости от версии Framework, цифры могут быть другими, см. какая версия есть у вас) типа:
"C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\vbc.exe" "c:\temp\hide.vb" /out:"c:\temp\hide.exe" /target:winexe
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.