Neovisnost
Ne ulazimo u vlasničke udjele sustava koje pregledavamo. Naš nalaz ne smije ovisiti o tome hoće li projekt uspjeti ili ne.
O studiju
Nismo agencija koja radi sve. Bavimo se jednom stvari — sigurnošću decentraliziranih sustava — i trudimo se da je radimo temeljito.
Kako je počelo
Prve revizije radili smo 2017. godine, gotovo usput, dok smo još radili za druge. Prijatelji su gradili protokole i molili nas da pogledamo kod prije objave. Svaki put smo nešto pronašli. Ne zato što su bili loši inženjeri — nego zato što je gotovo nemoguće vidjeti pogrešku u sustavu koji ste sami osmislili.
U jednom trenutku postalo je jasno da to više nije usluga iz prijateljstva, nego posao kojem treba posvetiti puno vrijeme. Tako je nastao Shandriqo. Ime nije kratica ni pokrata — jednostavno nam je zvučalo kao nešto što se pamti.
Od tada radimo iz Zagreba, s timovima po cijeloj regiji. Neki od njih grade decentralizirane burze, neki infrastrukturu za digitalnu imovinu, neki alate koje nitko izvan struke neće nikada vidjeti. Zajedničko im je to što njihov kod, jednom objavljen, radi bez nadzora i bez mogućnosti povlačenja.
Nismo narasli brzo i to je bila namjerna odluka. Svaku reviziju i dalje potpisuje netko tko ju je stvarno čitao. Kad to više ne bi bilo moguće, radije bismo odbili posao nego ga predali nekome tko sustav vidi prvi put.
Ne vjerujemo u reviziju koja traje jedan dan. Vjerujemo u onu koja pita prava pitanja.O načinu rada
Kako radimo
Redoslijed je gotovo uvijek isti. Ono što se mijenja je dubina, ovisno o tome koliko je sustav velik i koliko štošta visi o njemu.
Prije koda čitamo dokumentaciju i razgovaramo s autorima. Ako ne razumijemo što bi sustav trebao raditi, ne možemo prepoznati kada radi nešto drugo.
Čitamo kod redak po redak. Bilježimo pretpostavke, rubne slučajeve i mjesta na kojima bi napadač s vremenom i motivom mogao pronaći prostor.
Tek nakon čitanja pokrećemo alate — statičnu analizu i usmjerene testove koji pokušavaju srušiti upravo one pretpostavke koje smo označili kao rizične.
Pišemo jasno. Nalaz, zašto je važan, kako ga ispraviti i što ostaje izvan opsega. Bez žargona koji skriva više nego što otkriva.
Nakon što tim unese izmjene, ponovno pregledavamo pogođena mjesta i izdajemo potvrdu o zatvaranju. Revizija završava tek tada.
U što vjerujemo
Ne ulazimo u vlasničke udjele sustava koje pregledavamo. Naš nalaz ne smije ovisiti o tome hoće li projekt uspjeti ili ne.
Ne obećavamo ono što ne možemo održati. Revizija smanjuje rizik, ali ga ne uklanja. Tko tvrdi suprotno, ne govori istinu.
Što vidimo u vašem kodu ostaje između nas. Nalaze ne dijelimo, ne objavljujemo primjere bez dopuštenja i ne koristimo ih kao reklamu.
Dogovorite kratak uvodni razgovor. Pogledat ćemo opseg i reći iskreno gdje vidimo najviše rizika.