Alice you are in a Rabbit Hole!

Dacă ai trăit în România în perioada Noiembrie 2024 – Mai 2025, nu ai cum să nu fi observat în mediile sociale o agresivitate și polarizare mai mare a societății într-un sens sau altul. Informațiile oficiale nu au fost nici pe departe suficiente, clare și succinte cu privire la ceea ce se întâmplă. Ni s-a spus că suntem sub un atac informațional din partea unui stat străin dar fără prea multe detalii, fapt care a alimentat nemulțumirea unui număr și mai mare de cetățeni.

Acest articol încearcă să explice fenomenul și să ofere câteva indicii despre metodele de prevenție și recuperare care ar fi trebuit implementate de organismele statului sau măsurile care trebuie luate în cel mai scurt timp.

Concret, de câteva luni bune suntem sub asediul unui atac de inginerie socială de tip rabbit hole (vizuină de iepure). Toți cunoaștem povestea fantastică Alice în țara minunilor. Exact acesta este fundamentul psihologic al atacului. Termenul în sens concret descrie o strategie psihologică sau algoritmică de captare și menținere a atenției utilizatorilor, adică o spirală de conținut care te atrage tot mai adânc.

Rabbit Hole este o zonă comportamentală, algoritmică sau de conținut în care utilizatorul:

  • intră printr-un conținut aparent inocent sau atractiv,
  • este atras emoțional sau cognitiv,
  • rămâne captiv pentru o perioadă lungă de timp, fiind expus la conținut similar sau din ce în ce mai intens,
  • iar ieșirea este dificilă deoarece platforma personalizează continuu feedul în acea direcție.

Componentele principale ale unu rabbit hole:

  • Trigger atractiv: O imagine, titlu sau videoclip captivant care declanșează intrarea în zonă.
  • Feed adaptiv: Algoritmii învață rapid și oferă conținut similar, menținând utilizatorul implicat.
  • Recompensă variabilă: La fel ca în jocuri de noroc, utilizatorul nu știe ce urmează, ceea ce menține interesul. Situațiile se schimbă rapid și imprevizibil, de multe ori datorate celorlalți actori sociali care încearcă să prevină intrarea în rabbit hole a celorlalți.
  • Engagement loop: Aprecieri, comentarii și distribuiri care validează comportamentul și îl perpetuează.
  • Izolare cognitivă: Utilizatorul ajunge să vadă doar un anumit tip de informații, pierzând obiectivitatea.

Concret pașii sunt descriși în infograficul următor. (Sursa Generat cu AI).

Schema de atac rabbit hole

Principalele riscuri ale unui astfel de atac sunt: radicalizarea cetățenilor (bule de dezinformare), dependența digitală (cunoscută uneori și ca infobezitate), scăderea atenției și capacității de discernământ, manipulare alcoritmică și afectare a deciziilor / alegerilor digitale. După opinia mea, cea mai vicioasă dintre toate este radicalizarea, care reprezintă un proces complex prin care indivizii ajung să adopte convingeri, atitudini și comportamente extremiste, care pot conduce la intoleranță, ură sau chiar violență. Radicalizarea este în strânsă legătură cu o serie de factori sociali și de mediu, psihologici, politici și ideologici, culturali și religioși. Între factorii politici și ideologici pe care îi percepem la noi cei mai importanți sunt:

  • Percepția nedreptății sistemice – corupție, opresiune, abuzuri ale autorităților.
  • Ideologii extremiste – religioase, politice sau naționaliste, care oferă o „soluție absolută”.
  • Narative conspiraționiste – interpretări distorsionate ale realității (ex: „elitele conduc lumea”).
  • Conflict identitar sau geopolitic – legături cu zone de conflict, război cultural, etnic sau religios.
  • Reacție la politicile de stat – mai ales când sunt prezentate, percepute ca represive sau invazive, uneori chiar de cei care fac parte din organismele de conducere ale statului.

