bug bounty

VDP vai bug bounty: ar ko sākt

Atjaunināts 5 min lasīšanai

VDP un bug bounty bieži tiek jaukti. VDP ir ievainojamību atklāšanas politika – veids, kā droši saņemt un apstrādāt ziņojumus. Bug bounty tam pievieno atlīdzības. Šis ceļvedis palīdz izvēlēties un parāda, kas Latvijā ir noteikts likumā, nevis atstāts organizācijas ziņā.

Īsā atbilde

Ja organizācijai nav skaidra kanāla ievainojamību ziņojumiem, sāc ar VDP un atbildīgo komandu. Par ziņojumu saņemšanu nav obligāti jāmaksā atlīdzība, taču to pārbaudei un labojumiem vajadzīgs laiks un budžets.

Bug bounty ir nākamais solis, nevis alternatīva. Atlīdzības var piesaistīt vairāk pētnieku un padziļinātus atradumus, bet tās nekompensē trūkstošu triāžas procesu – tās to noslogo.

Trīs formāti blakus

Praksē izvēle nav starp diviem, bet starp trim formātiem. Tie atšķiras ne tik daudz pēc tehnikas, cik pēc tā, cik daudz ienākošā darba tie rada un cik daudz kapacitātes tam vajag.

VDP, privātā un publiskā programma
KritērijsVDPPrivātā programmaPubliskā programma
MērķisDroši saņemt ziņojumusPārbaudīt procesu ar reālu slodziPlašāka pētnieku iesaiste
AtlīdzībaNav obligāta; atzinība vai atsevišķa atlīdzību programmaIr, ierobežotam lokamIr, publiski zināma tabula
Pētnieku loksIkviens, kas atrod politikuTikai uzaicinātieIkviens
Ziņojumu apjomsAtkarīgs no tvēruma un pētnieku iesaistesIetekmējams ar dalībnieku loku un tvērumuVar būt augsts; jāparedz dublikātu apstrāde
Vajadzīgā triāžaAtbildīgais un aizvietošanas kārtībaDežūra darbdienāsNepārtraukta kapacitāte
Kad izvēlētiesVienmēr – tas ir pamatsKad triāža jau darbojasKad procesi iztur slodzi
Tabula ilustrē plānošanas atšķirības; ziņojumu skaits, kvalitāte un nepieciešamā kapacitāte nav garantēti. VDP elementus saviem adresātiem nosaka CISA BOD 20-01. Konkrētās atlīdzības un dalības nosacījumus organizācija nosaka programmas noteikumos.

Pāreja no rindas uz rindu nav automātiska. Katrs solis pa labi paredz, ka iepriekšējais tiešām darbojas: ziņojumus kāds lasa, atbild un nodod tālāk izstrādei ar prioritāti.

Kas ir VDP un kas tajā jāraksta

VDP ir publiska politika, kas nosaka, kuras sistēmas drīkst testēt, kā ziņot un ko organizācija sola pretī. Naudas atlīdzība nav VDP obligāta sastāvdaļa; politika var darboties līdzās atlīdzību programmai. Tās vērtība ir tieši paredzamībā: pētnieks zina, ka viņa ziņojumu gaida, un organizācija zina, kur tas nonāks.

CISA saistošais rīkojums BOD 20-01 ir viens no skaidrāk formulētajiem publiskajiem paraugiem. Tas prasa politikā norādīt, kuras sistēmas ir tvērumā (vismaz vienai internetā pieejamai darba sistēmai jābūt tvērumā jau publicēšanas brīdī), kādi testēšanas veidi ir atļauti, kur ziņojumus sūtīt un kāda informācija nepieciešama ievainojamības atrašanai un analīzei. Rīkojums ir saistošs attiecīgajām ASV federālajām civilajām iestādēm; Latvijas organizācijai tas ir piemērs, kas jāpielāgo vietējam regulējumam.

Tikpat noderīgi ir tas, ko šis rīkojums aizliedz politikā iekļaut. Šie ierobežojumi ir laba pārbaude arī privāta uzņēmuma politikai:

  • politika nedrīkst prasīt, lai iesniedzējs norāda personas datus – kontaktinformāciju var lūgt tikai brīvprātīgi;
  • politika nedrīkst ierobežot testēšanu tikai ar iepriekš pārbaudītām vai reģistrētām personām, tai jādod pilnvarojums plašai sabiedrībai;
  • politika nedrīkst mēģināt liegt iesniedzējam atklāt ievainojamību citiem, izņemot lūgumu par saprātīgi ierobežotu atbildes termiņu;
  • politikai jānorāda izdošanas datums un jāsniedz apņemšanās, cik ātri iesniedzējs var gaidīt apstiprinājumu.

Latvijā koordinētā atklāšana jau ir likumā

