comment
IRC Chat
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

Argument Injection

  • 8 Respuestas
  • 3722 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Dedalo

  • *
  • Underc0der
  • Mensajes: 117
  • Actividad:
    0%
  • Reputación 0
  • KUSH
    • Ver Perfil
    • Twitter Personal
  • Twitter: https://twitter.com/SeguridadBlanca
« en: Mayo 06, 2012, 04:35:47 pm »
Cuantas veces no hemos visto un log-in que no es vulnerable a sql injection pero queremos entrar a como de lugar, una idea sería brute-force pero... no siempre hay una respuesta...

Ahora les voy a mostrar un error que algunos programadores aun cometen, la idea es que cuando el usuario y la pass coninciden hacen que una variable X cambie a true, ahora la preguntasa es que pasaría si nosotros hicieramos que la variable a taves de un GET se ejecutara?


Un Ejemplo (No es Real! Es un tipo Pseudo):


Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
<?php

if ($user == 'hola' AND $pass == 'pass'){
$access $_GET['access'];
$access 1;
}

if (
$access == '1') {
echo 
'Access Granted.'; }
else {
echo 
'Access Denied.';
}
?>



Como ven en el caso de que access sea true te deja entrar... yo me pregunto que pasaría si nosotros por ejemplo...


No tienes permisos para ver links. Registrate o Entra con tu cuenta

ahi ponemos un usuario para bypass con sql injection y no funciona entonces nos regresa a la misma página... pero nos mostrará algo como lo siguiente:


No tienes permisos para ver links. Registrate o Entra con tu cuenta

como ejemplo... ahora si nosotros en ves de esto pusieramos...

No tienes permisos para ver links. Registrate o Entra con tu cuenta

ahi tambiaríamos a true la variable access ahora como la mayoría de personas no ponen una seguridad a sus paneles de control solo faltaría ir a

No tienes permisos para ver links. Registrate o Entra con tu cuenta


Ahora para reparar este error no hay mucho que hacer en vez de hacer dos ifs distintos uno preguntando asi: si usuario y pass son correctos access = 1 no cojerlo por get en ningun momento por post tampoco sino como session setearlo como session...

Otra cosa deben de asegurar que pida la sessión en el momento de hacer que access cambie a 1...

if(isset($_SESSION['access']))



Saludos,
Dedalo
No tienes permisos para ver links. Registrate o Entra con tu cuenta

Desconectado Sanko

  • *
  • Underc0der
  • Mensajes: 541
  • Actividad:
    0%
  • Reputación 0
  • ¿Puedes?
    • Ver Perfil
    • Underc0de
« Respuesta #1 en: Mayo 06, 2012, 07:00:35 pm »
Esta bueno bro , sigue asi
Sigueme en Twitter : @Sankosk
Estos nuevos staff no tienen puta idea XD

Conectado ANTRAX

  • *
  • Administrator
  • Mensajes: 5396
  • Actividad:
    36.67%
  • Reputación 31
  • ANTRAX
    • Ver Perfil
    • Underc0de
    • Email
  • Skype: underc0de.org
  • Twitter: @Underc0de
« Respuesta #2 en: Mayo 06, 2012, 07:03:50 pm »
Que bueno! no sabia de esto! muchas gracias bro!


Desconectado BadSekt0r

  • *
  • Underc0der
  • Mensajes: 6
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« Respuesta #3 en: Mayo 06, 2012, 07:46:07 pm »
Ese error era conocido hace tiempo..
Y no es cuando un programador coloca un GET para validar

Eso sucede en versiones viejas de php donde tenian on las variables globales

Recuerdo que ese bug nos divertia hace muchos años..

saludos

Conectado ANTRAX

  • *
  • Administrator
  • Mensajes: 5396
  • Actividad:
    36.67%
  • Reputación 31
  • ANTRAX
    • Ver Perfil
    • Underc0de
    • Email
  • Skype: underc0de.org
  • Twitter: @Underc0de
« Respuesta #4 en: Mayo 06, 2012, 07:50:54 pm »
Buen complemento BadSekt0r!
Muchas gracias!


Desconectado Dedalo

  • *
  • Underc0der
  • Mensajes: 117
  • Actividad:
    0%
  • Reputación 0
  • KUSH
    • Ver Perfil
    • Twitter Personal
  • Twitter: https://twitter.com/SeguridadBlanca
