Acasă / Articole / Siguranța unui fișier HTML

Descarci un fișier HTML. Ce poate face, ce nu poate — și cum verifici singur

Dacă ai ezitat înainte să descarci Jurnalul AI, ai făcut exact ce trebuia. O pagină HTML pusă pe calculatorul tău chiar poate rula cod, iar „e doar un fișier, n-ai nicio grijă” e genul de propoziție care ar trebui să te pună în gardă, nu să te liniștească. Așa că nu îți cerem să ne crezi pe cuvânt. Îți arătăm ce riscuri există cu adevărat, unde sunt limitele lor, și trei feluri în care poți verifica singur — începând cu unul care nu-ți cere să deschizi fișierul deloc.

// seria „AI Journal” · partea 3 din 3

Jurnalul AI e explicat în trei articole care se citesc cel mai bine în ordine: primul spune de ce ai nevoie de un obicei, nu de încă un curs, al doilea arată unealta pe dinăuntru, al treilea se ocupă de siguranța fișierului pe care îl descarci. Se pot citi și separat, dar dacă ai ajuns direct aici, cel mai bine e să începi cu primul.

  1. Obiceiul nu se construiește. Se lipește începe aici
  2. Două casete și o cafea. Tot ce ai de completat în Jurnalul AI
  3. Descarci un fișier HTML. Ce poate face, ce nu poate și cum verifici ești aici
// Cuprins
AI Accounting Hub
11.08.2026
// Tehnic · siguranța datelor · verificare · transparență

Ezitarea e reflexul corect

Profesia contabilă are un avantaj nativ aici, despre care am mai scris: reflexul de confidențialitate. GDPR, secret profesional, codul etic, toate te-au învățat să te întrebi unde ajung datele înainte să apeși pe ceva. E exact reflexul care lipsește în majoritatea celorlalte departamente.

Așa că, dacă ai descărcat un fișier de pe un site și te-ai oprit o clipă înainte să dai dublu-click, nu ești paranoic. Ești atent. Iar articolul ăsta nu e scris ca să te liniștească, ci ca să-ți dea instrumentele prin care să te liniștești singur.

Un furnizor care îți spune „ai încredere” îți cere ceva. Unul care îți arată cum să verifici îți dă ceva.

De ce un fișier HTML și nu altceva

Prima întrebare rezonabilă e de ce am ales tocmai formatul ăsta. Un PDF ar fi părut mai cuminte. O aplicație, mai serioasă. Un cont online, mai modern.

Problema e că aproape orice format poate rula cod. PDF-urile pot conține JavaScript, de aici o parte din vulnerabilitățile celebre ale cititoarelor de PDF. Fișierele Excel pot conține macrouri, care rulează pe calculatorul tău cu drepturile tale, în afara oricărei cutii de siguranță. Un program instalat are, prin definiție, acces la tot.

Diferența reală nu e „rulează sau nu rulează cod”. Sunt alte două lucruri: cât de multă putere are codul și dacă îl poți citi.

Format Poate rula cod Cu ce drepturi Îl poți citi tu?
Program instalat (.exe) Da Ale tale, complet — fișiere, rețea, pornire automată Nu. E compilat
Excel cu macrouri (.xlsm) Da Aproape ale tale, în afara browserului Parțial, dacă știi unde să te uiți
PDF Da, JavaScript încorporat Limitate de cititor Greu — e format binar
Aplicație web cu cont Da Codul rulează la ei, datele stau la ei Nu. Se poate schimba oricând, fără să afli
Pagină HTML Da Doar cele din cutia browserului Da, integral. E text

Asta e toată logica alegerii. Un .exe nu poate fi citit de nimeni: nici de tine, nici de un expert, nici de un asistent AI. O pagină HTML e text de la primul până la ultimul caracter. Se deschide cu orice editor de text, iar fiecare cuvânt din ea poate fi citit de tine, de un coleg din IT sau de un asistent AI.

Transparența nu e o promisiune pe care ți-o facem. E o proprietate a formatului.

La care se adaugă avantajele practice: un singur fișier, fără instalare, fără cont, fără email, merge pe orice sistem cu un browser, funcționează fără internet și rămâne al tău dacă mâine site-ul dispare.

Ce poate face o pagină descărcată

Acum partea incomodă, spusă fără menajamente. O pagină HTML deschisă de pe calculatorul tău rulează JavaScript, la fel ca orice site. Una scrisă cu intenții rele ar putea:

