Falla en el mod Seo4SMF para SMF

Iniciado por WHK, 9 Enero 2009, 09:47 AM

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

Carloswaldo

Algo parecido ocurre en pretty-urls. Bueno, el tema del post no se devuelve en la url, pero sí ocurre esto:

Las urls son del tipo pagina.com/foro/nombre-foro/nombre-tema, donde "nombre-foro" es prácticamente ignorado, lo que realmente importa es el "nombre-tema".  Lo que ocurre es que siempre que tu pongas un nombre válido en el nombre-tema, así sea que esté en un foro privado te saldrá "El tema no existe o no tienes permiso para...", en cambio cuando pones un nombre-tema inválido lo que hace es redirigirte al index.

Así para saber los nombres de temas privados lo que se podría hacer es probar todas las combinaciones posibles por fuerza bruta, si te manda al index no existe, pero si te dice "El tema no existe..." voilá, tenemos el nombre de un tema privado.

Ahora, eso es sólo teoría, ya que en la práctica antes de encontrar el nombre de un tema privado lo que harías sería un DoS al servidor. xD

WHK

CitarAhora, eso es sólo teoría, ya que en la práctica antes de encontrar el nombre de un tema privado lo que harías sería un DoS al servidor. xD
jaja te estas juntando mucho con ozx que quiere crackear los hash de seguridad para resetear los passwords de admin  :P imagina estar letra por letra viendo temas, no todos usan el mismo idioma y para atinarle a un nombre sería mas fácil quejuntaras un buén billete y coimees al administrador del servidor para que te de acceso a la base de datos  :xD

De todas formas yo con ing_amc estamos discutiendo la solución y lanzar el parche o versión desatendida  :P talves hasta quede mejor que el petty-urls, quien sabe.

Carloswaldo

Que bien, cuando lo tengas me avisas.

Cita de: WHK en 11 Enero 2009, 22:12 PM
CitarAhora, eso es sólo teoría, ya que en la práctica antes de encontrar el nombre de un tema privado lo que harías sería un DoS al servidor. xD
jaja te estas juntando mucho con ozx que quiere crackear los hash de seguridad para resetear los passwords de admin  :P imagina estar letra por letra viendo temas, no todos usan el mismo idioma y para atinarle a un nombre sería mas fácil quejuntaras un buén billete y coimees al administrador del servidor para que te de acceso a la base de datos  :xD

XDDD Tienes razón, por eso digo que sólo es teoría (donde escuché eso antes) xD

De todas formas puedes seguir probando con un tema específico como pagina.com/foro/x/whk-para-coadmin o cosas asi xDD

Nakp

Cita de: Carloswaldo en 11 Enero 2009, 19:34 PM
Algo parecido ocurre en pretty-urls. Bueno, el tema del post no se devuelve en la url, pero sí ocurre esto:

Las urls son del tipo pagina.com/foro/nombre-foro/nombre-tema, donde "nombre-foro" es prácticamente ignorado, lo que realmente importa es el "nombre-tema".  Lo que ocurre es que siempre que tu pongas un nombre válido en el nombre-tema, así sea que esté en un foro privado te saldrá "El tema no existe o no tienes permiso para...", en cambio cuando pones un nombre-tema inválido lo que hace es redirigirte al index.

Así para saber los nombres de temas privados lo que se podría hacer es probar todas las combinaciones posibles por fuerza bruta, si te manda al index no existe, pero si te dice "El tema no existe..." voilá, tenemos el nombre de un tema privado.

Ahora, eso es sólo teoría, ya que en la práctica antes de encontrar el nombre de un tema privado lo que harías sería un DoS al servidor. xD

la gran diferencia es que con prettyurl se comrpueba si el usuario tiene privilegios para ver el tema :P
Ojo por ojo, y el mundo acabará ciego.

jdc

Otro "error" del pretty url's es que te da el nombre de usuario "real" del admin :D el seo4smf también...

Por ejemplo sin direcciones bonitas tú vez que el nick del admin es el-brujo pero no sabes sí es una máscara de usuario, con PU sí sabes el real

WHK


sirdarckcat


WHK

#17
Citarwtf con tu spanglish xD
jajaja y eso que hize un esfuerzo para tratar de explicar todo con la menor cantidad de palabras posibles jajaja.

La solución y futuro parche o versión desatendida XD la estamos viendo con ing_amc ya que varias personas me han pedido una solución, mientras tanto para evitar la sql inyección en seo4smf-redirect.php hize estas modificaciones:
Código (php) [Seleccionar]
// Pasamos a integer para evitar procesar datos no solicitados
$topic = (int)$_GET['t'];
$board = (int)$_GET['b'];
$user = (int)$_GET['u'];
$tpage = (int)$_GET['p'];

// Filtramos solo carácteres válidos por SMF con expresiones regulares
$other = preg_replace('|[^a-z0-9_=,;/\-.]|i', '', $_GET['o']);
$action = preg_replace('|[^a-z0-9_=,;/\-.]|i', '', $_GET['a']);
$param = preg_replace('|[^a-z0-9_=,;/\-.]|i', '', $_GET['param']);


Deben haber otras páginas en que puedas inyectar código sql debo verlo todavía, falta muchisimo por revisar pero entre los dos lo terminamos luego.

Alguien me preguntó por privado si estaba bién poner (int) directamente en la query del mysql y la verdad es mejor no hacerlo ya que antes de eso hay un if que verifica si hay contenido para procesar y si alguien ingresa letras o algo que no sea numérico lo pasará como válido y procesará la query incompleta causando un error de sintaxis asi que por eso es mas seguro ponerlo en la declaración de arriba para anticiparse. La expresión regular hace posible que puedas ingresar solo números, letras y los simbolos "_=,;/-." para que puedan ser procesados los links sin tener problemas de tener que procesar algo inesperado en alguna parte del script.
Con esto ya no necesitamos modificar las queryes de la consulta a la base de datos pero de todas formas lo haremos mañana para continuar con el parche, también queda ver todas las demás fallas pero eso lo hacemos de volada  :P

Hasta mañana.

berz3k

XDDD ese Spanglish r0x XDDD

-berz3k.

aristides_03

bueno si hay una forma de ayudar  dispongo de todo por que el seo es una gran utilidad para smf y es una gran las tima que el creador  dejo  abandonado su obra  :-X