Exemplo n.º 1
0
def add_malware():
    tags = request.forms.get("tags")
    data = request.files.file
    info = File(file_path=store_sample(data.file.read()))

    db.add(obj=info, file_name=data.filename, tags=tags)

    return jsonize({"message" : "added"})
Exemplo n.º 2
0
def add_malware():
    tags = request.forms.get("tags")
    data = request.files.file
    info = File(file_path=store_sample(data.file.read()))

    db.add(obj=info, file_name=data.filename, tags=tags)

    return jsonize({"message": "added"})
Exemplo n.º 3
0
def add_malware(request):
    if request.method == 'POST':
        form = AddMalwareForm(request.POST, request.FILES)
        if form.is_valid():
            file_path = store_sample(request.FILES['file'].read())
            obj = File(file_path=file_path)
            tags = request.POST.get('tags')
            orig_url = request.POST.get('url')
            file_name = request.FILES['file'].name

        if isinstance(obj, File):
            malware_entry = malware(md5=obj.get_md5(),
                                    crc32=obj.get_crc32(),
                                    sha1=obj.get_sha1(),
                                    sha256=obj.get_sha256(),
                                    sha512=obj.get_sha512(),
                                    file_size=obj.get_size(),
                                    file_type=obj.get_type(),
                                    ssdeep=obj.get_ssdeep(),
                                    orig_url=orig_url,
                                    file_name=file_name)
        malware_entry.save()

        if store_encoded:
            encode_sample(file_path)
            delete_file(file_path)

        if tags:
            tags = tags.strip()
            if "," in tags:
                tags = tags.split(",")
            else:
                tags = tags.split(" ")

            for t in tags:
                t = t.strip().lower()
                if t == "":
                    continue

                if tag.objects.filter(tag=t).exists():
                    malware_entry.tags.add(tag.objects.get(tag=t))
                    continue

                malware_entry.tags.add(tag.objects.create(tag=t))

        return HttpResponse(
            jsonize({"message": file_name + " added to repository"}))

    else:
        return HttpResponse('METHOD not supported for URL')
Exemplo n.º 4
0
def add_malware(request):
    if request.method == 'POST':
        form = AddMalwareForm(request.POST, request.FILES)
        if form.is_valid():
            file_path=store_sample(request.FILES['file'].read())
            obj = File(file_path=file_path)
            tags = request.POST.get('tags')
            orig_url = request.POST.get('url')
            file_name = request.FILES['file'].name

        if isinstance(obj, File):
            malware_entry = malware(md5=obj.get_md5(),
                                    crc32=obj.get_crc32(),
                                    sha1=obj.get_sha1(),
                                    sha256=obj.get_sha256(),
                                    sha512=obj.get_sha512(),
                                    file_size=obj.get_size(),
                                    file_type=obj.get_type(),
                                    ssdeep=obj.get_ssdeep(),
                                    orig_url=orig_url,
                                    file_name=file_name)
        malware_entry.save()
        
        if store_encoded:
            encode_sample(file_path)
            delete_file(file_path)

        if tags:
            tags = tags.strip()
            if "," in tags:
                tags = tags.split(",")
            else:
                tags = tags.split(" ")

            for t in tags:
                t = t.strip().lower()
                if t == "":
                    continue
            
                if tag.objects.filter(tag=t).exists():
                    malware_entry.tags.add(tag.objects.get(tag=t))
                    continue

                malware_entry.tags.add(tag.objects.create(tag=t))

        return HttpResponse(jsonize({"message" : file_name + " added to repository"}))

    else:
        return HttpResponse('METHOD not supported for URL')
Exemplo n.º 5
0
Arquivo: api.py Projeto: mboman/vxcage
def add_malware():
    tags = request.forms.get("tags")
    data = request.files.file
    info = File(path=store_sample(data.file.read()))

    if tags:
        tags = tags.strip()
        if "," in tags:
            tags = tags.split(",")
        else:
            tags = tags.split(" ")
        try:
            tags.append("User:"******"message": "added"})