Prácticas seguras de programación para sistemas Web

Submitted by gwolf on Thu, 12/10/2009 - 14:41
Written in...: 
2009

The Computer Security field is often seen as one where work is mostly devoted to research (finding new bug/vulnerability categories), reactive (fixing bugs as they are found, or even proactively looking for them), or in the worst case, a field where the most renowned characters are those who can abuse other systems. Nothing farther from truth — In Computer Security, the most important role must always be that of the systems developer, one of the key parts of today's society.

This work starts by defining what we want to understand about Computer Security, and why this concept must reach beyond the hard and cold definitions, to reflect that, before anything else, computing is a discipline with the same amount of flexibility than humanistic studies.

The core of this work is centered on exemplifying, by analizing three currently high-profile computer vulnerability categories which are specially relevant for Web systems developed today (SQL injections, cross-site scripting and session handling through HTTP cookies), which do not receive enough coverage by the main texts with which this discipline is learnt.

Key words: Computer Security, redefinition, SQL injection, object-relation mapper, cross-site scripting, XSS, HTTP sessions, HTTP cookies, cryptographic digest

Resumen: 

El campo de la seguridad en cómputo muchas veces es visto como uno donde el trabajo es investigativo (búsqueda de nuevas categorías de fallos), reactivo (corrección de fallos encontrados, o incluso buscarlos proactivamente) o, en el peor de los casos, un campo donde los personajes más destacados son quienes saben abusar de los sistemas ajenos. Nada más lejano de la realidad — En la seguridad en cómputo, el rol más importante debe ser el desarrollador de sistemas, una de las piezas más importantes de la sociedad actual.

Este trabajo parte definiendo qué debemos entender por seguridad en cómputo, y por qué este concepto debe ir más allá de definiciones duras y frías, para reflejar que antes que otra cosa, el cómputo es una disciplina con la misma flexibilidad que los estudios humanísticos.

La parte medular del trabajo se centra en ejemplificar, analizando tres categorías de vulnerabilidad informática de alto perfil hoy en día (inyecciones de SQL, Cross-Site Scripting y manejo de sesiones a través de galletas HTTP), de especial relevancia para los sistemas Web desarrollados hoy en día — Y poco abordadas en específico por los principales textos con que se enseña la disciplina.

Palabras clave: Seguridad en cómputo, redefinición, inyecciones SQL, mapeo objeto-relacional, cross-site scripting, XSS, sesiones HTTP, galletas HTTP, resumen criptográfico

AttachmentSize
Extenso del artículo (texto plano)49.89 KB
( categories: )

Post new comment

The content of this field is kept private and will not be shown publicly. If you have a Gravatar account, used to display your avatar.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <br> <b> <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <blockquote> <img> <h1> <h2> <h3> <tt> <pre> <strike> <table> <tr> <th> <td>
  • Lines and paragraphs break automatically.
  • Use <bib>citekey</bib> or [bib]citekey[/bib] to insert automatically numbered references.
  • Use [fn]...[/fn] (or <fn>...</fn>) to insert automatically numbered footnotes.
  • You can enable syntax highlighting of source code with the following tags: <code>, <blockcode>. The supported tag styles are: <foo>, [foo].

More information about formatting options

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
Image CAPTCHA
Enter the characters shown in the image.