Etapele unui atac pe rețele sociale

În această secțiune voi reda succint pașii și acțiunile pe care le fac inginerii sociali într-un atac de tip rabbit hole. Nu trebuie neglijat factorul timp și resursele financiare și umane implicate. Dar cu o coordonare bună, vedem peste tot în jurul nostru rezultatele unui astfel de atac.

Pasul 1: Definirea obiectivului și alegerea țintei:

  • Scopuri posibile: influențare electorală, recrutare ideologică, fraudă financiară, dezinformare, polarizare socială.
  • Segmentare țintă: tineri deziluzionați, grupuri marginalizate, persoane influențabile, singure, public radicalizabil.
  • Analiza vulnerabilităților: identitate fragilă, frustrare socială, înclinație spre conspirații, neîncredere în autorități.

Pasul 2: Crearea conținutului declanșator („hook”)

  • Tipuri de conținut: clipuri virale, meme-uri emoționale, povestiri personale șocante, întrebări retorice controversate. Includem aici toate acele imagini generate cu AI care expun diferite cazuri, de cele mai multe ori false.
  • Formă: vizuală, scurtă, cu titluri provocatoare („adevărul pe care nu ți-l spune nimeni!”).
  • Distribuire: prin conturi false, pagini aparent inofensive, influenceri plătiți sau inconștienți.

Menționăm aici povestea lui Mihăiță care a atras atenția a milioane de utilizatori în social media în luna aprilie 2025.

Imagine și text de tip viral pentru atragerea atenției persoanelor din grupul țintă. Povestea lui Mihăiță.

Pasul 3: Atragerea în rabbit hole

  • Personalizare algoritmică: odată ce utilizatorul interacționează (like, comment, watch time), algoritmul platformei îi livrează mai mult conținut similar.
  • Escaladare treptată: de la teme generale (corupție, nedreptate, anxietate) spre narative conspiraționiste, radicale sau extremiste.
  • Crearea unui sentiment de comunitate: „noi știm adevărul”, „ei ne ascund ceva”, „alătură-te cauzei”.

Pasul 4: Consolidarea captivității

  • Crearea de „bule informaționale”: utilizatorul vede doar postări din acea zonă ideologică.
  • Feedback psihologic constant: validare, like-uri, comentarii, mesaje directe.
  • Gamificare și recompense: insigne, roluri în grupuri, „rank”-uri de membri loiali.
  • Frica de excludere sau trădare: „cine părăsește grupul e împotriva noastră”.

Pasul 5: Activarea utilizatorilor (exploatarea)

  • Răspândirea dezinformării (share masiv, spam controlat).
  • Atacuri cibernetice (phishing în masă, colectare de date).
  • Manipulare electorală (viralizarea de conținuturi anti-sistem).
  • Recrutare (în mișcări ideologice, proteste, acțiuni de stradă).
  • Monetizare (vânzare de produse, criptomonede frauduloase, donații către „cauză”).

Pasul 6: Re-activarea periodică

  • Postări șoc la intervale regulate („Uite ce s-a mai descoperit!”).
  • Conținut pseudo-documentar: „dovezi” noi, documentare manipulatoare, „experți” obscuri.
  • Campanii sincronizate: în perioade sensibile (alegeri, crize, conflicte).

Pasul 7: Finalizarea sau tranziția atacului

  • Încheiere tactică: când obiectivul a fost atins (ex: manipularea opiniei, colectarea de date).
  • Dezactivarea conturilor false sau rebranding-ul lor pentru alte campanii.
  • Transferul utilizatorilor loiali pe platforme alternative mai greu de controlat (ex: Telegram, Dark Web, forumuri închise).
  • Lăsarea unei „semințe ideologice” care poate fi reactivată ulterior.

Personal consider că momentan în România suntem la pasul 6, ultima bulină odată cu reapariția videoclipurilor cu un fost candidat (12 mai 2025 ora 21:41). Redăm în imagine reacția oamenilor reali, reactivați:

