CVE-2023-29218: Twitter e la “Reduction of reputation score”

TL;DR In seguito alla pubblicazione su Github del codice sorgente di alcune funzionalità del social network Twitter, tra cui il Twitter Recommendation Algorithm, è stata evidenziata una falla che permetteva, attraverso l’esecuzione di precise azioni, di penalizzare la reputazione dei profili bersaglio.

Sappiamo bene che la reputazione di un utente, soprattutto sui social network, sia un elemento importante e, per chi ha deciso di cimentarsi nella professione di influencer, questo può fare differenze anche economiche.

Sappiamo anche che sono gli algoritmi dei social network a calcolare la reputazione di un certo profilo, evidenziando o penalizzando i suoi contenuti. Algoritmi che rappresentano un po’ il cuore del social network, poiché ne determinano i meccanismi di interazione tra gli utenti e la visibilità dei profili. Per questo sono generalmente custoditi gelosamente, almeno fino a che non viene deciso di rilasciarli pubblicamente come ha fatto Twitter qualche giorno fa, annunciandolo con un post sul loro blog “A new era of transparency for Twitter“.

E’ stato quindi pubblicato sul loro repo su Github il codice sorgente di alcune funzionalità della piattaforma, tra cui il codice del “Twitter Recommendation Algorithm” che, a distanza di qualche giorno, diventa protagonista di un curioso CVE – Common Vulnerability and Exposures -, il numero 2023-29218, in merito alla possibilità di degradare la reputazione di un profilo adottando precise strategie di attacco.

Per chi non lo sapesse, i CVE sono le segnalazioni di vulnerabilità note individuate in prodotti e software. Sono rappresentati dalla sigla CVE seguita dall’anno e da un ID univoco, assegnato dalla CNA – CVE Numbering Authority – in seguito alla segnalazione di una nuova vulnerabilità. L’elenco di tutti i CVE è pubblico, gestito e mantenuto dal NIST – National Institute of Standards and Tecnology – americano.

In questo caso parliamo, come già detto, della CVE-2023-29218 che, nella descrizione, riporta:

The Twitter Recommendation Algorithm through ec83d01 allows attackers to cause a denial of service (reduction of reputation score) by arranging for multiple Twitter accounts to coordinate negative signals regarding a target account, such as unfollowing, muting, blocking, and reporting, as exploited in the wild in March and April 2023.

CVE-2023-29218

Una spiegazione piuttosto chiara di questo “denial of service” (!) motivato da “reduction of reputation score” la si trova in questa issue aperta 3 giorni fa dall’utente redknightlois sul repo di Twitter su GitHub:

The current implementation allows for coordinated hurting of account reputation without recourse. The most general behavior is that global penalties are prone to be gamed (all of them). In other time I would just report this information using a vulnerability channel, but given that this is already popular knowledge there is no use to do so.

The reason is that there is nothing a user can do to get rid of it because:

The user can’t know that it is been penalized.
The user can’t revert the penalty because it is not in his hands to change behavior to avoid it
They accumulate and survive the actual tweet.
No matter how much you boost, with enough people applying enough signals (there are many) the multiplier gets incredibly low.

proseguendo con alcuni dettagli tecnici sull’attacco e la segnalazione di alcune piattaforme/app che, in modo più o meno consapevole, lo sfruttavano da tempo, come Block Party App e Block Together (chiusa il 18 gennaio 2021).

Anche se chiusa, Block Together riporta alcune statistiche sull’uso del servizio:

  • 303k utenti registrati;
  • 198k utenti che hanno sottoscritto almeno una lista;
  • 4.5k utenti che hanno offerto almeno una lista, con almeno un sottoscrittore;
  • 3.7B azioni;

Per riprodurlo basta una manciata di amici (lui dice almeno 40) che, dopo aver identificato il profilo bersaglio, devono eseguire alcune operazioni in un preciso ordine:

  • They should follow in preparation, a few days later unfollow first, [just doing this in 90 days intervals also hurts];
  • Then they will report a few “borderline” posts;
  • Then they will mute;
  • Then they will block;
  • Expected behavior;

No global penalty should be applied because you can game them pretty easily, all penalties (if any) should be applied at the content level.

Serve qualche altro buon motivo per chiedere che il funzionamento degli algoritmi decisionali sia pubblicamente disponibile?

Hai trovato utile questo articolo?

Questo articolo è stato visto 119 volte (Oggi 1 visite)
Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.