Kontaktirajte podršku

Odgovaramo e-poštom, obično u roku od dva dana.

Radi zaštite od zloupotrebe, Google reCAPTCHA proverava ovo slanje. Pritom se podaci prenose Googleu. Skripta se učitava tek kada otvorite ovaj formular.

← Sve objave

Šta je zapravo datoteka stats2.gif

O sadržaju i njegovoj proveri

U ovom članku

U folderu sa slikama ovog projekta nalazi se datoteka pod imenom stats2.gif. Ima 366 bajtova, datira iz marta 2018. i pojavljuje se u tačno nula redova izvornog koda. Dana 23. avgusta 2026. isporučena je 2.735 puta sa odgovorom 200, sa 145 različitih sajtova — a tokom celog ciklusa rotacije dnevnika pristupa, sa 858.

Datoteka na koju niko ne upućuje, preuzeta hiljade puta dnevno sa stranica stotina stranaca. Očigledno tumačenje: stara ugradnja koju ljudi nikad nisu zamenili, tiho isporučuje statičnu sliku tamo gde je nekada bio brojač. Statičke datoteke u potpunosti zaobilaze PHP. Ništa što direktno stigne do Apača ne može ništa da broji.

Zato smo napisali alat. On iz dnevnika čita svaku stranicu upućivanja, preuzima svaku kroz isti proveravač koji sajt već koristi za dijagnostiku ugradnje — sa SSRF zaštitama, jer te adrese potiču iz dnevnika, a ne od nas — i traži da li bilo šta na stranici zaista broji.

Svih 858 stranica

već broje (radi ispravna ugradnja pored)501
uopšte nedostupne288
značka je prisutna, u izvornom kodu nema broja brojača69
samo stara značka, ništa ne broji0
već broje501nedostupne288ikona, bez broja69slučaj koji smo tražili: 0

Nijedna. Sedamdeset pet minuta preuzimanja, a odgovor je bio ne.

Merenje koje traje jednu sekundu

stats2.gif je 13 puta 14 piksela.

To nije brojač ni značka sa brojem. To je mala ikona statistike — ista stvar koju dizajn 981 u aktuelnoj galeriji ponovo pravi, a komentar u izvornom kodu tog dizajna precizno opisuje njegovog pretka: nema vidljivog broja, samo mala oznaka koja klikom otvara statistiku. Nikada nije trebalo da broji. Na tim stranicama uvek je nešto drugo brojalo.

Datoteka nije ni pokvarena. Odgovara sa 200 i vrednošću Last-Modified iz 2018. i rokom keširanja od godinu dana. Svoj posao obavlja.

Jedan poziv ka getimagesize() rešava celu tu liniju istraživanja za sekundu. Ovde je pitanje bilo „zašto se ova datoteka toliko često preuzima“, pretpostavljeni odgovor „jer je pokvaren brojač“, i sve posle toga počivalo je na pretpostavci, a ne na datoteci — zbog čega se provera od jedne sekunde isplati da se uradi prva.

Jedina stvar koja je zaista pokvarena

Od svega, dnevnik je pokazao jedan pravi nedostatak: jednu adresu, traženu deset puta dnevno, sve sa odgovorom 410, gde je ceo isečak koda za ugradnju završio unutar atributa linka href. Neko je nalepio kod u polje koje HTML znakove zamenjuje entitetima. Njihov brojač je živ i broji — samo njihov sopstveni link ka sopstvenoj statistici ne vodi nikuda.

Alat ostaje, bez putanje za upis. Pitanje je bilo opravdano; odgovor je ne; i vredi sačuvati oboje, da niko više ne mora ručno da ga postavlja.

Oglas