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


 


Tema destacado: Cifrar documentos-carpetas con GnuPG en Linux y Windows


+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Bugs y Exploits
| | |-+  Nivel Web (Moderadores: sirdarckcat, WHK)
| | | |-+  Form-Tampering PoC
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Form-Tampering PoC  (Leído 580 veces)
2Fac3R


Desconectado Desconectado

Mensajes: 300


Sigamos Creciendo...


Ver Perfil WWW
Form-Tampering PoC
« en: 29 Julio 2015, 21:06 »

Siguiendo con la práctica y los POC que he estado realizando, me doy cuenta que en esta sección, una de las cosas que falta es este bug llamado "Form Tampering", ya hay bastante información sobre XSS, SQLi, webshells, etc, etc. Así que empecemos.

FORM TAMPERING

Este metodo consiste en modificar los datos "ocultos" del formulario que use la web victima para algun beneficio, en este ejemplo, veremos un simple (bastante sencillo xD) ejemplo sobre un "carrito de compra", para modificar los precios de los productos.

codigo.php
Código
  1. <?php
  2. // Form tampering bug PoC
  3. $presupuesto = 100;
  4. $compra = strip_tags($_POST['producto']);
  5. function correcto(){
  6.    global $compra;
  7.    echo "Felicidades $compra comprado correctamente";
  8. }
  9. if(isset($_POST['producto']) && !empty($_POST['producto'])){
  10.    if($presupuesto >= $_POST['v_botella']){
  11.        correcto();
  12.    }else if ($presupuesto >= $_POST['v_cervesa']){
  13.        correcto();
  14.    }else{
  15.        echo "Lo sentimos, no tienes los fondos suficientes";
  16.    }
  17. }else{
  18.    if(isset($_POST['send'])){
  19.        die("Debes seleccionar un producto");
  20.    }
  21.    echo "Tu presupuesto es : $presupuesto";
  22. ?>
  23. <form action="" method="POST">
  24.    <select name="producto">
  25.        <option value="Botella"> Botella </option>
  26.        <option value="Cerveza"> Cervesa </option>
  27.    </select>
  28.    <input type="hidden" name="v_botella" value="500">
  29.    <input type="hidden" name="v_cervesa" value="200">
  30.    <input type="submit" name="send" value="Comprar!">
  31. </form>
  32. <?}?>

Como podemos observar, tenemos los precios de los productos en un atributo "hidden". Bien, ¿Cómo podemos aprovecharnos de eso?.


MODIFICANDO CABECERAS HTTP

Lo que vamos a hacer, es "sniffear" lo que nuestro navegador manda al servidor (cabeceras http), vamos a hacer esto con el http live headers (Add-on de Firefox). Despues de instalarlo en nuestro navegador, vamos a la página donde tenemos alojado nuestro PoC y abrimos el add-on, hacemos una petición simplemente "tratando" de comprar un producto y nos damos cuenta que en el live headers nos ha salido la petición http que hemos hecho.

Algo así:

Citar
Host: 127.0.0.1
User-Agent: Mozilla/5.0 (X11; Linux i686; rv:2.0.1) Gecko/20100101 Firefox/4.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip, deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Referer: http://127.0.0.1/bugs/formtamp.php
Content-Type: application/x-www-form-urlencode2d
Content-Length: 60

Y:

Citar
producto=Botella&v_botella=500&v_cervesa=200&send=Comprar%21

Ahora vemos que podemos modificar los valores de los productos, cambiamos a 0 y le damos a repetir/replay

Citar
producto=Botella&v_botella=00&v_cervesa=00&send=Comprar%21

Y vuala!  ::) , hemos comprado el producto   ;)

Espero les sea de ayuda, cualquier duda, comentario y/o sugerencia publiquen aquí mismo.
Zalu2
En línea

Blog dedicado a la Seguridad Informatica & Hacking http://breaksecurity.blogspot.com/.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
web vulnerable con tampering
Hacking Básico
caballeroalba 6 1,483 Último mensaje 4 Septiembre 2007, 02:50
por G3rl0
Disculpe, como puedo mostrar un form en un form?
Programación Visual Basic
Sai-To 8 1,925 Último mensaje 13 Enero 2008, 15:27
por nhaalclkiemr
[VIDEO] Form Tampering | Hostings al descubierto
Hacking Básico
Login-Root 5 1,287 Último mensaje 1 Agosto 2008, 19:51
por Login-Root
Abrir un form desde otro form con netbeans en java
Java
murdock_ 3 40,950 Último mensaje 1 Enero 2009, 03:44
por sapito169
Activar timer del form FUERA DEL FORM...
Programación Visual Basic
TheJucas21 2 853 Último mensaje 29 Junio 2014, 22:38
por FacuM
Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines