vbs 文件通过电子邮件

vbs 文件通过电子邮件

我有这个动态数据库文件。有人通过电子邮件发送给我。谁能告诉我这个文件有什么用?

dim M
M = "Chinese names"
S = ""
Dim N
n = 0
dim NN
NN = "ede"
do until n = Len(M)
n = n + 1
S = S & Chr(AscW(Mid(M, N, 1)) - &H9000 + len(NN))
loop
Execute S

答案1

第一条建议:

当你得到一些像这样的未知的 vbscript 文件时,首先不要执行它,直到你了解这个文件可以执行什么。

第二条建议:

如果你真的想展示它执行的内容,只需使用以下命令编辑它记事本或者记事本++并找到这个词Execute并用 替换它MsgBox以了解该脚本可以做什么!

我纠正了错误,并添加了一个函数将代码写入文本文件,然后你会得到一些像这样的中文字符(unicode):

灆火灬灱灨灶灨瀣灱灤灰灨灶

'************************************Added by Hackoo************************************
Set fso = CreateObject("Scripting.FileSystemObject")
Set ws = CreateObject("WScript.Shell")
LogFile = Left(Wscript.ScriptFullName, InstrRev(Wscript.ScriptFullName, ".")) & "txt"
If fso.FileExists(LogFile) Then
    fso.DeleteFile(LogFile)
End If
'****************************************************************************************
dim M
M = "Chinese names"
S = ""
Dim N
n = 0
dim NN
NN = "ede"
do until n = Len(M)
n = n + 1
S = S & ChrW(AscW(Mid(M, N, 1)) - &H9000 + len(NN))
loop
'Just to popup a msgbox to show the chinese character in unicode instead of using Execute
Msgbox S
'Write the contents of the variable S into a text file
Call WriteLog(S,LogFile)
'To open the LogFile with notepad
ws.run LogFile
'************************************Added by Hackoo************************************
'Function to write into text file with unicode
Sub WriteLog(strText,LogFile)
    Dim fso,ts 
    Const ForAppending = 8
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set ts = fso.OpenTextFile(LogFile,ForAppending,True,-1)
    ts.WriteLine strText
    ts.Close
End Sub
'*****************************************************************************************

答案2

我不确定它是否真的做了什么,但它的意图肯定看起来不太可靠。它会构建一个 14 个字符长的字符串,其中包含看起来像是包含二进制字符的内容,然后最终执行该字符串。我不知道这会做什么,但我不会在自己的机器上尝试。

但是我认为它有错误。我的 VBS 技能相当老旧,肯定不是最新的,但我不认为有 AscW 函数 - Asc 是,但在 VBS 中,这无论如何都是一个宽字符函数。

如果是朋友发给你的,我会认为这是一种拙劣的幽默。

相关内容