Exemplu de reactivare a oamenilor prinși în rabbit hole.

De menționat că o parte importantă din oamenii care reactionează sunt stimulatorii de mesaje, reprezentați în special de persoane cu notorietate publică, dând astfel tonul și încurajând ceilalți membi să reacționeze.

În același timp, din observațiile mele din ultimul timp, actorii implicați în atacul de inginerie socială pregătesc un exit (pasul 7, lăsarea unei „semințe ideologice” care poate fi reactivată ulterior):

Pregătirea unui exit

Mesajul postat de un candidat pregătește terenul pentru ciclul următor, în cazul unui eșec al acțiunii, dar să nu uităm iterația de la pasul 6 cu reactivarea care cheamă la acțiune persoanele din rabbit hole.

Prevenirea și recuperarea din rabbit hole-urile digitale

Prevenirea și recuperarea victimelor unui atac de inginerie socială bazat pe rabbit hole necesită o abordare multidimensională, care combină educația digitală, sprijinul psihosocial și intervențiile algoritmice și comunitare. Practic ca să nu ajungem într-o fază de izolare informațională, sau bulificare (vezi un articol interesant aici), ar trebui să existe o fază de prevenire activă în care educația media și digitală ar trebui să înceapă chiar din școală cu campanii de conștientizare, exerciții de identificare a conținutului manipulativ sau deepfake și informarea cu privire la algoritmii de pe rețelele sociale care pot influența comportamentul individului. În același timp, tot școala ar trebui să promoveze gândirea alternativă, logică și autoreflecția.

Din punct de vedere tehnic, cred că este destul de dificil să impui mecanisme de protecție de tio firewall sau antivirus :) dar cred că s-ar putea impune reglementat platformelor de social media să limiteze automat recomandările algoritmice dintr-o singură nișă ideologică.

În faza de detecție și intervenție timpurie, lucrurile sunt puțin mai complicate, pentru că, vrem nu vrem intrăm peste drepturile și libertățile fundamentale ale oamenilor în cazul în care organismele statului ar încerca să implementeze o monitorizare digitală chiar și etică sau cu consințământ. Da, aici un rol important îl poat juca tehnicile de NLP (Natural Language Processing) prin care se pot detecta schimbări comportamentale bruște ale comportamentului online și se poate interveni la nivel de platformă socială pentru diminuarea viralizării într-un anumit sens. În același timp, comunicarea instituțională, clară deschisă și completă pot altera tentativa de radicalizare a oamenilor spre o anumită ideologie.

Nu trebuie neglijat rolul influencerilor în sensul implicării acestora în mentoratul on-line, grupuri de discuție dedicate, atât on-line cât și offline, eventual prin introducerea în feed a unor postări care dezvăluie manipularea: Cine creează aceste conținuturi și de ce?

Dacă, și insist pe acest dacă, în perioada imediat următoare finalizării etapei de exit a atacului, instituțiile statului, insituțiile de educație, influencerii ar trebui să intre în faza de recuperare și reintegrare a oamenilor izolați în rabbit hole. Implicarea persoanelor din diferite bule ar trebui să se facă prin conținut autentic prin care să se povestească experiențele lor și care ar fi principalele măsuri făcute de ei pentru a contracara extremismul și radicalizarea. Nu există o frază magică pentru a-i scoate pe oameni din izolare informațională, dar cred că ar trebui să identificăm și să punem cu toții în practică câteva principii cheie:

  1. Nu critica! Critica duce de multe ori la rușine, care poate întări atașamentul față de „cauza” inițială.
  2. Alternative reale! Persoana izolată trebuie să găsească sens, apartenență și voce în altă parte. Aici intervin foarte mult grupurile profesionale, cultura, arta și trebuie să recunoaștem din ce în ce mai mult rolul comedianților (stand-uperi). De multe ori spun: Zâmbind obții mai mult!
  3. Mediul familial. Implică persoanele în discuții, nu-i combate, nu-i certa, ajută-i să se echilibreze emoțional și mai ales să nu se mai izoleze informațional. Discută cu ei!

