elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Security Series.XSS. [Cross Site Scripting]


+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Hacking
| | |-+  Bugs y Exploits
| | | |-+  Nivel Web (Moderadores: sirdarckcat, WHK)
| | | | |-+  ¿Como iniciarse en la seguridad WEB?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ¿Como iniciarse en la seguridad WEB?  (Leído 22,746 veces)
WHK
Moderador Global
***
Desconectado Desconectado

Mensajes: 6.605


Sin conocimiento no hay espíritu


Ver Perfil WWW
¿Como iniciarse en la seguridad WEB?
« en: 3 Enero 2010, 05:45 am »

¿Como iniciarse en la seguridad WEB?

Mucha gente anda por todos lados buscando orientación de como comenzar a aprender esto de la seguridad a nivel WEB.

1.
Lo primero que debes tener en claro es que es lo que realmente deseas ser o hacer, si lo que quieres es ir por internet y tumbar cualquier servidor que se te cruze por delante entonces estás en el lugar equibocado.

2.
Lo segundo que necesitas antes de comenzar cualquier cosa es entender que es ser ético, tener una madurez mental mínima, ser autodidacta, no esperar a que la gente haga todo por ti y saber hacer buenas preguntas.

¿Porqué ser ético y tener una madurez mental mínima?
Imagina si la gente que sabe sobre seguridad a nivel web comienza a desmadrar cada sitio que visita o se le cruza o mejor piensa que te compras un hosting con dinero propio y pones mucho esfuerzo en montar tu foro o portal para que alguien venga y te lo tumbe al primer dia... lo reparas y al tercer dia lo mismo :-\ .
Decir "¿Como puedo defacear una web?" es muy similar a la frase "¿Como puedo hacearle el hotmail a mi novia?" debido a muchas cosas, primero que nada pensar por un momento que sacas con ir por la vida tumbando paginas webs, mas que fama o fortuna o mujeres lo único que vas a lograr es una visita de la policía por lo menos una ves al mes y convertirte en un delincuente informático, cosa muy diferente a decir que eres un auditor y buén programador que puede ayudar a la seguridad de un sitio web y ser reconocido por ser bueno en lo que haces en ves de ser odiado por la gente que sabe y adorado por los lamers mas grandes sobre la faz de la www.

¿Porqué ser autodidacta y no esperar a que los demas hagan las cosas por ti?
Imagina que te doy un script que lo subes a un hosting y al visualizar el archivo te ejecuta un exploit, no vas a saber como funciona por lo tanto si surge un problema no sabrás solucionarlo, tampoco podrás encontrar tus propias vulnerabilidades porque siempre vas a tener que esperar a que alguien mas los encuentre y eso no es bueno, eso es ser dependizado de la gente que si sabe y se esfuerza y son los que entienden de seguridad web, los que no son autoddactas nunca podrán surgir por si solos, por eso siempre busquen, aprendan, lean, y cuando todos los recursos de busqueda se hayan agotado entonces ahi recién pregunten a alguien que sepa mas.

¿Porqué es necesario saber hacer buenas preguntas?
Hay buenos tips para hacer una buena pregunta y una buena pregunta lleva a buenas respuestas, mientras mas mal hecha sea una pregunta también será peor la respuesta ya que puede no ser tomada en serio o causar el disgusto del que si pueda responderte de buena forma.

Una mala forma de hacer una pregunta es llenar de signos de exclamación "ayudaaaa!!!!!".
Una buena forma de hacer una pregunta es siendo específico.
Una mala pregunta es cuando pides cosas que puedes encontrar en el primer resultado en cualquier buscador como Google.
Una buena pregunta es cuando necesitas algo que no puedes encontrar con facilidad en cualquier buscador.
Una mala pregunta es hacerla con intención de querer dañar a alguien o hacerlo sin ética.
Una buena pregunta es cuando necesitas algo para una buena causa.
Una mala pregunta es cuando se acompaña con un nick que tiene demasiados carácteres y simbolos raros.
Una buena pregunta es siendo respetuoso y solicitando las cosas "por favor" ya que al final nadie te va a cobrar por la respuesta que necesitas.

