Vzhľadom na to, aký zložitý je softvér, je náročné zabezpečiť, aby v ňom neboli žiadne chyby. Toto je jednoducho spôsob vecí, ktoré sú navrhnuté ľuďmi a sú veľmi zložité. Aby sa tento problém minimalizoval, spoločnosti zaoberajúce sa vývojom softvéru zahŕňajú do životného cyklu vývoja softvéru kontroly kódu. Ale ani starostlivý odborný posudok nedokáže zachytiť všetko. Obmedzenia v reálnom čase a rozpočtové obmedzenia to ešte zhoršujú. Z tohto dôvodu sa chyby dostanú do produkčných systémov. Niektoré chyby majú malý alebo žiadny účinok, iné však môžu predstavovať nepríjemné bezpečnostné chyby.
Chyba zabezpečenia je trieda chýb, ktoré nejakým spôsobom ovplyvňujú bezpečnosť systému. Existuje široká škála možných výsledkov, ale v konečnom dôsledku sú všetky bezpečnostné chyby zlé pre každého. Bohužiaľ, hľadanie chýb môže byť ťažké a časovo náročné. Zatiaľ čo vývojári môžu tráviť iba obmedzené množstvo času testovaním chýb, iná skupina trávi používaním aplikácie oveľa viac času – používatelia.
Používatelia systému spolu strávia na systéme oveľa viac času, ako by kedy mohli vývojári tohto systému. Používajú tiež oveľa širšiu škálu zariadení. Spolu to robí ideálne prostredie na hľadanie chýb – veľa očiek a okrajových puzdier.
Uvedenie používateľov do práce
Tradičným spôsobom, ako používať používateľov na riešenie chýb, je mať nejakú funkciu hlásenia chýb, ktorá používateľom umožňuje nahlásiť chybu, s ktorou sa stretnú. Vývojári môžu tieto informácie použiť na replikáciu, identifikáciu a nápravu problému. Problém je v tom, že používateľ má minimálnu motiváciu hlásiť akékoľvek problémy. Je to proces, ktorý si vyžaduje čas, má potenciálne dôsledky na súkromie a vo všeobecnosti nevedie k žiadnej spätnej väzbe, aj keď je problém vyriešený.
Bezpečnostné nedostatky sú ešte horšie. Používateľ so zlými úmyslami by sa mohol rozhodnúť použiť zraniteľnosť, ktorú aktívne nájde. V závislosti od problému môže byť možné získať prístup k niečomu hodnotnému, či už na čiernom trhu, výkupným alebo vydieraním. Prípadne je možné predať znalosti o zraniteľnosti na čiernom trhu. Či tak alebo onak, používatelia nie sú motivovaní hlásiť chyby a sú odrádzaní od hlásenia bezpečnostných chýb.
Otáčanie stolov
Systém bug bounty je spôsob, ako obrátiť tabuľku a podporiť aktívne hlásenie bezpečnostných problémov. Metóda je jednoduchá, odmeňuje ich. Štandardným spôsobom je vyplatenie peňažnej odmeny a verejné potvrdenie príspevku. To priamo odmeňuje používateľov za nahlásenie bezpečnostnej chyby a povzbudzuje ich, aby urobili správnu vec.
Systémy odmien za chyby sú zvyčajne otvorené pre kohokoľvek. Každý používateľ, ktorý identifikuje chybu zabezpečenia, ju môže nahlásiť a dostať zaplatené. Existuje však niekoľko upozornení. Ak chcete dostať zaplatené, musíte byť vo všeobecnosti prvou osobou, ktorá nahlási problém, aj keď za výnimočných okolností niekedy existujú zriedkavé výnimky. Musíte tiež dodržiavať pravidlá.
Pravidlá systému odmien za chyby poskytujú všeobecnú ochranu pred súdnym konaním, ak sa v nich budete držať. Sú často podrobné, ale pomerne jednoduché. Nepristupujte k údajom iných ľudí, nevyužívajte zraniteľné miesta zlomyseľne a zverejňujte ich súkromne a zodpovedne. Môžu existovať aj niektoré veci, ktoré sa považujú za zakázané.
Aké sú odmeny?
V skutočnosti sú odmeny založené na dobrej vôli. Je tu tiež prvok „ak by to spôsobilo porušenie údajov, museli by sme zaplatiť oveľa väčšiu pokutu“. Vo všeobecnosti platí, že spoločnosť za to platí relatívne nízku sumu. To však môže byť pre reportéra naozaj veľa. Niektoré chyby môžu byť zaplatené za menej ako sto dolárov. V extrémnych prípadoch však niektoré spoločnosti zaplatili stotisíc dolárov za vážne zraniteľnosti. Samozrejme, väčšina odmien je oveľa nižšia.
Historicky boli odmeny za chyby oveľa nižšie a niekedy skôr ako obyčajné poďakovanie. Napríklad zaslanie bezplatného trička alebo poskytnutie bezplatného doživotného predplatného služby. Veľké technologické spoločnosti však oživili trh, rovnako ako príchod platforiem odmeny za chyby. Platformy bug bounty sú webové stránky, ktoré hosťujú programy bug bounty mnohých klientov. Všetko zoskupujú na jednom mieste. Vďaka tomu je pre menšiu organizáciu oveľa jednoduchšie spustiť systém bug bounty. Jedným zo spôsobov, ako to dosiahnuť, je jednoducho štandardizácia procesu.
Samozrejme, odmena v odmene za chyby je oveľa menšia, ako by sa dalo dosiahnuť predajom chyby na čiernom trhu. Koncept verí, že vo všeobecnosti väčšina ľudí chce robiť správnu vec. Alebo aspoň nechcú, aby sa im vrátilo riziko porušenia zákona.
Záver
Bug bounty je systém vyplácania odmeny za nájdenie a zodpovedné odhalenie bezpečnostnej chyby. Aktívne povzbudzuje používateľov, aby testovali a zlepšovali bezpečnosť produktov. Prináša mnoho nových očí do procesu testovania, a to všetko s minimálnymi nákladmi pre spoločnosť. Samozrejme, ako niekto, kto sa zúčastňuje systému bug bounty, je nevyhnutné byť opatrný a rozumieť pravidlám.
Hackovanie je nezákonné; program bug bounty umožňuje testovanie niektorých vecí, ale zvyčajne zahŕňa obmedzenia. Ak pravidlá nedodržíte, môžete byť trestne zodpovední. Ak budete dodržiavať pravidlá, nájdete a nahlásite chybu, môžete získať peknú odmenu a zvýšiť bezpečnosť pre seba a ostatných používateľov.