// ce poate face
  • Să trimită ce scrii. Riscul principal. Dacă are cod de rețea, tot ce tastezi poate pleca spre un server, în timp real, fără ca tu să vezi ceva pe ecran.
  • Să aducă alt cod de pe internet. Fișierul pe care l-ai verificat azi poate încărca mâine cu totul altceva, dacă are voie să se conecteze undeva.
  • Să semnaleze că ai deschis-o. O simplă imagine încărcată de pe un server extern spune cuiva că, la ora asta, cineva de la adresa asta a deschis fișierul.
  • Să te redirecteze către o pagină care imită un site cunoscut și îți cere parole.
  • Să declanșeze o descărcare sau să te împingă spre una.
  • Să-ți ceară permisiuni: cameră, microfon, localizare, notificări. Browserul întreabă, dar oamenii apasă „Permite” din reflex.
// ce nu poate face
  • Nu-ți citește fișierele. Nu poate umbla prin foldere. Ajunge la un fișier doar dacă îl alegi tu, printr-o fereastră de selecție.
  • Nu vede celelalte taburi. Nu poate citi sesiunea de la bancă, mailul sau SPV-ul. Browserul ține fiecare pagină în cutia ei.
  • Nu instalează nimic. Nu e un program. Nu se scrie în sistem, nu pornește odată cu calculatorul.
  • Nu rămâne activă. Închizi tabul, se oprește. Nu rulează în fundal după aceea.
  • Nu ia permisiuni în tăcere. Camera, microfonul și localizarea cer acordul tău explicit, de fiecare dată.

Concluzia onestă: riscul e real, dar are un contur clar. Practic totul se reduce la o singură întrebare: poate fișierul să vorbească cu internetul? Dacă nu poate, aproape niciunul dintre pericolele din coloana stângă nu se mai poate întâmpla. Iar asta se verifică ușor.

Ce am ales noi: nimic ascuns

Jurnalul AI e construit pornind exact de la întrebarea de mai sus. Nu conține niciun mecanism prin care să se conecteze undeva. Nu pentru că am promis noi, ci pentru că liniile de cod care ar face asta pur și simplu nu există în fișier.

Iată ce conține, numărat:

Ce am căutat Ce ar însemna dacă ar exista Găsit
fetch, XMLHttpRequest, WebSocket, sendBeacon, EventSource Trimite sau aduce date de pe internet 0
eval, new Function, document.write, atob Execută cod construit din text — folosit ca să ascunzi ce face codul 0
<iframe>, <object>, <embed>, <form> Încarcă altă pagină înăuntru sau trimite date undeva 0
<script> Cod. Contează dacă e scris în fișier sau adus din altă parte 1, scris în fișier, fără src
src="http Aduce ceva de pe un server extern la fiecare deschidere 0
Fonturi externe Semnalează unui furnizor de fonturi că ai deschis fișierul 0 — folosește fonturi de sistem
Adrese externe Unde te poate trimite 16, toate către aiaccountinghub.ro, doar la click
Cookie-uri Urmărire între sesiuni 0

Două lucruri pe care le-am fi putut ascunde și nu le ascundem, pentru că altfel v-ați fi întrebat despre ele:

Există o cerere de permisiune în fișier. Una singură. E cea prin care browserul te întreabă dacă are voie să rescrie fișierul .md pe care tu l-ai ales la salvarea anterioară. Fără ea, ai avea zece copii cu nume diferite în folderul de descărcări. Nu are legătură cu camera, microfonul sau localizarea.

Există două apariții ale unei adrese care începe cu http://. Amândouă sunt http://www.w3.org/2000/svg, nu e o conexiune, ci numele oficial al formatului grafic folosit de pictograma jurnalului. Apare în orice fișier care conține un desen vectorial. Dacă îți dă un asistent AI un avertisment despre ea, e o alarmă falsă.

Cifrele de mai sus se referă la versiunea publicată în august 2026. Nu-ți cerem să le crezi, și tocmai de asta urmează partea în care le verifici singur. Dacă descarci o versiune viitoare, refă verificarea — durează sub cinci minute.

Trei feluri de a verifica

Sunt aranjate în ordinea în care le recomandăm. Niciuna nu-ți cere să știi programare, și niciuna nu te obligă să citești conținutul fișierului, lucru care contează, din motivul explicat mai jos.

1 · Pui un asistent AI să-ți facă un raport

Începem cu ea pentru că e cea mai potrivită pentru cei mai mulți oameni, și nu din snobism tehnologic. Are trei calități pe care celelalte nu le au: nu deschizi deloc fișierul, nu trebuie să știi ce înseamnă cuvintele pe care le caută, și primești la final un verdict scris, nu o listă de rezultate pe care să le interpretezi singur.

Descarci fișierul, îl încarci într-un asistent AI, oricare dintre Claude, ChatGPT sau Gemini acceptă atașamente, și lipești promptul de mai jos. În mai puțin de un minut ai un raport.

