{% extends "base.html" %} {% set active_page = "attack_surface" %} {% block title %}FaultRay - Attack Surface Analysis{% endblock %} {% block page_title %}Attack Surface Analysis{% endblock %} {% block page_subtitle %}Map entry points, lateral paths, and high-value targets{% endblock %} {% block top_actions %} {% endblock %} {% block content %}
Run the analysis to see results.
{% endif %}| Component | Exposure | Protocol | Attack Vectors | Defense |
|---|---|---|---|---|
| {{ ep.component_name }} | {% if ep.exposure_type == "internet" %} Internet {% elif ep.exposure_type == "api" %} API {% else %} Internal {% endif %} | {{ ep.protocol }} | {{ ep.attack_vectors[:3]|join(", ") }} | {% set def_pct = (ep.defense_score * 100)|int %} {% if def_pct >= 60 %} {{ def_pct }}% {% elif def_pct >= 30 %} {{ def_pct }}% {% else %} {{ def_pct }}% {% endif %} |
| No data yet. Run analysis above. | ||||
| Component | Value Type | Risk Score | Reachable From | Min Hops | Defense Depth |
|---|---|---|---|---|---|
| {{ ht.component_name }} | {{ ht.value_type }} | {% if ht.risk_score >= 7 %} {{ "%.1f"|format(ht.risk_score) }}/10 {% elif ht.risk_score >= 4 %} {{ "%.1f"|format(ht.risk_score) }}/10 {% else %} {{ "%.1f"|format(ht.risk_score) }}/10 {% endif %} | {{ ht.reachable_from|length }} entry point(s) | {{ ht.min_hops }} | {% if ht.defense_depth == 0 %} None {% elif ht.defense_depth <= 2 %} {{ ht.defense_depth }} barrier(s) {% else %} {{ ht.defense_depth }} barrier(s) {% endif %} |
| No data yet. Run analysis above. | |||||