コード例 #1
0
ファイル: routes.py プロジェクト: marciopocebon/natlas
def host_history(ip):
    info, context = hostinfo(ip)
    page = int(request.args.get('p', 1))
    searchOffset = current_user.results_per_page * (page - 1)

    delHostForm = DeleteForm()
    rescanForm = RescanForm()

    count, context = current_app.elastic.get_host_history(
        ip, current_user.results_per_page, searchOffset)
    if count == 0:
        abort(404)
    next_url = url_for('host.host_history', ip=ip, p=page + 1) \
     if count > page * current_user.results_per_page else None
    prev_url = url_for('host.host_history', ip=ip, p=page - 1) \
     if page > 1 else None

    # TODO Hardcoding the version here is bad. Revisit this.
    return render_template("host/versions/0.6.5/history.html",
                           ip=ip,
                           info=info,
                           page=page,
                           numresults=count,
                           hosts=context,
                           next_url=next_url,
                           prev_url=prev_url,
                           delHostForm=delHostForm,
                           rescanForm=rescanForm)
コード例 #2
0
ファイル: routes.py プロジェクト: marciopocebon/natlas
def host_screenshots(ip):
    page = int(request.args.get('p', 1))
    searchOffset = current_user.results_per_page * (page - 1)

    delHostForm = DeleteForm()
    rescanForm = RescanForm()
    info, context = hostinfo(ip)
    total_entries, screenshots = current_app.elastic.get_host_screenshots(
        ip, current_user.results_per_page, searchOffset)

    next_url = url_for('host.host_screenshots', ip=ip, p=page + 1) \
     if total_entries > page * current_user.results_per_page else None
    prev_url = url_for('host.host_screenshots', ip=ip, p=page - 1) \
     if page > 1 else None

    version = determine_data_version(context)
    template_str = f"host/versions/{version}/screenshots.html"
    return render_template(template_str,
                           **context,
                           historical_screenshots=screenshots,
                           numresults=total_entries,
                           info=info,
                           delHostForm=delHostForm,
                           rescanForm=rescanForm,
                           next_url=next_url,
                           prev_url=prev_url)
コード例 #3
0
ファイル: routes.py プロジェクト: marciopocebon/natlas
def host(ip):
    info, context = hostinfo(ip)
    delForm = DeleteForm()
    delHostForm = DeleteForm()
    rescanForm = RescanForm()

    version = determine_data_version(context)
    template_str = f"host/versions/{version}/summary.html"
    return render_template(template_str,
                           **context,
                           host=context,
                           info=info,
                           delForm=delForm,
                           delHostForm=delHostForm,
                           rescanForm=rescanForm)
コード例 #4
0
ファイル: routes.py プロジェクト: marciopocebon/natlas
def host_historical_result(ip, scan_id):
    delForm = DeleteForm()
    delHostForm = DeleteForm()
    rescanForm = RescanForm()
    info, context = hostinfo(ip)
    count, context = current_app.elastic.get_host_by_scan_id(scan_id)

    version = determine_data_version(context)
    template_str = f"host/versions/{version}/summary.html"
    return render_template(template_str,
                           host=context,
                           info=info,
                           **context,
                           delForm=delForm,
                           delHostForm=delHostForm,
                           rescanForm=rescanForm)
コード例 #5
0
def random_host():
    random_host = current_app.elastic.random_host()
    if not random_host:
        abort(404)
    ip = random_host['hits']['hits'][0]['_source']['ip']
    info, context = hostinfo(ip)
    delForm = DeleteForm()
    delHostForm = DeleteForm()
    rescanForm = RescanForm()

    version = determine_data_version(context)
    template_str = f"host/versions/{version}/summary.html"
    return render_template(template_str,
                           **context,
                           host=context,
                           info=info,
                           delForm=delForm,
                           delHostForm=delHostForm,
                           rescanForm=rescanForm)
コード例 #6
0
ファイル: routes.py プロジェクト: marciopocebon/natlas
def random_host():
    random_host = current_app.elastic.random_host()
    # This would most likely occur when there are no hosts up in the index, so just throw a 404
    if not random_host:
        abort(404)
    ip = random_host['ip']
    info, context = hostinfo(ip)
    delForm = DeleteForm()
    delHostForm = DeleteForm()
    rescanForm = RescanForm()

    version = determine_data_version(context)
    template_str = f"host/versions/{version}/summary.html"
    return render_template(template_str,
                           **context,
                           host=context,
                           info=info,
                           delForm=delForm,
                           delHostForm=delHostForm,
                           rescanForm=rescanForm)