// prompt de verificare — copiază-l ca atare
Îți atașez un fișier HTML pe care intenționez să-l deschid în browser, pe calculatorul meu. Vreau un raport de siguranță despre el.

IMPORTANT: nu-mi rezuma conținutul și nu-mi spune ce texte conține. Ignoră complet partea de conținut — mă interesează exclusiv codul și comportamentul lui. Dacă îmi dezvălui conținutul, îmi strici motivul pentru care folosesc fișierul.

Structurează raportul exact așa:

VERDICT
O singură frază: aș avea vreun motiv real de îngrijorare dacă deschid fișierul? Adaugă un nivel de risc — scăzut, mediu sau ridicat.

CE AM VERIFICAT
Răspunde punctual la fiecare punct, cu DA sau NU și cu detalii unde e cazul:
1. Apeluri de rețea (fetch, XMLHttpRequest, WebSocket, sendBeacon, EventSource, import dinamic). Dacă există, către ce adrese?
2. Resurse încărcate din exterior (script, link, img, iframe, fonturi). De unde anume?
3. Cod ofuscat sau executat dinamic (eval, new Function, atob, document.write, șiruri codificate, nume de variabile ilizibile).
4. Se colectează ceva din ce scrie utilizatorul și se trimite undeva?
5. Cere permisiuni de browser (cameră, microfon, localizare, notificări, clipboard)? În ce scop?
6. Redirecționări automate sau descărcări declanșate fără acțiunea utilizatorului.
7. Unde se salvează datele utilizatorului și cine le poate citi.

SEMNALE DE ATENȚIE
Dacă ai găsit ceva îngrijorător, citează linia exactă și explică-mi în cuvinte simple de ce e o problemă.

ALARME FALSE
Listează separat lucrurile care par suspecte la prima vedere, dar au o explicație tehnică banală — ca să nu mă sperii degeaba.

Scrie tot raportul pe înțelesul cuiva fără studii tehnice.

Ultimele două secțiuni cerute sunt cele care fac diferența. Fără ele, asistenții au tendința să semnaleze lucruri perfect normale, cum e adresa aceea w3.org, și te sperie degeaba. Cerându-i explicit să le separe, primești un raport pe care chiar te poți baza.

Două limite, spuse cinstit. Prima: un asistent AI poate greși în ambele sensuri: poate rata ceva sau poate inventa o problemă inexistentă. E o verificare în plus, nu un certificat. De asta urmează încă două metode. A doua: încărcând un fișier într-un asistent, fișierul ajunge la furnizorul acelui asistent. Pentru jurnal nu contează absolut deloc, fiindcă e public, oricine îl poate descărca de pe site. Dar reflexul de a te întreba asta înainte, nu după, e exact ce încercăm să construim aici.

2 · Te uiți la trafic

Metoda asta nu are cum să mintă. În loc să cauți prin cod ce ar putea să facă fișierul, te uiți pur și simplu la ce face: cu ce vorbește, în timp real, în timp ce îl folosești.

Deschide fișierul în Chrome sau Edge.

Apasă F12. Se deschide panoul de dezvoltare. Alege tabul Network (Rețea).

Reîncarcă pagina cu Ctrl+R, ca panoul să prindă totul de la început.

Folosește jurnalul normal câteva minute: apasă Start, scrie ceva în casete, deschide instrumentele, salvează.

Uită-te la listă. Dacă rămâne goală, sau conține doar fișierul însuși, nu pleacă nimic nicăieri. Nu e o opinie, e ce vede browserul.

Funcționează pentru absolut orice pagină, inclusiv pentru site-urile pe care le vizitezi zilnic. Fă o dată exercițiul pe un site de știri, ca să vezi contrastul: acolo lista se umple cu zeci de linii în câteva secunde.

3 · Deschizi fișierul cu un editor de text

Fiind text de la primul până la ultimul caracter, jurnalul poate fi deschis cu orice editor de text. Nu contează care, oricare face aceeași treabă.

Odată deschis, codul devine vizibil integral. Și aici e o alegere pe care am făcut-o deliberat: nu am ascuns nimic. Nicio bucată de cod comprimată, niciun text codificat, niciun nume de variabilă schimbat ca să devină de neînțeles. Practicile astea au uneori motive legitime, de la fișiere mai mici la încărcare mai rapidă, dar au și efectul că fac codul imposibil de citit de un om obișnuit. Într-un fișier care se descarcă și se ține pe calculatorul cuiva, am considerat că lizibilitatea bate cu mult câțiva kilobytes economisiți.

Ceea ce înseamnă că poți verifica singur fiecare afirmație din tabelul de mai sus. Nu citind. Căutând. Folosește funcția de căutare a editorului, de obicei Ctrl+F, pentru fiecare rând de mai jos. Când un cuvânt lipsește, editorul îți spune că nu l-a găsit. Aia e vestea bună.

