View.py 文件源码

python
阅读 30 收藏 0 点赞 0 评论 0

项目:ysrc 作者: myDreamShadow 项目源码 文件源码
def AddPlugin():
    result = 'fail'
    if request.referrer and request.referrer.replace('http://', '').split('/')[0] == request.host:
        f = request.files['file']
        if f:
            fname = secure_filename(f.filename)
            if fname.split('.')[-1] == 'py':
                path = file_path + fname
                if os.path.exists(file_path + fname):
                    fname = fname.split('.')[0] + '_' + datetime.now().strftime("%Y%m%d%H%M%S") + '.py'
                    path = file_path + fname
                f.save(path)
                if os.path.exists(path):
                    file_name = fname.split('.')[0]
                    module = __import__(file_name)
                    mark_json = module.get_plugin_info()
                    mark_json['filename'] = file_name
                    mark_json['add_time'] = datetime.now()
                    mark_json['count'] = 0
                    if 'source' not in mark_json:
                        mark_json['source'] = 0
                    insert_result = Mongo.coll['Plugin'].insert(mark_json)
                    if insert_result:
                        result = 'success'

        else:
            name = request.form.get('name', '')
            info = request.form.get('info', '')
            author = request.form.get('author', '')
            level = request.form.get('level', '')
            type = request.form.get('vultype', '')
            keyword = request.form.get('keyword', '')
            pluginurl = request.form.get('pluginurl', '')
            methodurl = request.form.get('methodurl', '')
            pdata = request.form.get('pdata', '')
            analyzing = request.form.get('analyzing', '')
            analyzingdata = request.form.get('analyzingdata', '')
            tag = request.form.get('tag', '')
            try:
                query = {'name': name, 'info': info, 'level': level, 'type': type, 'author': author, 'url': pluginurl,
                         'keyword': keyword, 'source': 0}
                query['plugin'] = {'method': methodurl.split(' ', 1)[0], 'url': methodurl.split(' ', 1)[1],
                                   'analyzing': analyzing, 'analyzingdata': analyzingdata, 'data': pdata, 'tag': tag}
                file_name = secure_filename(name) + '_' + datetime.now().strftime("%Y%m%d%H%M%S") + ".json"
                with open(file_path + file_name, 'wb') as wt:
                    wt.writelines(json.dumps(query))
                query.pop('plugin')
                query['add_time'] = datetime.now()
                query['count'] = 0
                query['filename'] = file_name
                insert_result = Mongo.coll['Plugin'].insert(query)
                if insert_result:
                    result = 'success'
            except:
                pass
    return result


# ??????
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号