A Tree-Structured Approach for Phishing Template and Attacker Attribution Analysis
Organizations: Digital Security Department, Vicomtech (BRTA), Donostia / San Sebastian, Spain · University of Le´on, Le´on, Spain
Abstract
Phishing remains a persistent and evolving cybersecurity threat, with attack volumes reaching record levels. This growth is driven by the industrialization of phishing through widely available phishing kits and reusable templates, which enable cybercriminals to rapidly generate and deploy large numbers of fraudulent webpages. Although surface-level attributes may differ across these websites, their underlying structures often exhibit significant similarities. However, most existing defenses rely on reactive blocklists or supervised classification models that focus on individual phishing instances, limiting their ability to identify structural reuse and detect coordinated phishing campaigns. To address this limitation, this study investigates whether HTML structure can serve as a robust fingerprint for identifying phishing template reuse. We model webpages as Document Object Model (DOM) trees and extract structural features, optionally enriched with HTML tag-based content information. These representations are then clustered using unsupervised learning methods to group structurally similar webpages. Three clustering algorithms are evaluated and compared, while also analyzing how the depth of the extracted DOM-tree affects cluster formation and overall clustering performance. Finally, cluster quality is also evaluated both quantitatively and qualitatively, including a novel level-wise Jaccard Distance Score and manual inspection supported by visualization tools. Results demonstrate that structural representations of webpages can effectively reveal hidden similarities across phishing sites, enabling the detection of emerging and zero-day templates and supporting the analysis of coordinated phishing threats
Figures & tables
| Features | Description | |
|---|---|---|
| 1 | Number of nodes | It represents the total count of HTML elements within the pruned DOM tree, indicating the overall structural complexity of the web page. |
| 2 | Number of edges | It quantifies the total hierarchical and relational links between elements. A high edge-to-node ratio often suggests a more complex layout. |
| 3 | Maximum centrality | It identifies the most interconnected node in the graph. In phishing, this often corresponds to a central container or a critical form element [ 22 ] . |
| 4 | Minimum centrality | It measures the lowest degree of connectivity, helping to identify peripheral elements or isolated scripts often used for obfuscation [ 22 ] . |
| 5 | Centrality on average | This feature provides a global measure of structural importance across all elements, capturing the general density of the page’s architecture [ 23 ] . |
| Algorithms | Parameter | Values |
| DBSCAN | {0.1, 0.2,…, 1.0}, step=0.1 | |
| min_samples | 2, 3, 5, 8, 10 | |
| OPTICS | {0.1, 0.2,…, 1.0}, step=0.1 | |
| min_samples | 2, 3, 5, 8, 10 | |
| AHC | 5, 25, 50, 75, 100 |
| Algorithms | Features | Parameters | Level | # Cluster with | |||
|---|---|---|---|---|---|---|---|
| DBSCAN | structural | , min_samples = 10 | 14 | 0.903 | 0.052 | 0.963 | 0 |
| structural + content | , min_samples = 2 | 8 | 0.158 | 0.254 | 0.979 | 133 | |
| OPTICS | structural | , min_samples = 2 | 11 | 0.592 | 0.368 | 1.093 | 87 |
| structural + content | , min_samples = 2 | 8 | 0.242 | 0.305 | 1.088 | 170 | |
| AHC | structural | 14 | 0.901 | 0.047 | 0.959 | 0 | |
| structural + content | 15 | 0.351 | 0.335 | 1.036 | 55 |
Appendix figures & tables4 assets
Supplementary material from the paper’s appendix.
Appendix
Unsupervised Clustering
Unsupervised clustering groups unlabeled data by similarity or structure to reveal patterns, subgroups, and anomalies.
See all 117 papers