Caută Ce ar însemna dacă apare Ar trebui să găsești
fetch(Trimite sau aduce date de pe internetnimic
XMLHttpRequestAcelași lucru, metodă mai vechenimic
WebSocketCanal deschis permanent către un servernimic
sendBeaconTrimite date discret, chiar și la închiderea paginiinimic
eval(Execută cod construit din text — clasic pentru cod ascunsnimic
new FunctionAcelași lucru, altă formănimic
atob(Descifrează text codificat, adesea ca să ascundă instrucțiuninimic
<iframeÎncarcă altă pagină în interiorul acesteianimic
<formTrimite ce ai completat către o adresănimic
src="httpAduce un fișier de pe un server extern la fiecare deschiderenimic
https://Adrese externedoar aiaccountinghub.ro
Dacă alegi metoda asta, caută — nu derula. Căutarea îți arată exclusiv ce ai cerut. Derulatul îți arată tot, inclusiv ce ar fi mai bine să descoperi pe parcurs. Motivul, în secțiunea următoare.

De ce nu vezi codul aici

Ai observat, poate, că într-un articol despre transparență nu apare nicio captură cu interiorul fișierului. Nu e o scăpare.

Fișierul conține, în text simplu, toți cei 30 de termeni, cele șase activități săptămânale și promptul final. Cine îl deschide și derulează prin el află din prima zi tot ce urma să descopere în șase săptămâni. Călătoria se strică singură.

Nu te rugăm să nu te uiți pentru că avem ceva de ascuns. Te rugăm tocmai pentru că nu avem.

E, dacă stai să te gândești, cea mai bună dovadă posibilă pentru afirmațiile din articol. Un fișier în care nimic nu e ascuns e și un fișier în care nimic nu poate fi ascuns de tine.

De asta cele trei metode de verificare sunt construite toate ca să te ferească de conținut: asistentul AI primește instrucțiunea explicită să nu-ți povestească nimic, traficul nu-ți arată text, iar căutarea îți arată doar cuvântul cerut.

Aceeași listă, pentru orice fișier

Tot ce ai citit până aici funcționează pentru orice HTML care ajunge la tine: de la un furnizor, de la un client, dintr-un newsletter. Câteva reguli care se adaugă:

  • Sursa contează mai mult decât formatul. Un fișier primit pe mail de la cineva pe care nu-l cunoști nu se deschide, indiferent ce extensie are. Verificarea e pentru fișierele pe care ai un motiv să le vrei.
  • Ordinea riscului nu e cea intuitivă. Un .xlsm cu macrouri e mult mai periculos decât un HTML, pentru că macroul rulează în afara cutiei browserului, cu drepturile tale. Un .exe e în altă categorie cu totul.
  • Orice fișier care îți cere să activezi ceva e o alarmă. „Activează macrourile ca să vezi conținutul”, „Enable content”, „Dezactivează temporar antivirusul”. Nu există motiv legitim pentru genul ăsta de cerere.
  • Cu cât un fișier e mai ușor de citit, cu atât e mai ușor de verificat. Un fișier care nu poate fi citit de nimeni îți cere, obligatoriu, încredere. Unul care poate fi citit îți lasă alegerea.
  • Verifică din nou după fiecare actualizare. Un fișier curat azi poate fi altul mâine. Verificarea nu e o dată pentru totdeauna, e un obicei de cinci minute, o dată pe versiune.

Ultimul cuvânt e tot al tău

În articolul precedent am scris despre termenul cu care se închide jurnalul: Human-in-the-Loop. AI-ul face prima trecere, omul decide și răspunde. Nu ca formulă de politică internă, ci ca decizie luată de fiecare dată, pentru fiecare set de date.

Verificarea unui fișier înainte să-l deschizi e exact același reflex, mutat cu un pas mai devreme. Nu accepți un rezultat pentru că vine de la un sistem care pare competent. Nu accepți un fișier pentru că vine de pe un site care pare serios. Te uiți, în amândouă cazurile, și abia apoi decizi.

Iar dacă, după toate verificările, tot preferi să nu-l descarci, e o decizie perfect rațională și o respectăm. Aceeași logică ca la a patra opțiune din finalul jurnalului: decizi că rămâne offline, și e un răspuns la fel de bun ca celelalte.

Pe scurt: riscul unei pagini HTML descărcate se reduce, practic, la o singură întrebare — poate vorbi cu internetul? Se verifică în cinci minute, în trei feluri diferite, fără să știi programare și fără să citești fișierul. Jurnalul AI e în secțiunea Resurse — verifică-l înainte, dacă asta te ajută să pornești liniștit.
Articolul #029

Seria „AI Journal”, de la capăt.

Arhiva articolelor