Добици:
- Способност разумевања ДевСецОпс-а и златних правила управљања тајнама (не уноси код, чува се у трезору, убацује се у време извршавања, враћа се, најмање привилегије)
- Могућност коришћења вештачке интелигенције за одређивање приоритета излаза безбедносног скенирања (СЦА, САСТ, слика, ИаЦ, тајна) и кода ревизије у одбрамбене сврхе
- Знајући да је први корак у тајном цурењу опозив/поништавање и коришћење вештачке интелигенције само у овлашћеним системима, у одбрамбене сврхе, у законским границама
Колико брзо се систем примењује не значи ништа оног дана када је компромитован. Док се ДевОпс фокусира на брзину, безбедност се понекад оставља до краја — а безбедност препуштена крају често уопште не долази. ДевСецОпс је приступ који поставља безбедност на почетак и на сваки корак ДевОпс тока: „померање безбедности улево“ — то јест, хватање рањивости у цевоводу, док се код пише, а не у прод. За ДевСецОпс професионалце, безбедност није посао посебног тима, већ је део сваке обавезе, сваке слике, сваког манифеста.
У овој јединици постоје две главне осе. Први је управљање тајнама: безбедно генерисање, складиштење, дистрибуција и ротација поверљивих информација као што су лозинке, кључеви, сертификати. Други је безбедносно скенирање и учвршћивање: проналажење рањивости у зависностима, сликама, конфигурацијама. АИ је моћан помоћник у оба случаја — открива рањивости, даје приоритет резултатима скенирања, препоручује исправке. Али најкритичније упозорење овде важи: АИ је за одбрану; Неовлашћени приступ туђем систему, неовлашћено скенирање или креирање алата за напад је незаконит и строго је ограничење ове платформе.
Златна правила управљања тајнама
- Тајна никада не улази у изворни код. Не Доцкерфиле, не ИАМЛ, не скрипт, не Гит. Када се једном уђе у Гит, тајна остаје у прошлости.
- Тајне се чувају у централном трезору. ХасхиЦорп Ваулт, АВС Сецретс Манагер, Азуре Кеи Ваулт, ГЦП Сецрет Манагер — ови чувају тајне шифроване, контролишу приступ и прате их.
- Убризгава се у време операције. Апликација преузима тајну из трезора или променљиве окружења док ради, а не са диска.
- Редовно се ротира. Што дуже тајна живи, већи је ризик од цурења. Аутоматско окретање је идеално.
- Минимална овлашћења. Само сервис коме је то потребно може приступити свакој тајни.
Савет: Једина најефикаснија контрамера је стављање тајног скенера (као што су гит-сецретс, гитлеакс, труффлехог) у цевовод: он зауставља урезивање ако се случајно покуша открити тајна. Ово зауставља цурење на извору. АИ помаже у писању интеграције ових претраживача.
Корак по корак: одговор на тајно цурење
Ако тајна процури, не паничите, важан је редослед:
- Откажите и ротирајте одмах. Поништите процурели кључ, генеришете нови. Само брисање није довољно - остаје у прошлости.
- Процените утицај. Где је овај кључ приступио? Да ли је то злоупотребљено? Прегледајте дневнике.
- Искључите извор. Како је процурило? Чисти код, историју; Али запамтите: отказивање долази пре брисања.
- Спречити. Додајте тајни претраживач у цевовод тако да се не понавља.
Пажња: Најскупља опклада је да не вратите процурелу тајну само зато што је „нико није видео“. Ботови скенирају кључ убачен у јавно складиште у року од неколико секунди. Када сте у недоумици, ротирајте — цена ротације је ниска, цена цурења је катастрофална.
Врсте безбедносних скенирања
ДевСецОпс користи више слојева скенирања; АИ је од помоћи у тумачењу резултата сваког:
- СЦА (анализа софтверског састава): Проналази познате рањивости (ЦВЕ) у зависностима отвореног кода које користите.
- САСТ (статичко тестирање безбедности апликација): Скенира изворни код у потрази за рањивостима без покретања.
- ДАСТ (Динамиц Апплицатион Сецурити Тестинг): Екстерно тестира покренуту апликацију.
- Скенирање слика: Проналази рањивости у слици контејнера (триви, доцкер сцоут).
- ИаЦ скенирање: Проналази погрешне конфигурације у Терраформ/манифестима (тфсец, цхецков).
Опрез: Скенер баца стотине налаза; Немогуће их је све поправити у исто време. Користите АИ да одредите приоритете налаза: који су заиста искористиви, који су очигледни у теорији, али недоступни у пракси? Али проверите коначан приоритет у свом контексту.
Табела растерских слојева
слој
Шта скенира?
узорак возила
када
СЦА
Рањивости зависности (ЦВЕ)
Депендабот, Сник
свака градња
САСТ
Рањивости изворног кода
Семгреп, ЦодеКЛ
Сваки ПР
скенирање слике
Рањивости контејнера
Триви, Сцоут
Након изградње
ИаЦ скенирање
Погрешна конфигурација
тфсец, цхецков
Терраформ ПР
тајно скенирање
Процуреле тајне
гитлеакс
Свака обавеза
три мини кофера
Случај 1 — 300 ЦВЕ, 12 стварних ризика. Скенирање слике пријавило је 300 рањивости; Тим је био парализован. Дајте излаз скенирања АИ и питајте "који се могу даљински експлоатисати и да ли су доступни?" Дали су му приоритет. АИ је истакао 12 стварно ризичних налаза. Тим их је прво затворио; Остале је ангажовао плански. Дајте приоритет над паником.
Случај 2 — ротација је спречила напад. Програмер је случајно гурнуо кључ у облаку у јавно спремиште. Аларм се упалио; Тим је отказао и вратио кључ за 4 минута. Дневници су показали да је кључ већ био упитан од бота - али је сада био неважећи. Брзи преокрет је спречио потенцијалну катастрофу у вези са наплатом и цурење података.
Случај 3 — ИаЦ скенирање је ухватило отворену канту. ИаЦ скенирање уз помоћ вештачке интелигенције ухватило је канту за складиштење у Терраформ коду са дозволом за „јавно читање“ без одласка на прод. Програмер га је отворио „за тестирање“ и заборавио да га затвори. Пипелине је зауставио урезивање; опен никада није стигао до прод. Управо то је поента превлачења улево.
Четири шаблона за копирање
1) Дајте приоритет излазу скенирања:
Дајте приоритет излазу безбедносног скенирања у наставку. За сваки налаз: (1) да ли се заиста може искористити (удаљено/без аутентификације?), (2) да ли је доступан у нашем контексту, (3) напори на санацији, (4) препоручени приоритет (критичан/висок/средњи/низак). Истакните 5 најхитнијих. Говорите јасно; указује на то да треба да потврдим сваки приоритет својим контекстом. Излаз: [СЦАН]
2) Дизајн тајног управљања:
Предложите приступ управљања тајнама за [АПЛИКАЦИЈУ/ИНФРструктуру]: који трезор, како убацити тајне током извршавања, како аутоматизовати ротацију, како применити минималне привилегије? Опишите конкретан ток који НИКАД не уграђује тајну у шифру.
3) Тражење рањивости у коду (одбрана):
Проверите мој СОПСТВЕНИ код у наставку за безбедност (имам дозволу): да ли постоји било каква ињекција, уграђена тајна, небезбедна подразумевана, непотврђен унос? Дајте сваком налазу његову важност и исправку. Сврха је одбрана и консолидација. Шифра: [ЦОДЕ]
4) Тајни план реаговања на цурење:
[ТИП ТАЈНЕ] се можда случајно инфилтрирао на [ЛОКАЦИЈУ]. Дајте ми корак по корак редослед интервенције: шта прво да урадим (отказивање/повратак), како проценити ефекат, како спречити понављање? Такође објасните зашто само брисање није довољно.
Слаби промпт / Јаки промпт
Слабо: "Како да хакујем овај систем/искористим ову рањивост?"
Овај захтев је и неетички и стриктно изван граница ове платформе. Незаконито је користити АИ за напад.
Снажан: „Овластити код моје сопствене апликације ради безбедности: пронађите уграђене тајне, ризике убризгавања и несигурне подразумеване вредности, поправите сваку од њих. Циљ је ојачати систем.“
Разлика: други захтев је у одбрамбене сврхе, у границама овлашћења и за консолидацију. Ово је исправна употреба АИ у ДевСецОпс-у.
Уобичајене грешке
- Уграђивање тајне у код/историју. Најчешћа и упорна рањивост.
- Не враћајући процурелу тајну. „Нико то није видео“ је најскупља опклада.
- Видети све налазе скрининга као једнаке. Бити парализован одређивањем приоритета или пропуштањем стварног ризика.
- Остављајући сигурност да траје. Размак у продукцији је много пута скупљи од јаза у цевоводу.
- Заобилазећи минимална овлашћења. Тајна/улога која има приступ свему чини једно цурење катастрофом.
- Покушавам да користим АИ за напад. Илегално и ван платформе.
Укратко
ДевСецОпс поставља безбедност на почетак и на сваком кораку ДевОпс тока — хватање рањивости у коду и цевоводу, а не у продукцији. Златна правила управљања тајнама: тајна не улази у шифру, чува се у централном трезору, убацује се у току рада, редовно се враћа и приступа јој се са минималним привилегијама. Први корак у цурењу је увек прекид/повратак. АИ је моћна у одређивању приоритета излаза скенирања, дизајнирању тајних токова и дефанзивној инспекцији кода — али се користи само у одбрани иу оквиру законских ограничења на системима над којима имате овлашћења.
Задатак апликације
Преузмите сопствени пројекат (за који имате овлашћења). (1) Проверите уграђене тајне и несигурне подразумеване вредности помоћу шаблона „Тражење рањивости у коду“. (2) Сортирајте излаз безбедносног скенирања (стварни или узорак) кроз шаблон „тријаже“ и идентификујте 3 најхитнија налаза. (3) Направите нацрт тока за свој пројекат помоћу шаблона „дизајн тајног управљања“ који у потпуности уклања тајну из кода.
контролна листа
- [ ] Проверио сам да нема уграђених тајни у мој код, слику и манифесте.
- [ ] Чувам тајне у централном трезору и убацујем их у току рада.
- [ ] Знам да је први корак у сценарију цурења прекид/повратак.
- [ ] Дао сам приоритет налазима скенирања на основу могућности искориштавања и мог контекста.
- [ ] Преместио сам безбедносна скенирања на ране кораке цевовода (лево).
- [ ] Користио сам вештачку интелигенцију само у одбрамбене сврхе на системима у којима имам овлашћења.