Mostrar Mensajes

Esta sección te permite ver todos los mensajes hechos por este usuario, recuerda que solo puedes ver los mensajes en áreas en donde tu tienes acceso.


Mensajes - yoyahack

Páginas: [1] 2
1
La vulnerabilidad se da al usar el operador == para realizar una comparación. El operador == verifica si los 2 valores son iguales y son del mismo tipo.

El truco esta cuando utilizas se utiliza el operador == en un contexto donde exista un valor numérico. Ya que lo que hará el operador es tratar el otro valor también como numérico. Y en una variable de tipo numérico puedes realizar directamente operaciones aritmeticas, por ejemplo:

Código: [Seleccionar]
$a = 1+1;
La variable $a seria igual a 2, también puedes realizar multiplicación, división y notación exponencial. Hay esta el truco jejeje, en la  notación exponencial.  Recordar que cuando se eleva 0 a cualquier otro numero, el resultado siempre sera 0 y cuando se eleva 1 a cualquier otro numero el resultado siempre sera 1.


Osea que esto:


Código: [Seleccionar]
$b = 0e78787878;


Siempre sera 0 y con el 1, siempre sera 1.


El bug esta en que SMF genera un token cuyo valor esta cifrado utilizando MD5. Y como sabes MD5 utiliza letras y numeros. Y si en algún punto dicho valor inicia con 0e5454asa o 1e45a45s45as al compararlo en un contexto numérico siempre dará 0 y 1. Si te mantienes mandando 0 o 1, como token, en algún momento podrá coincidir con y por lo tanto se reseteara la contraseña.


Saludos.

2
HTML / Re:¿HTML 5 Libros conoces algunos buenos ?
« : diciembre 01, 2012, 04:46:05 pm »
http://www.html5rocks.com/es/resources

3
PHP / Re: Saber si el archivo php ha sido incluido
« : abril 09, 2011, 10:21:31 am »
Buen tip :)

4
PHP / Re: [CONSULTA] Sobre variables $_GET
« : marzo 19, 2011, 08:29:11 pm »
Ps toca usar .httaccess. Quizás se pueda parsear si mandas los datos de esta forma:
Código: php [Seleccionar]
index.php?datos=id:1,action=index,otro:ejemplo

Todo quedaria dentro que la Query datos pero necesitarías parsearlo luego, lo mejor es usar .httacces.

5
PHP / [PHP Class] HttpLoginConnect
« : septiembre 01, 2010, 07:20:34 pm »
HttpLoginConnect

HttpLoginConnect es una clase hecha en PHP, especialmente preparada para la validación de datos de un login...

Descripción: HttpLoginConnect valida los datos de un login, verifica que la validación de datos sea correcta y captura la cookie que mandar el servidor, para su posterior uso... Se puede realizar peticiones GET al servidor usando la cookie capturada.

Característica:

  • Validación de datos
  • Uso de Cookie
  • Permite enviar peticiones GET con el uso de cookie
  • Permite parámetros opcionales para enviarlo via POST

Requerimientos:
  • Apache
  • PHP5
  • PHP-Curl



Documentacion
Source



Bueno, esta es la versión Beta, acepto sugerencia constructiva :XD:


saludos.

6
Temas generales / Re: Se recomienda: Linux mint
« : agosto 11, 2010, 10:54:02 am »
Ahora mismo estoy usando linux mint 9 LXDE xD, me sorprendió cuando mi pc se apago entre 4-6 segundo la primera vez y aveces, casi siempre dura 7 xD :O.O:

7
Hola soy yoyahack, aunque el apodo hack creo que es demaciado para mi xDDD.

Saludos. ¬.¬

8
PHP / Re: Simple CMS de portafolio (incasoft) by fede_cp
« : febrero 15, 2010, 06:46:21 pm »
Bueno, lo veo bien, aunque solo me puse aver el codigo de fuente de los arhivos.

Saludos y bien hecho xD.

9
PHP / Re: Que falla al insertar datos aqui?
« : febrero 14, 2010, 07:03:37 pm »
jajaja si, buena janito24. ¬¬

10
PHP / Re: Que falla al insertar datos aqui?
« : febrero 14, 2010, 06:12:06 pm »
no uso mysql_real_escape_string() porque es muy largo y me puedo confundir xD, cree una funcion para borrar espacio en blancos, tambien andaba  buscando una bbcode, encontre una pero no me convence mucho, la tengo hay mienstra, luego creare un POO para BBCODE y otro para funciones aparte xD.

Asi tengo mi archivo funciones.php
Código: php [Seleccionar]
<?php
/*Funciones php*/

//Borrar espacios en blanco
function borrar($txt)
{
   return preg_replace('/\s+/i',"",$txt);
}

/*Funcion BBCODE*/
function bbcode($var) {
$search = array(
'/\[b\](.*?)\[\/b\]/is',                               
'/\[i\](.*?)\[\/i\]/is',                               
'/\[u\](.*?)\[\/u\]/is',
'/\[img\](.*?)\[\/img\]/is',
'/\[url\](.*?)\[\/url\]/is',
'/\[url\=(.*?)\](.*?)\[\/url\]/is'
);

$replace = array(
'<strong><?php
/*Funciones php*/

//Borrar espacios en blanco
function borrar($txt)
{
   return preg_replace('/\s+/i',"",$txt);
}

/*Funcion BBCODE*/
function bbcode($var) {
$search = array(
'/\[b\](.*?)\[\/b\]/is',                               
'/\[i\](.*?)\[\/i\]/is',                               
'/\[u\](.*?)\[\/u\]/is',
'/\[img\](.*?)\[\/img\]/is',
'/\[url\](.*?)\[\/url\]/is',
'/\[url\=(.*?)\](.*?)\[\/url\]/is'
);

$replace = array(
'<strong>$1</strong>',
'<em>$1</em>',
'<u>$1</u>',
'<img src="$1" />',
'<a href="$1">$1</a>',
'<a href="$1">$2</a>'
);

$var = preg_replace ($search, $replace, $var);

return $var;
}

?></strong>',
'<em><?php
/*Funciones php*/

//Borrar espacios en blanco
function borrar($txt)
{
   return preg_replace('/\s+/i',"",$txt);
}

/*Funcion BBCODE*/
function bbcode($var) {
$search = array(
'/\[b\](.*?)\[\/b\]/is',                               
'/\[i\](.*?)\[\/i\]/is',                               
'/\[u\](.*?)\[\/u\]/is',
'/\[img\](.*?)\[\/img\]/is',
'/\[url\](.*?)\[\/url\]/is',
'/\[url\=(.*?)\](.*?)\[\/url\]/is'
);

$replace = array(
'<strong>$1</strong>',
'<em>$1</em>',
'<u>$1</u>',
'<img src="$1" />',
'<a href="$1">$1</a>',
'<a href="$1">$2</a>'
);

$var = preg_replace ($search, $replace, $var);

return $var;
}

?></em>',
'<u><?php
/*Funciones php*/

//Borrar espacios en blanco
function borrar($txt)
{
   return preg_replace('/\s+/i',"",$txt);
}

/*Funcion BBCODE*/
function bbcode($var) {
$search = array(
'/\[b\](.*?)\[\/b\]/is',                               
'/\[i\](.*?)\[\/i\]/is',                               
'/\[u\](.*?)\[\/u\]/is',
'/\[img\](.*?)\[\/img\]/is',
'/\[url\](.*?)\[\/url\]/is',
'/\[url\=(.*?)\](.*?)\[\/url\]/is'
);

$replace = array(
'<strong>$1</strong>',
'<em>$1</em>',
'<u>$1</u>',
'<img src="$1" />',
'<a href="$1">$1</a>',
'<a href="$1">$2</a>'
);

$var = preg_replace ($search, $replace, $var);

return $var;
}

?></u>',
'<img src="<?php
/*Funciones php*/

//Borrar espacios en blanco
function borrar($txt)
{
   return preg_replace('/\s+/i',"",$txt);
}

/*Funcion BBCODE*/
function bbcode($var) {
$search = array(
'/\[b\](.*?)\[\/b\]/is',                               
'/\[i\](.*?)\[\/i\]/is',                               
'/\[u\](.*?)\[\/u\]/is',
'/\[img\](.*?)\[\/img\]/is',
'/\[url\](.*?)\[\/url\]/is',
'/\[url\=(.*?)\](.*?)\[\/url\]/is'
);

$replace = array(
'<strong>$1</strong>',
'<em>$1</em>',
'<u>$1</u>',
'<img src="$1" />',
'<a href="$1">$1</a>',
'<a href="$1">$2</a>'
);

$var = preg_replace ($search, $replace, $var);

return $var;
}

?>" />',
'<a href="<?php
/*Funciones php*/

//Borrar espacios en blanco
function borrar($txt)
{
   return preg_replace('/\s+/i',"",$txt);
}

/*Funcion BBCODE*/
function bbcode($var) {
$search = array(
'/\[b\](.*?)\[\/b\]/is',                               
'/\[i\](.*?)\[\/i\]/is',                               
'/\[u\](.*?)\[\/u\]/is',
'/\[img\](.*?)\[\/img\]/is',
'/\[url\](.*?)\[\/url\]/is',
'/\[url\=(.*?)\](.*?)\[\/url\]/is'
);

$replace = array(
'<strong>$1</strong>',
'<em>$1</em>',
'<u>$1</u>',
'<img src="$1" />',
'<a href="$1">$1</a>',
'<a href="$1">$2</a>'
);

$var = preg_replace ($search, $replace, $var);

return $var;
}

?>"><?php
/*Funciones php*/

//Borrar espacios en blanco
function borrar($txt)
{
   return preg_replace('/\s+/i',"",$txt);
}

/*Funcion BBCODE*/
function bbcode($var) {
$search = array(
'/\[b\](.*?)\[\/b\]/is',                               
'/\[i\](.*?)\[\/i\]/is',                               
'/\[u\](.*?)\[\/u\]/is',
'/\[img\](.*?)\[\/img\]/is',
'/\[url\](.*?)\[\/url\]/is',
'/\[url\=(.*?)\](.*?)\[\/url\]/is'
);

$replace = array(
'<strong>$1</strong>',
'<em>$1</em>',
'<u>$1</u>',
'<img src="$1" />',
'<a href="$1">$1</a>',
'<a href="$1">$2</a>'
);

$var = preg_replace ($search, $replace, $var);

return $var;
}

?></a>',
'<a href="<?php
/*Funciones php*/

//Borrar espacios en blanco
function borrar($txt)
{
   return preg_replace('/\s+/i',"",$txt);
}

/*Funcion BBCODE*/
function bbcode($var) {
$search = array(
'/\[b\](.*?)\[\/b\]/is',                               
'/\[i\](.*?)\[\/i\]/is',                               
'/\[u\](.*?)\[\/u\]/is',
'/\[img\](.*?)\[\/img\]/is',
'/\[url\](.*?)\[\/url\]/is',
'/\[url\=(.*?)\](.*?)\[\/url\]/is'
);

$replace = array(
'<strong>$1</strong>',
'<em>$1</em>',
'<u>$1</u>',
'<img src="$1" />',
'<a href="$1">$1</a>',
'<a href="$1">$2</a>'
);

$var = preg_replace ($search, $replace, $var);

return $var;
}

?>">php</a>'
);

$var = preg_replace ($search, $replace, $var);

return $var;
}