3.
Ahora si, después de todo lo principal lo que necesitas es entender el lenguaje WEB, o sea saber programar.
¿Si no entiendes como funciona una página web entonces como quieres comprender como encontrar una falla?

Lenguajes recomendados para aprender:
HTML (Obligatorio)
PHP
ASP
SQL general (Obligatorio)
MySQL
MSSQL (Opcional)
javascript (Obligatorio)
HTTP (Opcional)

Lo mas importante es saber HTML ya que con eso puedes entender como funciona la mayoría de los ataques a nivel cliente y dependiendo el lenguaje en que esté hecho el sitio WEB necesitarás aprender ya sea php, asp, cgi/perl, python, etc etc.
Es necesatio aprender lenguaje SQL para tener la báse de lenguajes derivados tales como MSSQL y MySQL.
De forma opcional puedes aprender como funciona el protocolo HTTP para poder realizar test avanzados que no te permita realizar el explorador.

Este pequeño listado contiene los lenguajes WEB mas utilizados pero hay muchisimos mas, por lo tanto si quieres recién comenzar debes aprender uno por uno de esa lista.

¿Como puedo aprender php?
Lo primero que hacemos es instalar un servidor WEB, en mi caso recomendaré un pack de programas llamado XAMPP (Windows) y LAMPP (Linux) el cual contiene todo lo que necesitas para practicar:
  • Apache server
  • PHP
  • MySQL
  • FTPD
  • Phpmyadmin
  • SQLiteadmin

Una ves que lo instales debes localizar un directorio llamado "htdocs", "www" o "public_html" que quedará dentro del directorio del programa, ahi pondremos todas nuestras pruebas en php, mysql, etc etc.

Ahora lo único que necesitas es buscar buenos manuales de como programar en php, mysql, javascript, html, etc etc etc.

4.
Lo que yo recomiendo es aprender en la práctica, por o tanto te buscas scripts de ejemplos que puedas encontrar por ahi y los instalas en tu servidor local (el que acabas de instalar), ahora como se supone que ya aprendiste php intenta crear tus propios sistemas o scripts y cuando lo hagas te irás dando cuenta en que pueden ser vulnerables, lees sitios webs donde expongan vulnerabilidades para poder comprender como funcionan, aprende que significan los siguientes términos:
XSS
CSRF
SQL Inyeccion
CRE
Null Byte Atack
etc etc etc y con eso ya vas a tener la base para poder continuar solo a aprender todo lo que te guste.

Con el tiempo te irás dando cuenta que hay muchos sistemas públicos que contienen pequeños bugs o problemas de seguridad que puedes transformar en un riesgo de alto nivel.

