Mostrando entradas con la etiqueta bugs. Mostrar todas las entradas
Mostrando entradas con la etiqueta bugs. Mostrar todas las entradas

martes, 21 de enero de 2014

Arreglando bug SQL Injection PHP

2 comentarios, Publicado por OverNet en martes, enero 21, 2014 ,

Arreglando bug SQL Injection de manera rápida y sencilla

Este tutorial, va dedicado a los novatos que principalmente explotan el bug y defacean y se van sin arreglarlo.
*En este post encontraras como realizar una Inyección SQL.

Para poder arreglar el bug, necesitamos tener permisos de escritura (para los que trabajan con PHP Shells), de lo contrario este tutorial no te servirá pero sí a los webmasters que quieran evitar este tipo de ataque.

Bueno tenemos la siguiente página:

Como se puede apreciar es vulnerable a SQL Injection, observen la comilla.
Hay que tomar nota de esto, nos basamos en el archivo y la variable que se ejecuta:
http://www.avcnoticias.com.mx/bb/haxor.php?id='

* Tomamos nota *
- Directorio o carpeta:
/bb/
- Archivo vulnerable: haxor.php
- Variable vulnerabl SQLi: id=
- Lineas a modificar: 19 & 25 (Se identifican gracias al error que se imprime)

Nos vamos a nuestra PHP Shell o FTP (En caso de ser el propietario) y buscamos el Directorio (/bb/ en mi caso) y entre ella descargamos o modificamos el Archivo vulnerable (haxor.php en mi caso)

Lo editamos con el Bloc de Notas/Adobe Dreamweaver o cualquier otro editor de texto y buscamos la variable que es en nuestro caso id
(si estas en Adobe Dreamweaver CTRL + f, si estas en bloc de notas CTRL + b)
Y encontramos algo por el estilo:

Se observa claramente el código que no tiene ningún filtro de seguridad y que la variable es vulnerable a este tipo de ataques.
Ahora vamos arreglar este fallo tenemos en esta linea que se ejecuta la variable:

  1. $id=$_GET['id'];  
  2. $consulta = "SELECT * from nota where id_nota=$id";  
  3. $rs = mysql_query($consulta,$conn);  

Con la función sprintf() y mysql_real_escape_string() podemos arreglar este fallo:

  1. $consulta = sprintf("SELECT * from nota where id_nota='%s'",  
  2. mysql_real_escape_string($id));   
Y listo, sí incluimos la comilla en la variable ya no nos muestra ningún error.

martes, 2 de agosto de 2011

FullScreen Java Applet

0 comentarios, Publicado por OverNet en martes, agosto 02, 2011 ,
FullScreen Java Applet [Hack]
Browser Web Vulnerability (PoC) 

Java Applet logo
He encontrado un articulo interesante sobre como ejecutar Java Applet desde el navegador, pero este no es un simple programa. El código que viene más adelante nos permite ejecutar la aplicación mostrándonos y tapando casi toda la ventana de nuestro Navegador Web, sin embargo, este código puede ser utilizado por diferentes técnicas:
  • Publicidad
  • Phishing
  • File Infection
  • User collect data
  • Defacement
  • Etc..
Sin embargo, tiene varios años este bug no ha sido parchado actualmente y aunque aseguran los de SDN (Sun Developer Network) estarán trabando en arreglarlo.

viernes, 29 de julio de 2011

Web Antivirus - Sistema de Antivirus Web

1 comentarios, Publicado por OverNet en viernes, julio 29, 2011 ,
Hi-Coder Web Antivirus
Hi-Coder Web Antivirus es una herramienta de seguridad web dedicada a los webmasters que nos permite detectar cualquier tipo de codigo malicioso como las PHP Shells, Backdoors y sin embargo, también nos ayuda a detectar cualquier clase de bugs en PHP Scripts así como RFI, LFI, SQL injection, XSS, etc.

Screenshots:
Hi-Coder Antivirus Web
Hi-Coder Antivirus Web: Scan - Results
Hi-Coder Antivirus - Virus and bugs no found

miércoles, 27 de julio de 2011

Ofuscar una PHPShell (Indetectar Codigo fuente)

1 comentarios, Publicado por OverNet en miércoles, julio 27, 2011 ,
¿Como hacer indetectable una PHP Shell?  
(FUD a los Antivirus)

PHP-SHELL Imagen logo
Para los que no saben que es una PHP Shell (En definición a "Defacement").
PHP Shell o Shell PHP es un programa o script desarrollado íntegramente en PHP. Su principal función es la posibilidad de ejecutar los famosos shell-commands en el servidor donde se encuentre.
Algunos tienen bastas funciones, como la de explorar los directorios en el servidor en que se encuentre, crear archivos y eliminar, crear directorios y eliminar, editar archivos en texto plano, establecer una conexión MySQL, PostgreSQL u Oracle, establecer una conexión con NetCat, cambiar permisos a los elementos del servidor, etc.
(Fuente | Wikipedia)

Teniendo en cuenta que ya cualquier PHPShell es detectada por los antivirus, sin embargo, los servidores escanean este tipo de Scripts en sus sitios web, y muy difícil que el atacante pueda ejecutar la PHP Shell.
La Shell C99 es detectada por todos los antivirus, sin embargo, existe la base64 c99 que es la misma versión unicamente ofuscada en Base 64 y es FUD (Indetectable).