?>


ahora aplicando la funcion para borrar espacios xD.

Código: php [Seleccionar]
<?php
$a = borrar($_POST['a']);
?>


Saludos.

11
PHP / Re: Que falla al insertar datos aqui?
« : febrero 14, 2010, 11:10:54 am »
Jajajaj, sin mentirte, yo tenia el mismo problema ayer xD, lo resolvi con ayuda xD.
El archivo config.php deberia ser hasi:
Código: php [Seleccionar]
<?php
$serv = 'localhost';
$serv_user = 'root';
$serv_pass = '';
$db_name = 'mini';
 
$conexion = mysql_connect($serv,$serv_user,$serv_pass) or die ('Error al conectar'.mysql_error());
mysql_select_db($db_name, $conexion) or die ('Error al seleccionar la base de datos'.mysql_error());
?>


Ok, el archivo deberia ir asi luego:
Código: php [Seleccionar]
<?php
include ('config.php');
 
$titulo = $_POST['titulo'];
$noticia = $_POST['noticia'];
$autor = $_POST['autor'];
 
If(!empty($titulo)){
/*variable con la consulta sql*/
$sql = 'Insert into noticias (
titulo,
noticia,
autor)
values
('.$titulo.',
'.$noticia.',
'.$autor.'');
//Fin
$result = mysql_query($sql,$conexion) || die(mysql_error());
mysql_close($conexion);

echo '
<b>Datos agregados exitosamente!</b><br />
<a href="agregar.php">Agregar otra noticia?</a>
';
}
else
{
echo '
<form method="post">
titulo:
<br>
<input name="titulo" type="text"><br />
noticia:
<br>
<textarea name="noticia"></textarea><br />
autor:
<br>
<input name="autor" type="text"><br />
<input type="submit" value="Agregar">
</form>';
}

