seguretat

January 17, 2019
blog (1)

Com protegir les teves aplicacions contra atacs cibernètics

 

Protegir les teves aplicacions de atacs cibernètics implica millorar els problemes de seguretat durant el cicle de vida del lliurament de l'aplicació, construint sistemes que siguin ràpids, flexibles i segurs.

El desenvolupament d'un software modern ha de contenir un codi que compleixi amb els requisits funcionals del client. Aquest codi ha de caracteritzar-se pel seva velocitat i flexibilitat per a permetre l'evolució de les demandes IT, però sempre conservant l'estabilitat i fiabilitat. És necessari dissenyar una interfície fàcil d'usar, optimitzar una base de dades i, sovint, configurar i mantenir un flux de lliurament. Però abans de res hem de tenir en compte la seguretat. No volem construir un sistema amb vulnerabilitats de seguretat per a evitar que es vegi compromès.

La seguretat i el rendiment són dos conceptes bàsics que tot desenvolupador hauria de tenir en ment a l'hora de dissenyar aplicacions. El problema sol ser que els requisits de seguretat acostumen a ser vagues i la proliferació d'amenaces van en augment. Identificar aquestes amenaces requereix temps i diners.

 

Seguretat en el desenvolupament d'aplicions web

A continuació assenyalarem les àrees comunes d'una aplicació web pel que fa als riscos de seguretat que els desenvolupadors han de tenir particularment en compte, proporcionant una orientació sobre com abordar cada risc.

 

Confiança

Abans de res és important no confiar en la integritat de la sol·licitud provinent del navegador de l'usuari i tampoc confiar que els serveis upstream han netejat les nostres dades.

La connexió entre el navegador de l'usuari i la nostra aplicació pot ser alterada i els serveis i magatzems de dades dels quals depenem també pot haver estat vulnerats.

En definitiva, és necessari identificar les vulnerabilitats i abordar les amenaces que vagin sorgint.
 

Rebuig d'entrada de formulari inesperat

Els formularis HTML semblen ser capaços de controlar l'entrada. Proporcionant o no el formulari, la nostra escala de confiança en la seguretat és pràcticament nul·la encara que la connexió estigui protegida per HTTPS. L'usuari podria modificar el marcat molt fàcilment abans d'enviar-lo, o usar una aplicació de línia de comandos per a enviar dades inesperades. O un usuari innocent podria estar enviant de forma involuntària una versió modificada d'un formulari des d'un lloc web hostil. Per a garantir la integritat de les dades entrants, la validació ha de gestionar-se en el servidor.

Ens podem enfrontar a un problema de seguretat depenent de la lògica de l'aplicació i de la codificació de sortida, generant un comportament inesperat, pèrdua de dades i fins i tot un atacant podria trobar una forma de trencar els límits de les dades d'entrada en codi executable.
 

La validació de dades

La validació d'entrada o validació de dades és un test que es realitza per a qualsevol entrada proporcionada per un usuari o aplicació. La validació d'entrada evita que les dades no aptes entrin en un sistema d'informació. A vegades és difícil detectar a un usuari malintencionat que intenta atacar el software, les aplicacions han de verificar i validar totes les entrades ingressades en un sistema. A través de la validació de dades aconseguim evitar que aquests produeixin resultats inesperats, per exemple, violacions de la lògica empresarial, desencadenament d'errors o la presa de control dels recursos per part d'un atacant o fins i tot la presa de control de l'aplicació en si. L'entrada que s'avalua en el servidor com a codi executable, com una consulta de base de dades, o que s'executa en el client com a HTML Javascript és particularment perillosa.

Els desenvolupadors sovint creen aplicacions amb almenys alguna validació d'entrada bàsica. Un desenvolupador pot minimitzar el perill de les entrades no de confiança per a evitar efectes no desitjats en el codi de l'aplicació.

 

Codificar sortida HTML

A més de limitar les dades que arriben a una aplicació, els desenvolupadors d'aplicacions web han de prestar molta atenció a les dades de sortida. Una aplicació web moderna generalment té un marcat HTML bàsic per a l'estructura del document, CSS per a l'estil del document, Javascript per a la lògica de l'aplicació i contingut generat per l'usuari que pot ser qualsevol d'aquestes coses. És tot el text. I sovint tot està renderitzat en el mateix document.

 

Altres tècniques per a reduir la violació de seguretat

 

També existeixen algunes tècniques bàsiques que els desenvolupadors podrien i haurien d'utilitzar per a reduir les possibilitats d'una violació de la seguretat:

 

  • Precaucions i advertiments.
  • Paràmetres d'enllaç per a consultes de base de dades.
  • Protecció de les dades en trànsit.
  • Sol·licita contrasenyes segures als teus usuaris amb ús d'algorisme criptogràfic.
  • Autenticar usuaris de forma segura.
  • Protegir les sessions dels usuaris.
  • Autoritzar accions. 

     

La seguretat de l' aplicació web és un component central de qualsevol negoci basat en la web. A més d'aquests consells pel desenvolupament d'aplicacions web, és convenient integrar una estratègia de seguretat per a protegir-se contra atacs DDoS, Application Layer i els atacs de DNS.

 

New call-to-action

  

Cloudflare, la protección e impulso que necesita tu negocio