Taula de continguts[Amaga][Espectacle]
Probablement ja sabeu què és DevOps si treballeu a la indústria del programari.
No és d'estranyar que la majoria de les grans empreses estiguin integrant les seves metodologies als seus fluxos de treball, ja que cada cop són més populars entre els desenvolupadors.
Fa uns mesos o fins i tot anys, les principals empreses de programari llançarien regularment nous programes.
Hi havia temps suficient per codi per passar seguretat i qualitat controls de garantia; aquests procediments van ser duts a terme per equips d'experts independents.
Amb l'augment de l'ús dels núvols públics, molts fluxos s'han automatitzat utilitzant noves eines i tecnologies, cosa que permet a les empreses desenvolupar-se més ràpidament i mantenir-se un pas per davant de la competència.
Els programes monolítics van començar a fragmentar-se en components més petits i autònoms després de la introducció dels contenidors i el concepte de microservei.
Això va augmentar la flexibilitat de com es va crear i implementar el programari.
Tanmateix, la majoria dels sistemes de control de seguretat i compliment no van mostrar aquest desenvolupament.
La majoria d'ells no van poder provar el seu codi tan ràpidament com ho exigia un entorn DevOps típic.
La implementació de SecDevOps tenia l'objectiu d'abordar aquest problema i integrar completament les proves de seguretat a les pipelines d'integració contínua (CI) i de lliurament continu (CD), alhora que millorava el coneixement i l'experiència de l'equip de desenvolupament per tal de facilitar les proves internes i el pegat.
Descobriràs més sobre SecDevOps en aquesta peça, inclosa la seva importància, funcionament, bones pràctiques i molt més.
Aleshores, què és SecDevOps?
DevOps és ràpid, robust i automatitzat, i té molts avantatges per si sol.
No obstant això, la integració de la seguretat està limitada, ja que un desplegament més ràpid significa menys finestres de temps per identificar i solucionar defectes de seguretat.
Si la seguretat no s'inclou al procés de creació i llançament mentre es desenvolupen aplicacions amb la intenció d'un desplegament ràpid (el mètode DevOps), és possible que les deixeu obertes a defectes de seguretat importants.
Aquí és on entra en joc SecDevOps (també conegut com DevSecOps o DevOpsSec). Aquest mètode consisteix a incorporar seguretat als processos de desenvolupament i desplegament, com el seu nom indicaria.
SecDevOps és una col·lecció de bones pràctiques dissenyades per integrar profundament la codificació segura en els processos de desenvolupament i desplegament de DevOps.
Sovint s'anomena DevOps dur.
A mesura que creen les seves aplicacions, anima els desenvolupadors a considerar els estàndards i els conceptes de seguretat més a fons. Per mantenir-se al dia amb la metodologia de llançament ràpida de DevOps, els processos i comprovacions de seguretat s'incorporen molt primerenc al cicle de vida.
SecDevOps es divideix en dues parts principals:
Seguretat com a codi (SaC)
En aquest punt, les eines i els procediments del pipeline DevOps haurien d'incorporar seguretat.
Es dedueix que les eines per proves de seguretat d'aplicacions estàtiques (SAST) i proves de seguretat d'aplicacions dinàmiques (DAST) escanejar automàticament les aplicacions creades.
Per això, es prioritzen els processos automatitzats sobre els manuals (tot i que es necessiten processos manuals per a les àrees crítiques de seguretat de l'aplicació).
Els processos i les cadenes d'eines de DevOps han d'incloure la seguretat com a codi. Aquestes eines i la seva automatització han de ser compatibles amb l'arquitectura Continuous Delivery.
Infraestructura com a codi (IaC)
Aquí es fa referència a la col·lecció d'eines DevOps utilitzades per configurar i actualitzar parts d'infraestructura per tal de proporcionar un entorn de desplegament segur i gestionat.
En aquest procés s'utilitzen sovint eines com Chef, Ansible i Puppet.
IaC implica utilitzar les mateixes directrius de desenvolupament de codi per gestionar la infraestructura operativa en lloc de fer actualitzacions manuals de configuració o alteracions mitjançant scripts puntuals.
Com a resultat, en comptes d'intentar pegar i actualitzar els servidors desplegats, un problema del sistema requereix el desplegament d'un servidor controlat per la configuració.
Abans del llançament de l'aplicació, SecDevOps utilitza proves de seguretat contínues i automatitzades. Per garantir la detecció precoç de qualsevol defecte, s'utilitza el seguiment de problemes.
A més, fa ús de l'automatització i les proves per proporcionar comprovacions de seguretat més eficients durant tot el cicle de vida del desenvolupament de programari.
Per què una empresa requereix SecDevOps?
En l'era digital actual, la seguretat ha d'estar al capdavant i la màxima prioritat de totes les organitzacions.
En posar en marxa un model SecDevOps, una empresa està demostrant que és proactiva en lloc de reactiva quan es tracta de seguretat.
El desenvolupament de sistemes forts i d'aplicacions fiables i resilients es fomenta amb una mentalitat corporativa de "Seguretat primer".
En el mercat informàtic molt competitiu actual, les organitzacions no es poden permetre el luxe de tenir defectes de seguretat en els seus sistemes de producció.
Els atacs que utilitzen exploits són costosos i sovint fan inutilitzable un sistema o una organització. SecDevOps dins d'una organització permet un èmfasi continu en la seguretat a tots els nivells de canalització.
Saber que esteu creant programes i sistemes específics amb les característiques i funcionalitats que necessiten els consumidors us proporciona tranquil·litat.
Per assegurar-se que l'empresa compleix amb les millors pràctiques, estàndards i legislació de seguretat, es recomana que l'equip de seguretat participi d'hora i amb freqüència en totes les iniciatives d'enginyeria i no d'enginyeria.
Com funciona SecDevOps?
SecDevOps es preocupa de moure la seguretat cap a l'esquerra. Això vol dir que tothom ha d'assumir la responsabilitat de la seguretat des del principi, fins i tot durant les etapes de planificació, en lloc d'implementar un sistema de resposta a incidents.
En contrast amb el típic s'acosta a la cascada, que situen la seguretat al final del cicle de vida, aquest és un canvi important. La seguretat s'ha de tenir en compte en totes les opcions i al llarg del cicle de vida del desenvolupament.
A més d'utilitzar models d'amenaça, mantenen un entorn de desenvolupament basat en proves amb casos de prova de seguretat.
Heu d'assegurar-vos que les proves de seguretat automatitzades i la integració contínua s'integren al procés.
Per trobar les possibles debilitats de l'aplicació, SecDevOps necessita una comprensió completa de com funciona.
Podeu defensar-lo millor dels riscos de seguretat ara que en sou conscients. Els models d'amenaça s'utilitzen sovint per fer-ho al llarg del cicle de vida del desenvolupament.
Per entendre millor com funciona, mirem un procediment típic de SecDevOps.
Els desenvolupadors utilitzen un sistema de gestió de control de versions. Com a resultat, es facilita la comunicació d'aquests projectes i són capaços de fer un seguiment de qualsevol canvi en les iniciatives de desenvolupament de programari.
Quan treballen en un projecte de codificació de manera col·laborativa, els desenvolupadors poden dividir fàcilment les seves feines mitjançant branques.
- Un desenvolupador escriurà primer codi per al sistema.
- Aleshores, el sistema acceptarà els ajustos.
- Aleshores, el codi es recuperarà del sistema i un altre desenvolupador l'examinarà. Per trobar defectes o vulnerabilitats de seguretat, analitzeu el codi estàtic en aquesta etapa.
El procediment normal de SecDevOps continuarà de la manera següent després d'aquesta etapa:
- Crear un entorn de desplegament per a l'aplicació i aplicar la configuració de seguretat al sistema mitjançant tecnologies IaC com Puppet, Chef i Ansible
- realització de proves de backend, integració, API, seguretat i interfície d'usuari com a part d'una suite d'automatització de proves amb una aplicació recentment implementada.
- desplegar una aplicació i executar-hi proves dinàmiques automàtiques en un entorn de prova.
- Un cop aquestes proves tinguin èxit, implementeu l'aplicació en un entorn de producció.
- Vigilant constantment qualsevol problema de seguretat activa a l'entorn de producció.
Beneficis de SecDevOps
A SecDevOps, l'equip de seguretat estableix les polítiques fonamentals per endavant.
Aquestes regulacions poden cobrir coses com ara estàndards de codi, recomanacions de proves, orientació per a anàlisis estàtiques i dinàmiques, prohibicions d'utilitzar xifratge feble i API no segures, etc.
A més, descriuen factors que necessitarien una acció manual de l'equip de seguretat (per exemple, canvis en l'autenticació o en el model d'autorització, o altres àrees crítiques per a la seguretat).
L'equip de desenvolupament adquireix experiència en seguretat com a resultat d'incloure-la en el procés.
D'aquesta manera, s'assegura que l'extrem del gasoducte tingui el menor nombre de defectes de seguretat possibles. Si una vulnerabilitat persisteix, serà senzill fer una investigació, actualitzar el procediment i fer millores.
La realització dels canvis necessaris a les regles i estàndards de seguretat es facilita amb l'ajuda d'una anàlisi de causes arrel.
Per dir-ho d'una altra manera, amb cada cicle, el resultat millorarà. Assegurar que les escalades de cicle final menys disruptives és un altre objectiu de les millores iteratives.
Els següents són alguns dels avantatges més destacats de SecDevOps:
- Capacitat de reaccionar ràpidament als canvis i demandes
- Detecció precoç de vulnerabilitats de codificació
- Agilitat i rapidesa millorades per a les unitats de seguretat
- Més cooperació i comunicació en equip
- Per alliberar recursos dels membres de l'equip per treballar en activitats de gran valor mitjançant l'automatització
- Més possibilitats de fer proves de qualitat i seguretat, així com de compilacions automatitzades
Estratègies efectives per a SecDevOps
SecDevOps integra seguretat, desenvolupament i operacions per ajudar-los a tots a treballar cap a un únic objectiu millorant el treball en equip, els procediments i les eines.
A causa de la reticència cultural, la comunicació inadequada de l'equip o les limitacions de temps, la incorporació de seguretat al vostre flux de treball de DevOps pot ser una mica aterridor.
Tot i que no hi ha un mètode únic i reeixit que totes les empreses puguin utilitzar per desenvolupar un programa SecDevOps, hi ha certs consells i estratègies que podrien ser útils.
Comenceu implementant un desenvolupament i una formació segurs.
Això no implica que hàgiu d'obligar els vostres enginyers a convertir-se en especialistes en seguretat o a ser competents en eines de seguretat d'avantguarda.
Però voleu pensar a ensenyar-los procediments de seguretat que us ajudaran a protegir el vostre programa. T
o Assegureu-vos que els vostres desenvolupadors puguin comprendre i utilitzar ràpidament procediments de seguretat sòlids, hauríeu d'oferir formació en seguretat que s'adapti exclusivament a ells.
Utilitzeu el control de versions en totes les situacions.
En un context DevOps, cada programari d'aplicació, patró, diagrama i script ha de fer ús d'eines i estratègies de control de versions eficients.
Molts avantatges de seguretat inclouen el control de versions i permet instruccions per:
- Determineu quina versió o funció es va utilitzar quan es va produir un problema de seguretat.
- Fer un seguiment de les activitats de desenvolupament per complir amb les normes legals.
- Busqueu i localitzeu els components nocius o vulnerables que s'hagin afegit al procés de desenvolupament.
Acceptar el concepte de seguretat centrada en les persones
La implementació de la seguretat no hauria de caure sota la competència d'un sol equip.
Per assegurar-vos que tothom assumeix la responsabilitat d'adherir-se als estàndards de seguretat, la vostra empresa hauria d'adoptar una cultura de seguretat centrada en les persones.
Animeu els desenvolupadors, provadors i altres membres del personal a assumir la responsabilitat personal de la seguretat, a més de la formació en seguretat.
SEl seguiment de la seguretat és essencial, però també s'ha d'originar des de l'individu, i cada membre de l'equip n'ha d'assumir la responsabilitat.
Automatitzar el treball regular
La majoria dels sistemes DevSecOps establerts utilitzen l'automatització amb freqüència i d'hora.
Per exemple, l'automatització de les proves de seguretat fa que sigui més senzill detectar qualsevol defecte del vostre codi, la qual cosa accelera el desenvolupament i augmenta la productivitat dels desenvolupadors.
Això és especialment cert a les grans empreses on els enginyers solen executar diverses versions de codi al llarg del dia.
Limitacions de SecDevOps
Tot i que SecDevOps és la metodologia més recent per al desenvolupament d'aplicacions i ofereix diversos avantatges respecte a les tècniques convencionals.
Tanmateix, també té algunes limitacions, que s'enumeren a continuació.
- No es pot desplegar ràpidament ja que és un procediment llarg.
- És necessari formar desenvolupadors en tècniques de codificació segura i vulnerabilitats freqüents, que requereixen temps i recursos addicionals.
- Es pot produir un conflicte d'interessos si l'aplicació no està sotmesa a una avaluació de seguretat independent.
- La fase de planificació del desenvolupament d'aplicacions podria trigar inicialment més a causa de l'extensa definició de polítiques i processos.
Conclusió
A mesura que els equips de seguretat troben contínuament noves maneres d'operar, SecDevOps està despertant l'entusiasme i fomentant la creativitat.
Com que els departaments cooperen entre ells en lloc d'establir llaços competitius, fomenta el creixement organitzatiu.
La implementació de SecDevOps ofereix grans avantatges tècnics i financers a les empreses.
El desenvolupament d'aplicacions i els processos associats són més segurs i productius quan la seguretat és la base, segons el punt de vista de SecDevOps.
Deixa un comentari