Para poder comprender algunos términos básicos es recomendable dar un vistazo al diccionario ( http://foro.elhacker.net/nivel_web/diccionario_informatico_sobre_bugs_y_exploits_en_nivel_web_v10-t264007.0.html ) claro.. una ves que hayas aprendido lenguaje web :P

Aportes, dudas, consultas, apoyo, son bienvenidos!
En línea

WHK
Moderador Global
***
Desconectado Desconectado

Mensajes: 6.605


Sin conocimiento no hay espíritu


Ver Perfil WWW
Re: ¿Como iniciarse en la seguridad WEB?
« Respuesta #1 en: 3 Enero 2010, 05:56 am »

TIPS

Si ya conoces lenguaje WEB y entiendes lo básico de vulnerabilidades WEB entonces puede que necesites un poco de orientación sobre como encontrar una vulnerabilidad o hacer una auditoría.

Primero que nada debo decir que lo peor que puedes hacer es utilizar softwares que automatizen tus resultados de busqueda tales como SSS (Shadow Security Scanner), N-Stalker, Nikito, etc.

¿Pero porqué?
Porque mas que resultados positivos solamente vas a lograr un intento de DOSear al servidor xD ya que los scanners utilizan demasiadas peticiones de forma masiva y eso produce demasiadas alertas y consumo de ancho de banda a lo loco intentando cada una de las probailidades posibles de encontrar un bug y en muchos casos no podrás encontrar mas del 20% de las vulnerabilidades del sitio.
Lo por experiencia propia ya que yo también comenzé así sin saber mucho del tema y adoraba estos scanners porque te encuentran todo solo.
El otro problema es que si un escaneador te encuentra un resultado te dará un enlace de como explotarlo pero mucha gente no tiene ni idea como funcionan esos exploits o pruebas de concepto porque no entienden que son, solo saben darle click al botón y nada mas, por eso es importante conocer lenguaje WEB y si quieres un mejor resultado, algo que sea profesional entonces no utilices escaneadores por nada del mundo, usa tu imaginación, ingenio, netcat, firefox, live headers, ncookies edit, firebug y listo!

Mientras mas conozcas sobre vulnerabilidades podrás saber mejor por donde buscar, no hay nada que pueda estar escrito sobre como encontrar vulnerabilidades y los que si hay no te dicen todo, todo lo define tus conocimientos, imaginación e ingenio.

Firefox es buenisimo por la cantidad de complementos que tienes para auditar sitios WEB, por ejemplo firebug sirve para observar el comportamiento del DOM y manipular todo lo que normalmente te restringe via javascript, ncookies edit te sirve para editar tus cookies, live headers para observar todo lo que pasa por tus peticiones y request, netcat para hacer las peticiones que el explorador no pueda. También es recomendable no-script para evitar ofuscamiento via javascript.

La herramienta mas impresindible es tu cerebro, eso puede mucho mas que un escaneador automatizado.
Lee sitios webs que expongan exploits o PoCs y comprenderás como funcionan algunas vulnerabilidades y con el tiempo podrás irlas aplicando según te limite tu imaginación.
En línea

nnooxx

Desconectado Desconectado

Mensajes: 135


Ver Perfil
Re: ¿Como iniciarse en la seguridad WEB?
« Respuesta #2 en: 3 Enero 2010, 13:36 pm »

Muy interesante, es una pena que todavia me falle lo esencial. Estoy intentando aprender html rapido pero tambien intento aprender C y bueno es una ventaja tener ya instalado el servidor.

Por cierto para los usuarios de linux recomiendo por propia experiencia instalar apache2 mysql y php por la terminal o por synaptic lo cual os resultara mucho mas facil:

Pongo el ejemplo de ubuntu que es el que me ha tocado hacer:
 http://www.ubuntu-es.org/?q=node/91538

Como ya he dicho antes parece muy interesante  ;-)
« Última modificación: 12 Abril 2010, 20:21 pm por nnooxx » En línea

jdc


Desconectado Desconectado

Mensajes: 3.406


Ver Perfil WWW
Re: ¿Como iniciarse en la seguridad WEB?
« Respuesta #3 en: 3 Enero 2010, 14:07 pm »

Otra recomendación podría ser que siempre que conozcamos una vulnerabilidad nueva para nosotros creemos un pequeño script vulnerable y luego el mismo protegido. Mucha gente anda por ahí poniendo en cuanto "pagina.php?id=1" el típico ' or 1=1 sin saber como evitarlo o que hace realmente xD es simpático, hace un tiempo le pregunté a krackwar como hacer una inyección SQL cuando yo ni siquiera sabía que o como funcionaba SQL xD
 
Como dice WHK es fácil hacer click en un botón, pero es mas entretenido entender!
En línea

gogetron

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Re: ¿Como iniciarse en la seguridad WEB?
« Respuesta #4 en: 4 Junio 2016, 21:45 pm »

Buenas, muchas gracias por el tema, me interesa bastante el tema de la seguridad, pero los artículos que encuentro son a menudo cortos y de temas muy muy concretos, la programación si la llevo bien conozco de forma muy aceptable todos los lenguajes que marcas obligatorios pero de seguridad en si aun nada... hay algun libro (español o ingles) que recomiendes leer?
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Como iniciarse en el mundo de la seguridad Informatica?
Seguridad
Th3Secret 3 6,085 Último mensaje 23 Abril 2012, 03:56 am
por Th3Secret
¿Cómo iniciarse en ciberseguridad? Titulaciones y certificaciones Seguridad Informática
Seguridad
el-brujo 1 4,607 Último mensaje 5 Octubre 2021, 19:39 pm
por 0x22
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines