Beispiel #1
0
  def POST(self):
    i = web.input(file_upload={})
    if i["file_upload"] is None or i["file_upload"] == "":
      return render.error("No file uploaded or invalid file.")

    buf = i["file_upload"].value
    filename = i["file_upload"].filename

    # Scan the file
    av = CMultiAV()
    ret = av.scan_buffer(buf)

    # Calculate the hashes
    hashes = []
    hashes.append(md5(buf).hexdigest())
    hashes.append(sha1(buf).hexdigest())
    hashes.append(sha256(buf).hexdigest())

    # Save the sample
    db_api = CDbSamples()
    db_api.insert_sample(filename, buf, ret)

    # And show the results
    render = web.template.render(TEMPLATE_PATH)
    return render.results(ret, filename, hashes)
Beispiel #2
0
  def POST(self):
    i = web.input(file_upload={})
    if "file_upload" not in i or i["file_upload"] is None or i["file_upload"] == "":
      return '{"error": "No file uploaded or invalid file."}'

    buf = i["file_upload"].value
    filename = i["file_upload"].filename

    # Scan the file
    av = CMultiAV()
    report = av.scan_buffer(buf)

    db_api = CDbSamples()
    db_api.insert_sample(filename, buf, report)
    return json.dumps(report)
Beispiel #3
0
  def POST(self):
    i = web.input(file_upload={}, speed=AV_SPEED_ULTRA)
    if i["file_upload"] is None or i["file_upload"] == "":
      return "{'error':'No file uploaded or invalid file.'}"

    speed = int(i["speed"])
    buf = i["file_upload"].value
    filename = i["file_upload"].filename

    # Scan the file
    av = CMultiAV()
    report = av.scan_buffer(buf, speed)

    db_api = CDbSamples()
    db_api.insert_sample(filename, buf, report)

    return json.dumps(report)