Įsilaužimų testuotojas daro tą patį, ką ir įsibrovėlis: ieško kelio vidun ir juo pasinaudoja. Daugumos šalių kompiuterinių nusikaltimų įstatymai neklausia apie ketinimus. Jie klausia, ar prieiga buvo leista. Visas skirtumas tarp paslaugos ir teisės pažeidimo – dokumentų rinkinys, kurį prieš pradedant darbą pasirašo tinkamas asmuo.
Šiame straipsnyje aprašomi tie dokumentai. Tai nėra teisinė konsultacija: skirtingose šalyse teisė skiriasi, o kas taikoma jums, sprendžia jūsų teisininkai.
Dokumentai
Sutartis
Komercinis susitarimas: kas daroma, iki kada, už kiek, su kokia atsakomybe ir konfidencialumu. Vien sutartis nėra leidimas. Ji nustato šalių įsipareigojimus viena kitai, bet savaime nenurodo, ką galima atakuoti.
Rašytinis leidimas
Pareiškimas, kuriuo sistemų savininkas leidžia atlikti testą. Jame turėtų būti nurodyta:
- sistemos – adresu, domenu ar kitu vienareikšmiu identifikatoriumi;
- laikotarpis, kuriuo leidžiama testuoti;
- asmenys arba įmonė, kuriems leidžiama testuoti;
- pasirašantis asmuo ir pagrindas, kuriuo remdamasis jis pasirašo.
Testuotojai jį turi su savimi – tiesiogine ar perkeltine prasme – viso projekto metu. Kai prieglobos paslaugų teikėjas ar teisėsaugos institucija klausia, kas vyksta, atsakymas yra būtent šis dokumentas.
Testavimo taisyklės
Techninės ribos: kokios technikos leidžiamos ir kokios draudžiamos, testavimo valandos, užklausų dažnis, kas daroma, kai sistema tampa nestabili, kam skambinti naktį. NIST SP 800-115 laiko testavimo taisykles privaloma planavimo dalimi, o PTES dėl tos pačios priežasties priskiria jas pasirengimo projektui etapui: klausimai, neišspręsti prieš testą, sprendžiami incidento metu.
Apimties aprašas
Sąrašas to, kas patenka į apimtį ir kas nepatenka. Išimtys svarbios ne mažiau nei tai, kas įtraukta: mokėjimų paslaugų teikėjas už apmokėjimo puslapio, prieglobos bendrovės bendra platforma, patronuojančiajai įmonei priklausanti vieningo prisijungimo (angl. single sign-on) paslauga.
Konfidencialumas ir duomenų apsauga
Konfidencialumo sutartis (NDA), pasirašoma prieš keičiantis techninėmis detalėmis. Jei galima susidurti su asmens duomenimis, – duomenų tvarkymo sutartis. Europos Sąjungoje tai išplaukia iš BDAR 28 straipsnio, kai testuotojas tvarko asmens duomenis kliento vardu.
Kas gali pasirašyti
Leidimas vertas tiek, kiek įgaliojimų turi jį pasirašęs asmuo.
- Sistemos savininkas, o ne jos naudotojas. Įmonė negali leisti testuoti SaaS produkto, kurį ji prenumeruoja.
- Asmuo, turintis teisę prisiimti įsipareigojimus įmonės vardu. Programuotojas, kuris be vadovybės žinios užsako darbdavio gamybinės sistemos testą, nieko neleido.
- Kiekvienas savininkas, jei jų keli. Sistemai, kurią viena įmonė eksploatuoja kitos įmonės infrastruktūroje, gali prireikti abiejų įmonių leidimo.
Kruopštus paslaugų teikėjas tai patikrina: peržiūri komercinį registrą, domenų nuosavybę ir patvirtina užsakymą oficialiu įmonės kanalu. Paslaugų teikėjas, kuris neklausia, turėtų jums kelti nerimą.
Trečiosios šalys
Jūsų leidimas apima tai, kas jūsų. Aplink paprastai yra sistemų, kurios jums nepriklauso.
Debesijos paslaugų teikėjai. Didieji paslaugų teikėjai skelbia taisykles, kaip galima testuoti išteklius, kuriuos klientai naudoja jų platformose. Šio straipsnio rašymo metu AWS, „Microsoft Azure“ ir „Google Cloud“ leidžia klientams be išankstinio pritarimo testuoti savo išteklius, laikantis kiekvieno iš jų skelbiamų taisyklių; AWS taip pat nurodo paslaugas, kurias galima testuoti. Paslaugos trikdymo (DoS) testavimą riboja jie visi. Taisyklės keičiasi, todėl jos tikrinamos prieš kiekvieną projektą, o ne prisimenamos iš ankstesnio.
Priegloba ir valdomosios paslaugos. Bendroji priegloba, valdomosios duomenų bazės ir turinio pristatymo tinklai turi savo sąlygas. Vieni reikalauja apie testavimą pranešti, kiti jį visai draudžia.
Tiekėjai ir partneriai. Integracija su partneriu neišplečia jūsų leidimo iki partnerio pusės. Be rašytinio partnerio sutikimo testavimas sustoja ties jūsų riba.
Įprastos spragos
- Testas jau prasidėjo, o leidimas vis dar „pasirašomas“.
- Apimtyje nurodytas domenas, o už jo veikusi taikomoji programa praėjusį mėnesį perkelta kitu adresu.
- Leidimą pasirašė asmuo, neturėjęs įgaliojimų jo pasirašyti.
- Gamybinė aplinka patenka į apimtį, bet administravimo komandai niekas nepranešė.
- Dukterinė įmonė kitoje šalyje testuojama pagal patronuojančiosios įmonės leidimą.
Dėl kiekvienos iš jų dalis leisto testo tampa neleistina, ir nė vienos iš jų nematyti iš techninės pusės.
„Bug bounty“ programa – taip pat leidimas
„Bug bounty“ programa yra viešai duotas leidimas: programos politikoje nurodyta, ką ir kaip galima testuoti, o kas jos laikosi, veikia su savininko leidimu. „Saugaus uosto“ (angl. safe harbour) nuostata papildomai įtvirtina savininko įsipareigojimą nesiimti teisinių veiksmų prieš tyrėjus, kurie laikosi politikos. Ji įpareigoja tik savininką. Ji nekeičia baudžiamosios teisės ir neįpareigoja trečiųjų šalių, todėl politikos reikia laikytis tiksliai, o sistema be programos nėra taikinys.
Trumpai
Prieš išsiunčiant pirmąjį paketą turi būti sutartis, rašytinis leidimas, pasirašytas asmens, turinčio teisę jį pasirašyti, testavimo taisyklės, apimtis su išimtimis ir kiekvienos trečiosios šalies, kurios sistemos paliečiamos, sutikimas. Kaip tai tvarkome, išsamiai aprašyta puslapyje „Projekto eiga“.