Ejemplo n.º 1
0
def sample(p):
    if request.method == "POST":
        button = request.form['button']
        if button == "Return Home":
            return redirect(url_for("home"))
    project = database.getProject(session['user'],p)
    return render_template("sample.html", project=project)
Ejemplo n.º 2
0
def lambda_handler(event, context):
    print(event)
    try:
        projectId = event['pathParameters']['projectId']
        project = database.getProject(projectId)
        return response_formatter.formatSuccessfulResponse(project)

    except Exception as e:
        error_handler.handleError(e)
Ejemplo n.º 3
0
def creator2(prname):
    user = session['user']
    if request.method == "POST":
        button = request.form['button']
        if button == "Save":
            pname = prname
            user = session["user"]
            html =  request.form["pagehtml"]
            database.addProject(user,pname,html)
            return redirect(url_for("creator2",prname=prname))
        if button == "Return to Homepage":
            return redirect(url_for("home"))
        if button == "Publish to Public Projects":
            pname = prname
            user = session['user']
            html = request.form["pagehtml"]
            database.addPublicProject(user,pname,html)
        if button == "Find User":
            pname = prname
            use = session["user"]
            tar = request.form["colabname"]
            if database.nameInSys(tar) == 0:
                tar = "ERR0RZ"
                html = database.getProject(use,pname)
            else:
                html = database.getProject(use,pname)
                database.makeCollab(use,pname,tar)
                database.addProject(tar,pname,html)
                database.makeCollab(tar,pname,use)
            return render_template("creator.html",p=html,colab=[tar,pname])
        if button == str(database.whoCollab(session['user'],prname)):
            use = session["user"]
            pname = prname
            database.stopCollab(use,pname)
    project = database.getProject(user,prname)
    if database.isCollab(user,prname):
        return render_template("creator.html",p=project,colab=[database.whoCollab(user,prname),prname])
    return render_template("creator.html",p=project)
Ejemplo n.º 4
0
def lambda_handler(event, context):
    print(event)
    message = json.loads(event['Records'][0]["Sns"]["Message"])
    project_id = message['project_id']
    scan_id = message['scan_id']
    target_id = message['target_id']
    resource_id = message['resource_id']
    url = message['url']
    url_hash = hashlib.md5(url.encode('utf-8')).hexdigest()
    width = "1200"
    height = "1024"
    timeout = "5"

    try:
        cmd = [
            "./phantomjs/phantomjs_linux-x86_64", "--debug=yes",
            "--ignore-ssl-errors=true", "./phantomjs/screenshot.js", url,
            "/tmp/" + url_hash + ".png", width, height, timeout
        ]

        results = subprocess.Popen(cmd, stdout=subprocess.PIPE)
        print(results.stdout.read())
        thumbnail_path = create_thumbnail("/tmp/" + url_hash + ".png",
                                          url_hash)
        project_record = database.getProject(project_id)
        target_record = database.get_target_record(target_id)
        bucket = os.environ['CoreBucketRef']
        file_name = '/tmp/' + url_hash + ".png"
        key_name = url_hash + '.png'
        thumbnail_key_name = url_hash + '-320.png'
        target = target_record["host"] if target_record[
            "host"] else target_record["ip"]
        obj_path = "{0}/{1}/{2}/{3}".format(
            project_record["name"], target,
            urlparse(url).path.rstrip('/').strip('/'), key_name)
        thumbnail_obj_path = "{0}/{1}/{2}/{3}".format(
            project_record["name"], target,
            urlparse(url).path.rstrip('/').strip('/'), thumbnail_key_name)
        s3 = boto3.client('s3')
        print(os.listdir('/tmp'))
        print(file_name)
        s3.upload_file(file_name, bucket, obj_path)
        s3.upload_file(thumbnail_path, bucket, thumbnail_obj_path)

        database.create_screenshot_record(project_id, scan_id, target_id,
                                          resource_id, obj_path,
                                          thumbnail_obj_path)

    except Exception as e:
        error_handler.handleError(e)
Ejemplo n.º 5
0
def creator3(usname,prname):
    user = usname
    if request.method == "POST":
        button = request.form['button']
        if button == "Save":
            pname = prname
            use = session["user"]
            return redirect(url_for("creator2",prname=prname))
        if button == "Return to Homepage":
            return redirect(url_for("home"))
        if button == "Publish to Public Projects":
            pname = prname
            use = session['user']
            html = request.form["pagehtml"]
            database.addPublicProject(use,pname,html)
    project = database.getProject(user,prname)
    return render_template("creator.html",p=project)