lunes, 25 de julio de 2011

Damn Vulnerable Web Application (DVWA)

0 comentarios, Publicado por OverNet en lunes, julio 25, 2011 ,
Damn Vulnerable Web Application (DVWA) es una aplicación desarrollada en PHP/MySQL, nos permite conocer, explotar, descubrir algunas vulnerabilidades web , sin embargo, esta aplicación nos ofrece varias opciones del nivel de seguridad bajo, medio y alto.

Damn Vulnerable Web Application
DVWA (Damn Vulnerable Web Application) nos permite llevar a cabo diferentes técnicas, entre ellas son las siguientes
  • SQL Injection
  • XSS (Cross Site Scripting)
  • LFI (Local File Inclusion)
  • RFI (Remote File Inclusion)
  • Command Execution
  • Upload Script
  • Login Brute Force
*Requiere Apache o XAMP (Host Local)
Les dejo un video de Ethicalhacker sobre su uso e instalación de DVWA

 

Sitio oficial |  DVWA


sábado, 23 de julio de 2011

Tutorial de Inyección SQL para principiantes

76 comentarios, Publicado por OverNet en sábado, julio 23, 2011 ,
Primero y antes que nada, debemos saber muy bien los conceptos de cada uno que tocaremos en este tema.

SQL Injection - Tutorial by OverNET
¿Qué es SQL?
Significa un Lenguaje de Consulta Estructurado (en ingles Structured Query Languaje). Como su nombre lo indica es un lenguaje para tener acceso a una Base de Datos que nos permite realizar varias operaciones en ella, como poder guardar información privada de un sitio web, contraseñas, nombres, y otras cosas.

Sin embargo, muchos CMS Sistema de Gestión de Contenidos (en ingles Content Management System) utilizan SQL para acceder a una Base de Datos (PhpMyAdmin) y guardar información.

CMS (Sistema de Gestión de Contenidos) no es ningún tipo de programa literalmente, sin embargo, es programado para que los usuarios tengan la facilidad de crear su pagina web utilizando una base de datos.
Algunos CMS son muy populares como lo son; SMF, Wordpress, y Blogger entre otros.

¿Y qué significa SQLi?
Son la abreviatura de SQL Injection. Aunque, SQLi es un bug bastante viejo, existen CMS o páginas web con esta vulnerabilidad.

Debido que es un post para principiantes y un poco largo, no iré muy a fondo sobre los conceptos, por eso mejor aquí la dejamos y vamos al tutorial.

¿Donde puedo encontrar paginas vulnerables a SQLi?
En Google, sin embargo, existen Dorks (Palabras claves para poder encontrar CMS vulnerables con facilidad). De cualquier manera no es muy difícil encontrar sitios (Probablemente) vulnerables a SQLi.


Logotipo de Google
Solo es cuestión de ingeniarse las palabras claves para encontrar sitios Web con este bug.  
¿No entendiste? La Inyección SQL se empieza por encontrar en una url muy parecido a esto: /index.php?id=28, sin embargo, la inyección se comienza en la variable id=28.

miércoles, 13 de julio de 2011

Mostrar contraseñas debajo de los asteriscos

2 comentarios, Publicado por OverNet en miércoles, julio 13, 2011 ,
¿Como ver contraseñas ocultas detrás de los asteriscos?

Con un simple código Java Script podemos mostrar contraseñas guardadas en los formularios.

Mostrando contraseña debajo de los asteriscos de un formulario (Google Mail)
Código (Java Script):javascript:(function(){var s,F,j,f,i; s = ""; F = document.forms; for(j=0; j<F.length; ++j) { f = F[j]; for (i=0; i<f.length; ++i) { if (f[i].type.toLowerCase() == "password") s += f[i].value + "\n"; } } if (s) alert("Contraseñas encontradas:\n\n" + s); else alert("No hay contraseñas");})();

viernes, 1 de julio de 2011

Evitar XSS/Html Injection en formularios [PHP] Básico

5 comentarios, Publicado por OverNet en viernes, julio 01, 2011 ,
Un pequeño tutorial sobre como evitar XSS y/o Html Injection en formularios PHP (Básico)

¿Que es XSS? (Wikipedia)

XSS, del inglés Cross-site scripting es un tipo de inseguridad informática o agujero de seguridad basado en la explotación de vulnerabilidades del sistema de validación de HTML incrustado.


¿Qué es HTML Injection? (Otras fuentes)

Inyección de HTML se refiere a la inserción de código HTML en una respuesta de servidores web de alterar el contenido al usuario final. Esto es también conocido como Cross Site Scripting.

No explicaré sobre la explotación de este bug, ya que solo vamos explicar sobre como evitarla y no ser victima de alguna persona malintencionada.
Un ejemplo sencillo:
Código Java Script inyectado en un input (Alert en JS)
Codigo Java Script en la barra de direcciones


En la imagen de arriba se observa, que en un formulario (Input) se logró inyectar un codigo Java Script y al ser ejecutada nos muestra una ventana diciendo "Owned by Benito Bodoke!" (una alerta).