Nacionālās kiberdrošības likuma VI nodaļa nosaka koordinētas ievainojamību atklāšanas un novēršanas kārtību. Praktiskās sekas ir svarīgas: ja organizācija ir likuma subjekts, tā jau atrodas ziņošanas un novēršanas režīmā neatkarīgi no tā, vai tai ir publicēta politika.

Subjekts kompetentās kiberincidentu novēršanas institūcijas noteiktajā termiņā, bet ne vēlāk kā 90 dienu laikā pēc informācijas saņemšanas veic ievainojamības novēršanai nepieciešamās darbības un par ievainojamības novēršanas gaitu informē kompetento kiberincidentu novēršanas institūciju.– Nacionālās kiberdrošības likuma 40. panta pirmā daļa

Objektīvu iemeslu dēļ termiņu var pagarināt, bet ne vairāk kā līdz 180 dienām no ievainojamības atklāšanas ziņojuma iesniegšanas brīža (40. panta otrā daļa). Organizācijas, uz kurām šis pienākums neattiecas, var pēc savas iniciatīvas vienoties ar iesniedzēju par savu termiņu (40. panta trešā daļa) – un tieši to publicēta politika arī dara.

Valsts pārvaldē process jau darbojas praksē. CERT.LV ir izveidojusi ievainojamību ziņošanas platformu cvd.cert.lv, kurā valsts un pašvaldību iestādes brīvprātīgi reģistrē IKT resursus, par kuriem vēlas saņemt pētnieku ziņojumus, un uztur saziņu ar iesniedzējiem. Privātam uzņēmumam tas ir tuvākais vietējais paraugs tam, kā izskatās publicēts tvērums un ziņošanas kanāls.

Otrā pusē likums uzliek pienākumu arī atradējam: ja ievainojamība konstatēta likuma subjekta sistēmā, ievainojamības atklāšanas ziņojums nekavējoties jāiesniedz kompetentajai kiberincidentu novēršanas institūcijai ne vēlāk kā piecu darbdienu laikā, un informācija par ievainojamību ir ierobežotas pieejamības informācija, par kuras neizpaušanu atbild abas puses (39. panta pirmā un piektā daļa). Ziņojuma saturs ir aprakstīts ceļvedī kas ir bug bounty.

Kad pievienot atlīdzības

Atlīdzības ir vērts pievienot tad, kad VDP jau strādā un galvenā problēma vairs nav ziņojumu trūkums, bet to dziļums. Nauda piesaista pētniekus, kuri velta laiku sarežģītākām ķēdēm, nevis tikai vienkāršiem atradumiem.

  • Ziņojumus kāds izlasa un atbild tajā pašā nedēļā, arī atvaļinājumu laikā.
  • Ir skaidrs, kā atradums nonāk izstrādes komandas darbu sarakstā, un kāds seko līdzi tā statusam.
  • Pēdējos mēnešos ienākušie ziņojumi vairs neatkārto vienas un tās pašas zināmās problēmas.
  • Ir izlemts, kurš apstiprina izmaksu un no kāda budžeta tā notiek.
  • Ir tvēruma un ārpus tvēruma saraksts, ko var publicēt bez papildu saskaņošanas.

Cik ilgi kļūdu drīkst turēt nepubliskotu

Publiskošanas termiņš ir biežākais strīda punkts starp pētnieku un organizāciju. Šeit noder ārējs atskaites punkts, nevis sarunas katrā gadījumā no jauna.

CISA BOD 20-01 apspriež 45–90 dienas kā pētnieku kopienā izmantotu publiskošanas atskaites punktu. Tas nav vispārējs likumā noteikts termiņš vai Latvijas pētniekam piešķirta publiskošanas atļauja.

Latvijas likumā noteiktais ievainojamības novēršanas termiņš nav automātiska atļauja to publiskot. 39. panta piektā daļa paredz ierobežotas pieejamības informācijas aizsardzību. Publiskošanas kārtību saskaņo ar kompetento institūciju un iesaistītajām pusēm, ņemot vērā konkrēto tiesisko režīmu. CISA ārvalstu piemērs šo pienākumu neaizstāj.

CISA formulē arī pieņēmumu, ar kuru ir vērts strādāt: jebkuru ievainojamību, ko atradis godprātīgs pētnieks, tikpat viegli varēja jau atrast arī ļaunprātīgs uzbrucējs. Termiņš tāpēc nav pieklājības jautājums pret pētnieku, bet riska jautājums pret sevi.

