Giornata Tecnica da Piave Servizi, 11 aprile 2024 | ALBIERO Andrea
Summary of "AdBudgetKiller: Online Advertising Budget Draining Attack"
1. UNIVERSITÀ DEGLI STUDI DI TRIESTE
Dipartimento di Ingegneria e Architettura
Tesi di laurea triennale in Ingegneria Elettronica ed Informatica
Summary of "AdBudgetKiller: Online
Advertising Budget Draining Attack"
Candidato:
Davide NIGRI
Matricola: IN0500383
Relatore:
Prof. Alberto
BARTOLI
Anno Accademico 2018 - 2019
3. 1 Introduzione
La pubblicità digitale movimenta moltissimi soldi ed è la primaria fonte di gua-
dagno per numerose aziende tra cui in primis Google e Facebook. La maggior parte
dei servizi presenti su Internet è completamente gratuita solo grazie alla pubblicità
mirata, che è basata sulla raccolta di informazioni sugli utenti che navigano sul
web. Questo mercato è ancora oggi in continua ascesa e, viste le enormi possibilità
di guadagno, molte aziende hanno forti incentivi a compiere attività fraudolen-
te come ad esempio tentare di danneggiare economicamente compagnie rivali. In
questo articolo viene presentato un innovativo attacco informatico che ha proprio
tale scopo: scelto un inserzionista come obiettivo, l’attacco mira a prosciugare il
budget della sua campagna pubblicitaria, in modo da fargli perdere l’investimento
economico e la possibilità di far visualizzare i suoi annunci agli utenti. Studia-
re queste tipologie di attacchi, identificando delle possibili contromisure, è molto
importante per contrastarne l’impiego.
2 L’ecosistema pubblicitario
L’ecosistema pubblicitario digitale, nella sua forma base, comprende 4 atto-
ri: publisher, advertiser, ad network e ad exchange (vedi Figura 1). Il publi-
sher è il proprietario di un sito web che vuole vendere i propri spazi pubblicitari.
L’advertiser è l’inserzionista che li vuole comprare e a tale scopo si affida a
un intermediario, ovvero un ad network, con il quale stabilisce il budget della
campagna pubblicitaria e la strategia di targeting, che può essere basata sulle
caratteristiche geografiche, demografiche o comportamentali degli utenti che navi-
gano su Internet. La compravendita tra publisher e ad network viene gestita dagli
ad exchange e avviene sotto forma di asta: ogni volta che un utente visita il sito
web di un publisher con uno spazio pubblicitario in vendita, viene generata una
richiesta di pubblicità e un ad exchange avvia in tempo reale una nuova asta, a
cui partecipano diversi ad network per conto degli advertiser. L’ad network che
effettua la puntata più alta si aggiudica la possibilità di mostrare un’inserzione a
quell’utente. Le puntate degli ad network ovviamente non sono casuali, ma sono
effettuate in base al budget stanziato dall’inserzionista e in base a quanto le carat-
teristiche dell’utente che ha visitato il sito web soddisfano la strategia di targeting.
In poche parole, gli ad network forniscono agli advertiser la possibilità di effettuare
pubblicità mirata.
Un caso particolare di pubblicità mirata è quella di retargeting, adottata
soprattutto dagli inserzionisti che possiedono un sito di e-commerce. Consiste nel-
l’utilizzare una strategia di targeting di tipo comportamentale per identificare i
1
4. Figura 1: Ecosistema pubblicitario
cosiddetti utenti non convertiti, ovvero coloro che hanno visitato il sito, dimo-
strando quindi un interesse, ma non hanno ad esempio completato un acquisto. Il
retargeting permette all’inserzionista di tracciare gli utenti non convertiti e mo-
strare loro annunci pubblicitari quando visitano altri siti web. È una tecnica molto
efficace perché le inserzioni sono personalizzate in base all’interesse dimostrato e
nel 50 – 60% dei casi sono in grado di convincere l’utente a rivisitare il sito di
e-commerce per completare ciò che hanno lasciato in sospeso.
3 L’attacco AdBudgetKiller
Le possibili vittime dell’attacco AdBudgetKiller sono tutti gli inserzionisti che
adoperano il servizio di retargeting per pubblicizzare il proprio sito di e-commerce.
L’idea alla base dell’attacco è la seguente: scelta la vittima, si individua la strategia
di targeting da essa adottata, si eseguono le azioni necessarie per essere etichettati
come utenti non convertiti e infine si prelevano in modo automatico quanti più
annunci di retargeting possibili, in modo da far terminare rapidamente il budget
dell’inserzionista. Di seguito vengono descritti i passi necessari per realizzare il
modulo di attacco.
FASE 1: Modellazione del sito obiettivo
Lo scopo di questa prima fase è quello di realizzare un modello semplificato e
di facile utilizzo del sito di e-commerce scelto come obiettivo, per poterlo sfruttare
poi nelle fasi successive. A tale scopo, si realizza un modulo che è in grado di
esplorare in modo automatico il sito in questione e ottenere l’elenco delle sue pagine
principali insieme alle azioni eseguibili all’interno di ciascuna di esse (click su
prodotto, click su categoria, ecc.). Queste informazioni vengono poi riorganizzate
in modo da ottenere un modello a grafo (vedi Figura 2) in cui ogni nodo rappresenta
2
5. uno stato, ovvero una tipologia di pagina (es. pagina principale, di categoria, di un
prodotto, ecc.), e ogni arco rappresenta una transizione, ovvero un evento o azione
che è possibile compiere su quel tipo di pagina. In questo modo si può descrivere
un’attività di navigazione come una sequenza di stati e transizioni.
Figura 2: Esempio di modello di un sito di e-commerce
FASE 2: Profilazione dell’inserzionista
A questo punto è necessario raccogliere diverse informazioni riguardanti l’inser-
zionista tra cui, in particolare, la strategia di targeting adottata. Per individuarla
vengono realizzati altri due moduli. Il primo genera svariati profili utente che
risultano non essersi mai collegati al sito obiettivo. Ognuno di questi profili è
identificato da un’attività di navigazione, ovvero da una sequenza di stati e tran-
sizioni selezionati dal modello della FASE 1, che viene simulata dal modulo stesso
sul sito di e-commerce. Solo uno di questi profili utente può soddisfare la strategia
di targeting e quindi attivare il servizio di retargeting. Il secondo modulo si occu-
pa di identificarlo, se presente, analizzando la tipologia di pubblicità che ciascun
profilo utente riceve in seguito alla simulazione. L’individuazione del profilo “cor-
retto” permette di stabilire in automatico quale strategia di targeting è adottata
dall’inserzionista: se ciò non è possibile, la realizzazione del modulo d’attacco non
può proseguire.
È anche fondamentale tenere conto del fatto che gli ad network, in genere,
impostano dei limiti al numero di inserzioni inviabili a uno stesso profilo utente
in un certo intervallo di tempo. Per garantire l’efficacia dell’attacco, è quindi
necessario recuperare tale informazione, ovvero il tasso massimo impostato dall’ad
3
6. network a cui si è affidato l’inserzionista: a tale scopo vengono effettuate ulteriori
simulazioni.
FASE 3: Realizzazione del modulo di attacco
Con le informazioni raccolte nella FASE 2 è possibile realizzare il modulo d’at-
tacco, il quale non deve fare altro che ripetere le seguenti tre operazioni nel minor
tempo possibile:
1. Generare un nuovo profilo utente non convertito simulando le azioni che
soddisfano la strategia di targeting.
2. Recuperare il maggior numero di inserzioni di retargeting con lo stesso profilo
fino al raggiungimento del tasso massimo.
3. Eliminare tutti i dati relativi al profilo utilizzato.
Per migliorare l’efficienza dei passi 1 e 2, sono state utilizzate rispettivamente
una copia estremamente semplificata del sito di e-commerce (molto più rapida nel
caricamento) e una pagina HTML che contiene soltanto degli spazi pubblicitari
(per ottimizzare il recupero delle inserzioni).
Una volta terminata la realizzazione del modulo di attacco, questo può essere
implementato su diverse macchine virtuali ospitate su cloud server, i quali per-
mettono di mantenere un buon livello di anonimato e garantiscono dei costi ridotti
per la fruizione del servizio (qualche centesimo all’ora). Così facendo, è possibile
lanciare un attacco distribuito.
4 Test pratici
L’attacco è stato inizialmente valutato in un ambiente controllato. È stato
creato un sito di e-commerce apposito e tramite un ad network è stata avviata
una campagna pubblicitaria di retargeting con budget settimanale di $150, indi-
rizzata a tutti gli utenti che avrebbero visitato la pagina di un prodotto. Il modulo
d’attacco è stato distribuito su 10 macchine e l’intero test è stato fatto durare un’o-
ra. Il risultato è stato il recupero di circa 40 mila inserzioni e il prosciugamento
del 95% del budget settimanale impostato (circa $143).
Successivamente è stata testata la capacità di AdBudgetKiller di rilevare la
strategia di targeting adottata da diversi siti di e-commerce che utilizzano il retar-
geting: l’87% (254 su 291) è risultato vulnerabile (vedi Figura 3).
4
7. Figura 3: Strategie di targeting individuate
Infine è stato testato l’attacco completo contro 3 inserzionisti reali (in seguito
alla loro approvazione) utilizzando solo una macchina e con una durata comples-
siva di 10 minuti in modo da minimizzare i possibili danni. I risultati di questo
test non sono purtroppo disponibili in quanto contengono informazioni aziendali
riservate. Utilizzando però alcuni dati statistici è stata stimata una perdita di
budget compresa tra $46.86 e $155.89 all’ora.
Figura 4: Danno stimato contro i tre inserzionisti reali
5 Possibili contromisure
L’attacco AdBudgetKiller genera, nel complesso, un numero di richieste di
annunci pubblicitari molto elevato. Di conseguenza, per poterlo rilevare, gli ad
network possono analizzare tali richieste per identificare anomalie, come ad esem-
pio un numero eccessivo di richieste generate dallo stesso profilo utente o indirizzo
IP, e imporre dei blocchi. Tuttavia, grazie alla continua generazione di nuovi pro-
fili utente e all’utilizzo dei servizi di cloud computing, l’attacco AdBudgetKiller
può facilmente eludere questi blocchi. Si può dire allora che AdBudgetKiller è
simile per caratteristiche a un attacco di tipo Distributed Denial of Service
5
8. (DDoS). Genera infatti un traffico di dati imponente con lo scopo di recare un
danno economico, ed è distribuito su diverse macchine; in linea teorica è possibile
rilevarlo ma è estremamente difficile bloccarlo una volta che è stato lanciato.
Gli inserzionisti possono allora tentare di prevenire l’attacco AdBudgetKiller
utilizzando strategie di targeting più complesse, basate anche su eventi. Ad esem-
pio, potrebbero decidere di etichettare un utente come non convertito solo se questo
ha visualizzato un prodotto per un certo intervallo di tempo e solo dopo aver ef-
fettuato uno scroll della pagina. Ciò non garantisce ovviamente una protezione
completa dall’attacco, ma rende molto più difficile l’individuazione della strategia
di targeting per l’attaccante e quindi minimizza il rischio di essere selezionati come
obiettivo.
6
9. Riferimenti bibliografici
[1] I Luk Kim, Weihang Wang, Yonghwi Kwon, Yunhui Zheng, Yousra Aafer,
Weijie Meng and Xiangyu Zhang. AdBudgetKiller: Online Advertising Budget
Draining Attack. In: Proceedings of the 2018 World Wide Web Conference on
World Wide Web, Lyon, France (2018). pp. 297-307.
7