Cam asta ar fi. Lucrurile nu sunt simple deloc iar articolul curent nu are pretenția de soluție ci mai mult de conștientizare. Detașați-vă măcar periodic de echipamente și social media. Poate ce am expus aici sunt teorii bune, dar rezultate practice sunt greu de obținut.

Referințe științifice:

Sper să vă fie util!

Excel – Câte luni există între două date?

În urmă cu ceva timp scriam articolul Operațiuni cu data și timpul în #Excel în care am încercat să explic cât mai detaliat diferite funcții și calcule legate de dată și timp. Astăzi în schimb vă propun o mică funcție care să calculeze câte luni sunt între două date calendaristice. Problema a venit ca un comentariu pe canalul meu de Youtube.

Avem așadar două date și trebuie să determinăm numărul de luni între ele. Problema care apare este dată de faptul că nu avem luni întregi și putem avea ani care nu sunt consecutivi între cele două date.

Cea mai simplă metodă este să folosești funcția: =DATEDIF(C3; C4; „m”) care returnează 30.

Pentru frumusețea lucrului în schimb vă propun o formulă personalizată care poate returna un rezultat mai precis… prin introducerea funcției MROUND() cu precizie de 0,25.

Funcția propusă pentru zecimale de precizie:

=LET(data1;C3; data2;C4;
     dataf1;DATE(YEAR(data1);12;31); datas2;DATE(YEAR(data2);1;1);
     luni1;MROUND((dataf1-data1)/30;0,25); luni2;MROUND((data2-datas2)/31;0,25);
     years;YEAR(data2)-YEAR(data1)+1;yearsa;SEQUENCE(years;;YEAR(data1));
     luni; MAP(yearsa; LAMBDA(v; IF(v=YEAR(data1);
     luni1; IF(v=YEAR(data2); luni2; 12))));
     HSTACK(yearsa; luni))

în care al doilea parametru din variabilele luni1 și luni2 este parametrul de precizie. DATEDIF() lucrează cu precizie de 0,50 dar în funcția custom putem stabili noi precizia.

Dacă dorim să calculăm precizia exactă cu DATEDIF() trebuie să introducem partea de zecimale calculate pe zile. Funcția ar fi:

=DATEDIF(C3; C4; "m") + (DAY(C4) - DAY(C3))/DAY(EOMONTH(C3;0))

Pentru a rotunji rezultatul acestei fomule la precizie de 0,25 sau 0,10 putem aplica MROUND() pentru rezultatul acestei funcții.

Dacă dorim să obținem rezultatul în formatul luni întregi și zile, atunci funcția se transformă în:

=DATEDIF(C3; C4; "m") & " luni și " & DATEDIF(DATE(YEAR(C3); MONTH(C3) + DATEDIF(C3; C4; "m"); DAY(C3)); C4; "d") & " zile"

Sper să fie util cuiva! ;)

Matricea de Triplete – Versiunea 3 – GREȘITĂ

[UPDATE 13.03.2025]

În urma sesizării unui profesionist în Excel am identificat că articolul acesta și metoda propusă sunt eronate pentru că nu generează toate combinațiile posibile.

Ca să respectăm matematica numărul de combinații maxime rămâne limitat la 189 (momentan) având în vedere că valoarea lui COMPIN(190;3) este mai mare decât 2^20.

[/UPDATE]

Astăzi nu am mai reușit să programez o sesiune O oră de Excel. Program foarte încărcat, între care o întâlnire cu boardul RCW (Romanian Creative Week) pentru organizarea în facultatea noastră a celei de a doua ediții a evenimentului: UniCredit Fintech Hackathon

