В данной статье представлен скрипт шифрования скриптов. Данное шифрование позволит скрыть от ненужных глаз данные, используемые в скриптах (например логины и пароли электронной почты).
Данный скрипт я использовал в одном небольшом проекте, чтобы скрыть от глаз обычного пользователя логин и пароль от почтового ящика, который использовал скрипт для отправки на сервер команды для сброса терминальной сессии. Отдельно этот небольшой минипроект будет выложен позднее.
Сам скрипт шифрования. Поддерживает как vbs, так и js скрипты. Хотя в интернете есть указание, что данный скрипт может и hta шифровать, но я не добавлял поддержку hta в свой скрипт, так как им не пользуюсь.
Ещё один момент. Сам скрипт не надо запускать для шифрования. Шифрование происходит методом натаскивания скрипта на этот скрипт шифрования EncodeScript.vbs:
Option Explicit
dim oEncoder, oFilesToEncode, file, sDest
dim sFileOut, oFile, oEncFile, oFSO, i
dim oStream, sSourceFile
dim ext, ext2, point
set oFilesToEncode = WScript.Arguments
set oEncoder = CreateObject("Scripting.Encoder")
For i = 0 to oFilesToEncode.Count - 1
set oFSO = CreateObject("Scripting.FileSystemObject")
file = oFilesToEncode(i)
'msgbox(file)
point = instr(file,".")
'msgbox(point)
If point Then
ext = lcase(mid(file, point + 1))
if ext = "vbs" Then ext2 = "vbe"
if ext = "js" Then ext2 = "jse"
End if
'msgbox(ext & " " & ext2)
set oFile = oFSO.GetFile(file)
Set oStream = oFile.OpenAsTextStream(1)
sSourceFile=oStream.ReadAll
oStream.Close
sDest = oEncoder.EncodeScriptFile("." & ext, sSourceFile, 0, "")
'sFileOut = Left(file, Len(file) - 3) & "vbe"
sFileOut = Left(file, Point) & ext2
msgbox(sFileOut)
Set oEncFile = oFSO.CreateTextFile(sFileOut)
oEncFile.Write sDest
oEncFile.Close
Next
|