Biežākās kļūdas, pārejot uz atlīdzībām

  • Tvērums bez aizliegumu saraksta. Ja nav uzrakstīts, kuras sistēmas un metodes ir ārpus robežas, pētnieki šo robežu atradīs eksperimentāli – un pirmais mēģinājums var trāpīt darba sistēmas datubāzē.
  • Atbildes termiņš bez dežūras. Politikā solītas trīs darbdienas neko nenozīmē, ja vienīgais triāžas cilvēks ir atvaļinājumā. Apņemies tikai to, ko komanda iztur arī jūlijā.
  • Atlīdzība pēc kļūdas veida, ne pēc ietekmes. Viena un tā pati kļūdas klase mārketinga lapā un norēķinu portālā nav viena un tā pati kļūda, bet vienots cenrādis tās samaksā vienādi.
  • Nepateikta dublikātu un noraidīšanas kārtība. Ja noraidīšanas iemesli nav pateikti iepriekš, katrs noraidījums pārvēršas sarakstē un triāžas laiks aiziet strīdiem, nevis labošanai.
  • Samaksāts, bet neizlabots. Atradums, par kuru atlīdzība izmaksāta, bet kurš nav aizvērts ar atkārtotu pārbaudi, nozīmē, ka organizācija ir nopirkusi ziņojumu, nevis novērsusi risku.

Ko darīt tagad

  1. Publicē politiku vienā paredzamā vietā un norādi tajā izdošanas datumu.
  2. Nosaki tvērumu, ārpus tvēruma sarakstu un aizliegtās testēšanas metodes.
  3. Norādi vienu kanālu ziņojumiem un pārliecinies, ka to lasa cilvēks, nevis tikai automātiska sistēma.
  4. Ieraksti apņemšanos par apstiprinājuma termiņu un par to, ka ziņot drīkst anonīmi.
  5. Vienojies iekšēji, kurš piešķir smaguma pakāpi un kurš atbild par labojumu.
  6. Kad tas darbojas divus vai trīs mēnešus, uzaicini nedaudzus pētniekus privātā programmā ar pirmajām atlīdzībām.

Avoti

  1. Nacionālās kiberdrošības likums likumi.lv 39. un 40. pants nosaka piecu darbdienu ziņošanas termiņu, 90 dienu novēršanas termiņu un tā pagarinājumu līdz 180 dienām.
  2. BOD 20-01: Develop and Publish a Vulnerability Disclosure Policy CISA · 2020 Uzskaita, kas politikā jāiekļauj un ko tajā iekļaut nedrīkst, un formulē 45–90 dienu publiskošanas atskaites punktu.
  3. Koordinētas ievainojamību atklāšanas process (CVD) CERT.LV Apraksta CVD ieviešanu valsts pārvaldē un CERT.LV uzturēto ievainojamību ziņošanas platformu cvd.cert.lv.
  4. Coordinated Vulnerability Disclosure Policies in the EU ENISA · 2022 ENISA pārskats par koordinētas ievainojamību atklāšanas politikām ES dalībvalstu līmenī.
  5. Common Vulnerability Scoring System v3.1: Specification Document FIRST Smaguma pakāpju skala, pēc kuras programmās sarindo ziņojumus un piesaista atlīdzības.

Biežāk uzdotie jautājumi

Saistītie jautājumi

Vai VDP ir obligāts?

Nacionālās kiberdrošības likuma 39. un 40. pants nenosaka vispārēju pienākumu publicēt VDP tīmekļa lapu. Citu piemērojamo regulējumu un līgumu prasības jāvērtē atsevišķi. Nacionālās kiberdrošības likuma 40. panta pirmā daļa uzliek subjektam pienākumu novērst ievainojamību ne vēlāk kā 90 dienu laikā pēc informācijas saņemšanas. VDP ir vienkāršākais veids, kā nodrošināt, ka informācija vispār nonāk pie tevis laikā.

Vai var izlaist VDP un uzreiz sākt ar atlīdzībām?

Tehniski jā, bet nav ieteicams. Bez sagatavota triāžas procesa atlīdzību programma ātri kļūst nepārvaldāma, un pirmais, kas cieš, ir atbildes ātrums.

Vai politikā drīkst prasīt pētnieka personas datus?

CISA BOD 20-01 to skaidri aizliedz saviem adresātiem: kontaktinformāciju drīkst lūgt tikai brīvprātīgi. Latvijā likums paredz tiesības iesniegt ievainojamības atklāšanas ziņojumu anonīmi vai lūgt neatklāt identitāti (39. panta sestā daļa), tāpēc anonīmas ziņošanas iespēju ir vērts paredzēt arī privāta uzņēmuma politikā.

Cik ilgs publiskošanas logs ir saprātīgs?

Vienu universālu termiņu noteikt nevar. CISA piemērs ar 45–90 dienām nav Latvijas publiskošanas atļauja. Likuma 40. pants nosaka novēršanas termiņu, savukārt 39. panta piektā daļa aizsargā ievainojamības informāciju. Publiskošanu saskaņo atbilstoši šim režīmam.

Vai VDP nozīmē, ka jāatļauj testēt visu?

Nē. Atļauto tvērumu un metodes nosaka politika; testēšanai jābūt pilnvarotai. CISA prasība par vismaz vienu internetā pieejamu darbības sistēmu attiecas uz konkrētā ASV rīkojuma adresātiem, nevis automātiski uz katru Latvijas VDP.