« Respuesta #5 en: Mayo 06, 2012, 08:06:06 pm »
No tienes permisos para ver links. Registrate o Entra con tu cuenta
Ese error era conocido hace tiempo..
Y no es cuando un programador coloca un GET para validar

Eso sucede en versiones viejas de php donde tenian on las variables globales

Recuerdo que ese bug nos divertia hace muchos años..

saludos


mmm primero que nada si te estás guiando por el bug nuevo que salio de cgi bin pues estás confundido es un argument injection por que se inyecta un argumento del php por url y segundo si es que me estubiese equivocando en el nombre OWASP también se estaría confundiendo...


No tienes permisos para ver links. Registrate o Entra con tu cuenta



Saludos,
Dedalo
No tienes permisos para ver links. Registrate o Entra con tu cuenta

Desconectado BadSekt0r

  • *
  • Underc0der
  • Mensajes: 6
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« Respuesta #6 en: Mayo 07, 2012, 08:32:56 am »
nop ninguno de los dos.. te hablo de algo q pasaba hace mucho y eso q describis es muy parecido a eso muy parecido..

Este articulo un admin explica
No tienes permisos para ver links. Registrate o Entra con tu cuenta

Esa vulnerabilidad existia cuando en php.ini la directiva register_globals permanecia en ON
Las nuevas versiones por defecto vienen en OFF

Por lo tanto cada variable debe estar inicializada correctamente y no por ningun tipo de request

Wikipedia podes ver algo

No tienes permisos para ver links. Registrate o Entra con tu cuenta

y si ves en el link q me pasaste dice Last revision (mm/dd/yy): 05/27/2009

por eso te digo que es una vulnerabilidad vieja

En fin.. no era para hacerlo tan largo.. es solo eso

era solo un comentario constructivo
« Última modificación: Mayo 07, 2012, 08:35:11 am por BadSekt0r »

Desconectado Dedalo

  • *
  • Underc0der
  • Mensajes: 117
  • Actividad:
    0%
  • Reputación 0
  • KUSH
    • Ver Perfil
    • Twitter Personal
  • Twitter: https://twitter.com/SeguridadBlanca
« Respuesta #7 en: Mayo 07, 2012, 10:25:55 am »
Gracias por complementar en todo caso :)


Saludos,
Dedalo
No tienes permisos para ver links. Registrate o Entra con tu cuenta

Desconectado 5TU4RT

  • *
  • Underc0der
  • Mensajes: 111
  • Actividad:
    0%
  • Reputación 0
  • Si se puede imaginar... se puede programar.!
    • Ver Perfil
    • Underc0de
    • Email
« Respuesta #8 en: Mayo 18, 2012, 11:06:33 am »
como tu dices... Muchos programadores cometen este error aun!!!

Un dia me topé con un panel de adminitracion de la siguiente forma:

No tienes permisos para ver links. Registrate o Entra con tu cuenta

le puse cualquier dato en el user y pass y en el URL sucedió...

No tienes permisos para ver links. Registrate o Entra con tu cuenta

Simplemente le cambié el False por el True, y Bienvenido =)


Exelente Aporte...



SALu2
Si se puede imaginar... se puede programar.!

 

¿Te gustó el post? COMPARTILO!



vBulletin 5.0.0 Beta 11 - 5.0.0 Beta 28 - SQL Injection

Iniciado por morodog

Respuestas: 1
Vistas: 1815
Último mensaje Junio 09, 2013, 12:05:31 pm
por ANTRAX
SQL Injection - Joomla módulo "com_fireboard"

Iniciado por M5f3r0

Respuestas: 0
Vistas: 1691
Último mensaje Agosto 16, 2013, 01:43:18 am
por M5f3r0
[Curso] SQL Injection desde 0 - Union based y Blind Boolean Based.

Iniciado por M5f3r0

Respuestas: 8
Vistas: 8608
Último mensaje Abril 21, 2017, 04:36:34 am
por M5f3r0
Mysql injection avanzada: "doble query/error based"

Iniciado por q3rv0

Respuestas: 2
Vistas: 2421
Último mensaje Agosto 30, 2012, 04:26:01 am
por andrewtwo
Tecnicas de Blind Mysql Injection (Bit Shifting && Find_in_set())

Iniciado por q3rv0

Respuestas: 3
Vistas: 2211
Último mensaje Agosto 30, 2012, 12:50:52 am
por andrewtwo