Рэйтынг бібліятэк, якія патрабуюць асаблівай праверкі бяспекі

Сфарміраваны пры арганізацыі Linux Foundation фонд Асноўныя інфраструктурныя ініцыятывы, у рамках якога вядучыя карпарацыі аб'ядналі свае намаганні ў напрамку забеспячэння падтрымкі адкрытых праектаў, задзейнічаных у ключавых галінах кампутарнай індустрыі, правёў другое даследаванне ў рамках праграмы Перапіс, Нацэленай на выяўленне адкрытых праектаў, якія маюць патрэбу ў першачарговым аўдыце бяспекі.

Другое даследаванне арыентавана на аналіз сумесна выкарыстоўванага адкрытага кода, няяўна прымяняецца ў розных карпаратыўных праектах у форме залежнасцяў, загружаных з знешніх рэпазітароў. Уразлівасці і кампраметацыя распрацоўнікаў іншых кампанентаў, задзейнічаных у працы прыкладанняў (supply chain), могуць звесці на нішто ўсе намаганні па ўдасканаленні абароны асноўнага прадукта. У выніку даследавання было безумоўна 10 найболей часта выкарыстоўваных пакетаў на JavaScript і Java, бяспека і актыўнасць суправаджэння якіх патрабуе адмысловай увагі.

Бібліятэкі JavaScript з рэпазітара npm:

  • асінхроннай (196 тысяч радкоў кода, 11 аўтараў, 7 комітараў, 11 незачыненых праблем);
  • успадкоўвае (3.8 тысячы радкоў кода, 3 аўтары, 1 комітэр, 3 незакрытыя праблемы);
  • isarray (317 радкоў кода, 3 аўтары, 3 комітэры, 4 незакрытыя праблемы);
  • kind-of (2 тысячы радкоў кода, 11 аўтараў, 11 комітараў, 3 незакрытыя праблемы);
  • лодаш (42 тысячы радкоў кода, 28 аўтараў, 2 комітары, 30 незачыненых праблем);
  • minimist (1.2 тысячы радкоў кода, 14 аўтараў, 6 комітараў, 38 незачыненых праблем);
  • тубыльцы (3 тысячы радкоў кода, 2 аўтары, 1 комітэр, няма незачыненых праблем);
  • qs (5.4 тысяч радкоў кода, 5 аўтараў, 2 комітара, 41 незачыненая праблема);
  • readable-stream (28 тысяч радкоў кода, 10 аўтараў, 3 комітара, 21 незачыненая праблема);
  • string_decoder (4.2 тысячы радкоў кода, 4 аўтары, 3 комітэры, 2 незакрытыя праблемы).

Бібліятэкі Java з рэпазітараў Maven:

  • jackson-core (74 тысячы радкоў кода, 7 аўтараў, 6 комітараў, 40 незачыненых праблем);
  • jackson-databind (74 тысячы радкоў кода, 23 аўтараў, 2 комітараў, 363 незачыненых праблем);
  • guava.git, бібліятэкі Google для Java (1 мільён радкоў кода, 83 аўтара, 3 комітара, 620 незачыненых праблем);
  • commons-codec (51 тысяча радкоў кода, 3 аўтары, 3 комітэры, 29 незачыненых праблем);
  • commons-io (73 тысячы радкоў кода, 10 аўтараў, 6 комітараў, 148 незачыненых праблем);
  • httpcomponents-client (121 тысяча радкоў кода, 16 аўтараў, 8 комітараў, 47 незачыненых праблем);
  • httpcomponents-core (131 тысяча радкоў кода, 15 аўтараў, 4 комітара, 7 незачыненых праблем);
  • logback (154 тысячы радкоў кода, 1 аўтар, 2 комітэры, 799 незачыненых праблем);
  • commons-lang (168 тысяч радкоў кода, 28 аўтараў, 17 комітараў, 163 незачыненых праблемы);
  • slf4j (38 тысяч радкоў кода, 4 аўтары, 4 комітэры, 189 незакрытых праблемы);

У справаздачы таксама разгледжаны пытанні стандартызацыі схемы наймення знешніх кампанентаў, абароны ўліковых запісаў распрацоўшчыкаў і падтрымання састарэлых версій пасля фарміравання новых значных выпускаў. Дадаткова арганізацыяй Linux Foundation апублікаваны дакумент з практычнымі рэкамендацыямі па арганізацыі бяспечнага працэсу распрацоўкі адчыненых праектаў.

У дакуменце разгледжаны пытанні размеркавання роляў у праекце, стварэння каманд, якія адказваюць за бяспеку, вызначэння палітыкі бяспекі, сачэння за паўнамоцтвамі, якія маюць удзельнікі праекта, карэктнага выкарыстання Git пры выпраўленні ўразлівасцяў для пазбягання ўцечак да публікацыі выпраўлення, вызначэння працэсаў рэагавання на паведамленні аб праблемах з бяспекай, укаранення сістэм тэсціравання бяспекі, прымянення працэдур рэцэнзавання кода, уліку звязаных з бяспекай крытэрыяў пры фарміраванні рэлізаў.

Крыніца: opennet.ru

Дадаць каментар