?>

Pruebalo... >:(

12
Perl / Re: Mini tutorial de Perl Moderno
« : febrero 11, 2010, 11:12:06 am »
En perl se pueda que declarar el metodo http para hacer peticiones GET/POST, en caso que uses CGI::Form...

Seria bueno desarrollar algun CMS en perl por separado y testearlo.

13
PHP / Re: php + lenguaje ?
« : febrero 11, 2010, 10:55:08 am »
Hace tiempo el padre de la web era C y Perl lo supero.

Seguro ???, no puedes comparar un lenguaje interpretado y un lenguaje compilado asi por asi, C tiene la ventaja que es mas portatil que perl, yo tambien programo en perl, algo en C, yo a perl lo prefiero para programar mis script, PHP tiene mas ventaja en algunas cosas como las funciones, existe mucha mas funciones en php y mas documentacion, pero bueno a mi me gusta mas perl, pero bueno, yo creo que C es mas rapido que perl porque se acerca mas al nivel de la maquina.

Bueno en perl existen los modulos para hacer mas dinamico tus codes y te ayuda mas, pero ellos tienen sus ventajas y desventajas. Si programas algun proyecto, y en cada actualisacion tu code siempre estara mas dinamico y dependeras mas de los modulos, pero eso depende, ya que si usas perl para hacer tus cosas o para programar una web no hay problema, el problema esta cuando quieres publicar un code para su uso y por las dependencia ps se hace mas dificir su uso. Cuando yo programo en perl me gusta solo programar con modulos que traigan perl por defecto pero algunas veces es necesario usar modulos porque al fin y al cabo son funciones que te ayudaran a optimisar tu codigo.

Saludos. :-"

14
PHP / Re: Creando un panel de control
« : febrero 08, 2010, 07:35:00 pm »
Ya lo resolvi, el problema esque despues de la sentencia debebia usar mysql_fetch_array() xD.

15
PHP / Re: Creando un panel de control
« : febrero 07, 2010, 06:59:50 pm »
Al tratarlo de visualisar me tira:
Código: [Seleccionar]
SiNo
Código: php [Seleccionar]

<?php
mysql_connect('localhost','root','pass') or die ('Error al conectar a la base de datos'.mysql_error());
mysql_select_db('cms') or die ('Error al seleccionar Base de datos'.mysql_error());
if(mysql_query("select * from usuarios where nombre = 'asas' && password = 'asa'"))
{echo "Si";}{echo "No";}

?>

Osea se ejecuta el if y el else.

Páginas: [1] 2
. . . . . . . .