http://logopalyazat.budapest2024.org/ címen lehet szavazni a 2024-es budapesti olimpia logópályázatára beküldött logótervekre. A fődíj 1'000'000 Ft. Madafaking 1 millió forint. Ennek már van tétje nemde? Mivel állami szervről van szó, ezért a weblapot is gondolom több száz millióbol rakták össze, ahogy szokás ilyenkor. Persze valami "szomszédpistike" kaphatta a megrendelést, mert olyan blődségeket követett el a weboldal készítésekor, hogy a szavazás leadásakor 0, ismétlem nulla azonosítás szükséges a szavazat leadásához.
Ha rányomunk a "szavazat leadása" gombra, akkor egy POST kérelmet küld a böngésző a szervernek és egy sütit rak le az oldal, ami megakadályozza a további szavazást. Ééééééérted? Egymillió forint múlik ezen és annyi védelem van beépítve az oldalba, hogy lerak egy sütit, hogy ne tudjál újra szavazni.
- Ha esetleg neked be van állítva a böngésződben, hogy ne fogadjon sütiket, akkor igazából korlátlan számszor tudsz szavazni ha szavazat leadása után frissíted az oldalt.
- Ha belépsz inkognyitó módba és kilépsz akkor korlátlan szavavazatot adhatsz le.
Szóval, ha te egy élelmes grafikus vagy aki szeretne egymillát szerezni, akkor nincs más teendőd, mint kikacsolod a cookie-kat a böngésződben kb (3 klikk) Ezután pedig azt ismételgeted, hogy rányomsz a frissítés gombra, majd a szavazés gombra sokszor. Ha gyors a neted, akkor ez a kétlépéses tevékenység kb 3 másodpercet vesz el az életedből. Egy nap alatt így emberi erővel 30'000 szavazatot is le tudsz adni a saját művedre.
Teszteljük a dolgot egy scripttel
Nézzük egy próbát, itt van ez a kevésbé szép logó, ami jelenleg a 137. helyen áll. Egy ismeretlen személy elvégzett egy egyszerű tesztet egy saját maga által írt scripttel és elküldte nekem a képeket köszi Mr Nobody, érdekes.
- fogta a szavazat elküldő kódsort a weboldal forráskódjából és belerakta egy ciklusba és hagyta pár percet futni. Minden ciklus esetén várt fél másodpercet.
A forráskód részlet, amit az ismeretlen emberke belerakott egy ciklusba, látszik, hogy semmi védelmi intézkedés. Elmondása szerint át kellett írnia pár változót, de én erről nem tudok.
Hagyta futni pár percet. Eredmény 120 hellyel előrébb csúszott a logó.
Csak hogy tisztázzuk a dolgokat:
- Az script által elvégzett műveletsor ekvivalens azzal, hogy kikapcsolod a sütiket a böngészőben és ismételten frissítesz és szavazol. Webfejlesztős FB csoportokban azt rebesgetik, hogy így versenyzik egymással épp a top 5 grafikus :) Bár mit csodálkozunk olyan világban amikor versenyeket lehet nyerni "Lájkokkal", amikor az dönti el az eredményt, hogy kinek van több ismerőse?
- Semmilyen biztonsági intézkedést nem kellett kijátszania annak aki küldte nekem ezt az érdekességet, (tehát §423 -mal sehogy nem ütközik) mivel nem volt biztonsági intézkedés és a böngészőt is rendeltetésszerűen használta. Sőt nagyon sok felhasználó alapból kikapcsolva tartja a sütiket a böngészőjében így ha valakinek sok ideje van (például egy mezei nagymamának) nyers erővel is termérdek mennyiségű szavazatot lehet leadni, akár a 80 éves terézke és összekattingathatta volna a a dolgokat - csak épp ezt egy script végezte.
- Beszarás, hogy egy nagy valószínűséggel többszáz milliós weblap fejlesztése során ilyet hibát követnek el.
Update 0: Most nézem, ők hamarabb megtalálták a sebezhetőséget, itt PHP kódot közölnek
Update 1: Az indexre is eljutott a hír
A bejegyzés trackback címe:
Kommentek:
A hozzászólások a vonatkozó jogszabályok értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a Felhasználási feltételekben és az adatvédelmi tájékoztatóban.
sayitsayit 2016.04.13. 17:09:27
és akkor ez még nem is egy annyira biztonságkritikus hiba volt, hiszen már mindenki tudja mennyire relevánsak ezek a netesszavazások (kb mint az eurovíziós dalfesztivál, így kisbetűvel, ez meg így egybeírva, mert enyém az alkotói szabadság)
sőt, elég hamar előbukkanó hibának is mondható, szóval aki nem értené : "KI TUDJA MENNYI LEHET MÉG BENNE". igazi mszórakoztató mintadarab lehet unatkozó, és épp valami butító autizmust serkentő feladatra vágyó hackereknek, kb mint megfogni egy buborékfóliát, és durrogtatni kicsit, ha már szobanövény szinten érzed magad agyilag