En penetrationstestare gör samma sak som en inkräktare: letar efter en väg in och använder den. Lagarna om dataintrång i de flesta länder frågar inte efter avsikter. De frågar om åtkomsten var tillåten. Hela skillnaden mellan en tjänst och ett brott är en uppsättning dokument, underskrivna av rätt person innan arbetet börjar.
Den här artikeln beskriver de dokumenten. Den är inte juridisk rådgivning: lagarna skiljer sig mellan länder, och dina jurister avgör vad som gäller för dig.
Dokumenten
Avtal
Det kommersiella avtalet: vad som ska göras, till när, till vilket pris och med vilket ansvar och vilken sekretess. Avtalet ensamt är inte tillståndet. Det förpliktar parterna gentemot varandra, men det anger inte i sig vad som får angripas.
Skriftligt tillstånd
Den förklaring genom vilken systemens ägare tillåter testet. Den bör ange:
- systemen, med adress, domän eller en annan entydig identifierare;
- den period under vilken testning är tillåten;
- de personer eller det företag som får testa;
- den som skriver under och i vilken egenskap den personen skriver under.
Testarna bär det med sig, bokstavligen eller bildligt, under hela uppdraget. När en hostingleverantör eller en polismyndighet frågar vad som pågår är det det här dokumentet som ger svaret.
Uppdragsregler
De tekniska gränserna: vilka tekniker som är tillåtna och vilka som är undantagna, tiderna för testning, anropstakten, vad som händer när ett system blir instabilt, vem testarna ringer på natten. NIST SP 800-115 behandlar uppdragsreglerna som en obligatorisk del av planeringen, och PTES placerar dem i fasen före uppdraget (pre-engagement) av samma skäl: frågor som inte avgörs före testet avgörs under en incident.
Beskrivning av omfattningen
Listan över vad som ingår och vad som inte ingår. Undantagen är lika viktiga som det som ingår: betaltjänstleverantören bakom kassan, hostingföretagets delade plattform, tjänsten för single sign-on som tillhör moderbolaget.
Sekretess och dataskydd
Ett sekretessavtal (NDA), underskrivet innan tekniska detaljer utbyts. Där personuppgifter kan förekomma, ett personuppgiftsbiträdesavtal. I Europeiska unionen följer det av artikel 28 i GDPR när testaren behandlar personuppgifter för kundens räkning.
Vem som får skriva under
Tillståndet är värt lika mycket som behörigheten hos den som skriver under det.
- Systemets ägare, inte dess användare. Ett företag kan inte ge tillstånd till testning av en SaaS-produkt som det prenumererar på.
- En person med behörighet att företräda företaget. En utvecklare som beställer ett test av arbetsgivarens produktionssystem utan ledningens vetskap har inte gett tillstånd till någonting.
- Varje ägare, om det finns flera. Ett system som ett företag driver på ett annat företags infrastruktur kan behöva båda.
En noggrann leverantör verifierar det här: slår upp företaget i handelsregistret, tar reda på vem som äger domänerna och bekräftar beställningen via en officiell kanal hos företaget. En leverantör som inte frågar borde oroa dig.
Tredje parter
Ditt tillstånd omfattar det som är ditt. Runt omkring finns det oftast system som inte är det.
Molnleverantörer. De stora leverantörerna publicerar policyer för testning av resurser som kunder kör på deras plattformar. När den här artikeln skrivs tillåter AWS, Microsoft Azure och Google Cloud att kunder testar sina egna resurser utan föregående godkännande, inom de regler som var och en av dem publicerar; AWS anger också vilka tjänster som får testas. Alla tre begränsar överbelastningstester. Policyerna ändras, så de ska läsas före varje uppdrag och inte återges ur minnet från det förra.
Hosting och hanterade tjänster. Delad hosting, hanterade databaser och nätverk för innehållsleverans (CDN) har egna villkor. Vissa kräver att de informeras i förväg, andra förbjuder testning helt.
Leverantörer och partner. En integration med en partner utsträcker inte ditt tillstånd till partnerns sida av den. Utan partnerns skriftliga samtycke stannar testningen vid din gräns.
De vanliga luckorna
- Testet har börjat, tillståndet ”håller på att skrivas under”.
- Omfattningen anger en domän, och applikationen bakom den flyttade till en annan adress förra månaden.
- Tillståndet är underskrivet av någon som inte hade behörighet att skriva under det.
- Produktionsmiljön ingår i omfattningen, och ingen har informerat driftteamet.
- Ett dotterbolag i ett annat land testas med moderbolagets tillstånd.
Var och en av dem gör ett tillåtet test otillåtet för en del av arbetet, och ingen av dem syns från den tekniska sidan.
Bug bounty är också ett tillstånd
Ett bug bounty-program är ett tillstånd som ges offentligt: programmets policy anger vad som får testas och hur, och den som följer den agerar med ägarens tillstånd. En safe harbour-klausul lägger till ägarens åtagande att inte vidta rättsliga åtgärder mot säkerhetsforskare som håller sig inom policyn. Den binder bara ägaren. Den ändrar inte strafflagen och binder inte tredje parter. Därför måste policyn följas exakt, och därför är ett system utan program inget mål.
Kort sagt
Innan det första paketet skickas bör det finnas ett avtal, ett skriftligt tillstånd som är underskrivet av någon som har behörighet att skriva under det, uppdragsregler, en omfattning med undantag och samtycke från varje tredje part vars system berörs. Hur vi hanterar det här i detalj beskrivs på sidan ”Uppdragets gång”.