Dar am reușit în timp ce rezolvam alte probleme să găsesc o formă optimizată a matricei de triplete în Excel.

La ce este bună această matrice?

Explicam în articolul din PIN Magazine – Programarea funcțională în Excel Modern că în Excel nu avem o funcție FOR() baza iterațiilor în, cred, toate limbajele de programare actuale. Dar avem soluții detaliate în acel articol. Marea problemă a versiunii prezentate acolo dar și în articolele despre algoritmi din acest blog, este limitarea numărului de elemente dintr-un vector pe care le poți prelucra. În acea primă versiune funcția putea genera matrice de triplete pentru maximum 101 elemente ale unui vector.

În articolul Modele de algoritmi în #Excel – Greedy algorithms (16) am introdus o nouă versiune a funcției _fTripleMatrix(elem) cu suport până la 189 de elemente ale unui vector.

Scopul acestor matrici este intermediar pentru prelucrarea unor seturi de numere luate câtre 3, fără repetiții. Ai un șir de numere și vrei să le adune pe toate cu alte câte două fără să repeți secvența. Cum faci? Ca să iei toate combinațiile unice de câte 3 trebuie să indexezi vectorul, iar pentru asta trebuie să știi ce poziții să apelezi. Acesta este scopul acestui algoritm: determinarea tuturor combinațiilor de poziții ale unui vector, luate câte 3.

Noua variantă elimină funcția SCAN() și introduce o matrice generată. Matricea este foarte mare consumatoare de resuse dar depășește limitele impuse până la versiunile curente.

Exemplificare în Excel

Rezultat execuție funcție de generare Matricea de Triplete versiunea 3

În acestă imagine am prezentat rezultatul pe două coloane ca să ocupe mai puțin spațiu.

Funcția care generează această matrice este:

=LET(
    matrix; SORT(
        UNIQUE(
            TOCOL(
                LET(
                    _n; B3;
                    MAKEARRAY(
                        _n;
                        _n;
                        LAMBDA(r; c;
                            LET(
                                _n1; r;
                                _n2; MOD(r + c - 1; _n) + 1;
                                _n3; MOD(r + c + 1 - 1; _n) + 1;
                                IF(OR(_n1 = _n2; _n2 = _n3; _n1 = _n3); ""; TEXTJOIN(";"; ; _n1; _n2; _n3))
                            )
                        )
                    )
                );
                1
            )
        )
    );
    arr; matrix;
    arrf; FILTER(arr; arr <> "");
    freq; LAMBDA(x; TEXTJOIN(";"; TRUE; SORT(TRANSPOSE(--TEXTSPLIT(x; ";")))));
    _sort; MAP(arrf; LAMBDA(v; freq(v)));
    TripleG; SORT(UNIQUE(_sort));
    TripleG
)

în care cheia este variabila matrix care conține funcția MAKEARRAY() care generează dinamic toate combinațiile de numere și asta având doar 2 variabile r și c din care generez cele 3 numere _n1, _n2, _n3. Este o aplatizarea de fapt a unei dimensiuni 3D într-un plan RxC.

Ca să pot sorta elementele am utilizat funcția recursivă freq în care splitez orice valoare rezultată în matrice ca să o pot sorta, după care în variabila finală TripleG păstrez doar valorile unice.

Vizual codul dacă nu apare corect în scriptul de mai sus:

Funcția _fTripleMatrix() în cod vizual.

Exemplificare rulare la 999 elemente. Aici se observă că există o mică problemă de sortare a numerelor pentru că ele sunt tratate ca valori text în urma concatenărilor.

Rezutlat execuție funcția TripleG cu 999 elemente.

Cam asta ar fi. Makearray() rămâne una din funcțiile cele mai surprinzătoare până acum din ceea ce am descoperit recent.

Sper să fie util cuiva!

Blog la WordPress.com.

SUS ↑