Autor Tema: kNews - Sistema de noticias  (Leído 24479 veces)

Desconectado CarlosRdrz

  • Moderador Global
  • PHPero Master
  • *****
  • Mensajes: 2.505
  • Karma: 131
  • Sexo: Masculino
  • A.k.a. TLX
    • Ver Perfil
Re: kNews - Sistema de noticias
« Respuesta #45 en: 11 de Septiembre de 2007, 15:29:10 pm »
Si, son bugs por lo visto logicos, que se producen por poner titulos en lenguaje html, espero arreglarlo pronto.
La dedicación de mi respuesta sera directamente proporcional a la dedicación de tu pregunta.
Hacer códigos que entiendan las máquinas es fácil, lo difícil y realmente útil es hacer códigos que entiendan las personas.
http://twitter.com/CarlosRdrz
http://www.carlosrdrz.es

Comunidad PHPeros

Re: kNews - Sistema de noticias
« Respuesta #45 en: 11 de Septiembre de 2007, 15:29:10 pm »

Desconectado alienmaster

  • PHPer@ Fijo
  • ***
  • Mensajes: 102
  • Karma: 12
  • Sexo: Masculino
  • No dependo de nadie!!
    • Ver Perfil
    • 4cosaS
Re: kNews - Sistema de noticias
« Respuesta #46 en: 16 de Septiembre de 2007, 04:47:30 am »
Este mensaje te lo posteo en Electros, PHPeros y PHP-Hispano:
El script lo probe en loscalhost esta ultima version, me parecio aceptable el panel de admin y demas, pero cuando llego el momento de abrir el codigo empeze por funciones.php y nada mas abrirlo vi un bug de seguridad. Cualquier usuario logeado, por ejemplo un redactor al cual no el das permisos ni de editar ni nada podria vulnerar la seguridad del script con un formulario enviando un post sobre funciones.php y crearia un nuevo admin con nivel de admisintrador desde el cual se podria logear y hacer algun desastre. Aparte de crear un admin usando formularios hacia el archivos funciones.php podria hacer miles de cosas a las cuales no tiene nivel. Por lo demas me ha parecido bien el script.

Desconectado CarlosRdrz

  • Moderador Global
  • PHPero Master
  • *****
  • Mensajes: 2.505
  • Karma: 131
  • Sexo: Masculino
  • A.k.a. TLX
    • Ver Perfil
Re: kNews - Sistema de noticias
« Respuesta #47 en: 16 de Septiembre de 2007, 11:34:05 am »
Aqui tienes el codigo para crear un nuevo usuario.

if($_POST[newuser]) {
if(
mysql_query("INSERT INTO `usuarios` (`id` ,`nombre` ,`pass` ,`email` ,`rango`)VALUES (NULL , '".$_POST[name]."', '".md5(md5($_POST[pass]))."', '".$_POST[mail]."', '".$_POST[rango]."');")) {
$_SESSION[panel] = "Nuevo User";
} else {
$_SESSION[panel] = "ENuevo User";
}
$_SESSION[panelop] = $_POST[name];
header("Location: panel.php");
}


¿Como puede un usuario Redactor, o Moderador, crear un nuevo formulario si no puede acceder al formulario para el mismo?

Saludos

P.D.= De todas formas te digo que el sistema tiene algunos problemas de constantes y puede ser atacado por inyeccion sql en algunos servidores, en proximas versiones tratare estos dos problemas.
La dedicación de mi respuesta sera directamente proporcional a la dedicación de tu pregunta.
Hacer códigos que entiendan las máquinas es fácil, lo difícil y realmente útil es hacer códigos que entiendan las personas.
http://twitter.com/CarlosRdrz
http://www.carlosrdrz.es

Desconectado naveda

  • Administrador General
  • PHPero Master
  • *****
  • Mensajes: 2.282
  • Karma: 165
  • Sexo: Masculino
    • Ver Perfil
    • naveda.me
Re: kNews - Sistema de noticias
« Respuesta #48 en: 16 de Septiembre de 2007, 17:35:19 pm »
TLX acostumbra a poner las ' ':
$_VARIABLE['indice']
Por favor, leete las Normas


Desconectado alienmaster

  • PHPer@ Fijo
  • ***
  • Mensajes: 102
  • Karma: 12
  • Sexo: Masculino
  • No dependo de nadie!!
    • Ver Perfil
    • 4cosaS
Re: kNews - Sistema de noticias
« Respuesta #49 en: 16 de Septiembre de 2007, 17:53:58 pm »
Aqui tienes el codigo para crear un nuevo usuario.

if($_POST[newuser]) {
if(
mysql_query("INSERT INTO `usuarios` (`id` ,`nombre` ,`pass` ,`email` ,`rango`)VALUES (NULL , '".$_POST[name]."', '".md5(md5($_POST[pass]))."', '".$_POST[mail]."', '".$_POST[rango]."');")) {
$_SESSION[panel] = "Nuevo User";
} else {
$_SESSION[panel] = "ENuevo User";
}
$_SESSION[panelop] = $_POST[name];
header("Location: panel.php");
}


¿Como puede un usuario Redactor, o Moderador, crear un nuevo formulario si no puede acceder al formulario para el mismo?

Saludos

P.D.= De todas formas te digo que el sistema tiene algunos problemas de constantes y puede ser atacado por inyeccion sql en algunos servidores, en proximas versiones tratare estos dos problemas.

Vamos a ver, por ejemplo:
Yo soy un amigo tuyo vamos a suponer, y me haces redactor en tu web y no me das mas nivel pro que no confias de mi por cosas del pasado por ejemplo. Pues yo cojo, me descargo tu script y cominezo a buscarle bugs... encuentro ese, y entonces no me basta mas que abrir el dreamweaver y crear un formulario que haga action en tuweb/funciones.php y entonces me crea una cuenta de admisnitrador, entonces acedo y me logeo y te hago un desastre, te borro todo.

Ahi ves un ejemplo calro, tu script cualuiqer usuario con rango inferior a administrador si es un poco inteligente sabra como hacerse admin.

Salu2

Desconectado CarlosRdrz

  • Moderador Global
  • PHPero Master
  • *****
  • Mensajes: 2.505
  • Karma: 131
  • Sexo: Masculino
  • A.k.a. TLX
    • Ver Perfil
Re: kNews - Sistema de noticias
« Respuesta #50 en: 16 de Septiembre de 2007, 18:09:45 pm »
Naveda agregare eso en proximas actualizaciones.
Alienmaster, ahora lo entiendo. ¿Sabes alguna forma de poder evitarlo?
Me imagino que con $_SERVER['HTTP_REFERER'] sobrara no?

Un saludo
La dedicación de mi respuesta sera directamente proporcional a la dedicación de tu pregunta.
Hacer códigos que entiendan las máquinas es fácil, lo difícil y realmente útil es hacer códigos que entiendan las personas.
http://twitter.com/CarlosRdrz
http://www.carlosrdrz.es

Desconectado alienmaster

  • PHPer@ Fijo
  • ***
  • Mensajes: 102
  • Karma: 12
  • Sexo: Masculino
  • No dependo de nadie!!
    • Ver Perfil
    • 4cosaS
Re: kNews - Sistema de noticias
« Respuesta #51 en: 16 de Septiembre de 2007, 18:56:53 pm »
Naveda agregare eso en proximas actualizaciones.
Alienmaster, ahora lo entiendo. ¿Sabes alguna forma de poder evitarlo?
Me imagino que con $_SERVER['HTTP_REFERER'] sobrara no?

Un saludo
Esa no, pues con curl y poco mas se puede vulnerar esa forma d eproteccion de  mediante referers, pero simplemente añade una proteccion en los mysql_query() del funciones.php de forma que si el nivel es inferior al del la accion del query sigiente, y hay post pues seria un ataque, pues pones un condicional que si hay post y el nivel es inferiro al necesario que salga un exit()

Salu2

Desconectado CarlosRdrz

  • Moderador Global
  • PHPero Master
  • *****
  • Mensajes: 2.505
  • Karma: 131
  • Sexo: Masculino
  • A.k.a. TLX
    • Ver Perfil
Re: kNews - Sistema de noticias
« Respuesta #52 en: 16 de Septiembre de 2007, 19:23:14 pm »
Pero ahora que lo pienso, de todos modos tengo arriba del todo tengo un
 if($_SESSION[usuario]) { 
Asi que si viene de otro formulario, la $_SESSION['usuario'] no existiria y no podria ejecutar codigo. ¿No es cierto?
¿O si esta logueado ya en un usuario cualquiera, puede usar el formulario desde otro dominio, o su maquina local?

Tambien tengo el rango del usuario en una session, si hago un if indicando si el rango escrito en la session no es el de administrador y que de error, ¿Seria vulnerable de alguna forma?

Saludos
La dedicación de mi respuesta sera directamente proporcional a la dedicación de tu pregunta.
Hacer códigos que entiendan las máquinas es fácil, lo difícil y realmente útil es hacer códigos que entiendan las personas.
http://twitter.com/CarlosRdrz
http://www.carlosrdrz.es

Desconectado alienmaster

  • PHPer@ Fijo
  • ***
  • Mensajes: 102
  • Karma: 12
  • Sexo: Masculino
  • No dependo de nadie!!
    • Ver Perfil
    • 4cosaS
Re: kNews - Sistema de noticias
« Respuesta #53 en: 16 de Septiembre de 2007, 23:36:47 pm »
Pero ahora que lo pienso, de todos modos tengo arriba del todo tengo un
 if($_SESSION[usuario]) { 
Asi que si viene de otro formulario, la $_SESSION['usuario'] no existiria y no podria ejecutar codigo. ¿No es cierto?
¿O si esta logueado ya en un usuario cualquiera, puede usar el formulario desde otro dominio, o su maquina local?

Tambien tengo el rango del usuario en una session, si hago un if indicando si el rango escrito en la session no es el de administrador y que de error, ¿Seria vulnerable de alguna forma?

Saludos
Eso no tiene nada que ver, pues la session usuario se la crea tambien a los redactores.

Desconectado CarlosRdrz

  • Moderador Global
  • PHPero Master
  • *****
  • Mensajes: 2.505
  • Karma: 131
  • Sexo: Masculino
  • A.k.a. TLX
    • Ver Perfil
Re: kNews - Sistema de noticias
« Respuesta #54 en: 16 de Septiembre de 2007, 23:48:43 pm »
Eso ya lo se.
Pero en $_SESSION usuario, si no existe, no puede hacer ninguna tarea en el archivo funciones.php, mi pregunta es si le dejara usarlo si el formulario viene desde otro dominio distinto al del sistema kNews.

Lo segundo es que $_SESSION rango contiene el rango del usuario, asi que con solo con poner un if para comprobar si el rango es Admin ya seria seguro. ¿No?

Un saludo
La dedicación de mi respuesta sera directamente proporcional a la dedicación de tu pregunta.
Hacer códigos que entiendan las máquinas es fácil, lo difícil y realmente útil es hacer códigos que entiendan las personas.
http://twitter.com/CarlosRdrz
http://www.carlosrdrz.es

Desconectado alienmaster

  • PHPer@ Fijo
  • ***
  • Mensajes: 102
  • Karma: 12
  • Sexo: Masculino
  • No dependo de nadie!!
    • Ver Perfil
    • 4cosaS
Re: kNews - Sistema de noticias
« Respuesta #55 en: 17 de Septiembre de 2007, 03:55:14 am »
Eso ya lo se.
Pero en $_SESSION usuario, si no existe, no puede hacer ninguna tarea en el archivo funciones.php, mi pregunta es si le dejara usarlo si el formulario viene desde otro dominio distinto al del sistema kNews.
No tiene nada que ver que venga de fuera, pues no usas ningun sistema de comprador de referer, y si lo usaras da lo mismo, pues el referer se puede "manipular"

Lo segundo es que $_SESSION rango contiene el rango del usuario, asi que con solo con poner un if para comprobar si el rango es Admin ya seria seguro. ¿No?

Un saludo
Pues su la session rango contiene el rango haz eso, unos condicionales en lof orlmularios para su ejecucion segun el rango necesario.

Desconectado FeDe

  • PHPero Avanzado
  • ****
  • Mensajes: 448
  • Karma: 35
  • Sexo: Masculino
  • BaDyDj -> ¡Mi Stylo, Mi ViDa!
    • Ver Perfil
Re: kNews - Sistema de noticias
« Respuesta #56 en: 17 de Septiembre de 2007, 15:02:55 pm »
Buenas,

TLX no sé nada de las sesiones que utilizas en tu script pero vamos ha hacer que guardas las sessiones del rango, con $_SESSION["rango"] y el valor de administrador es admin...



if($_SESSION["rango"] != "admin") {
exit(
"No tienes acceso");
} else {
//Query para agregar administrador
}



Así creo que serviría :)

Saludos :P
Sin Firma me haces una? :P

Desconectado CarlosRdrz

  • Moderador Global
  • PHPero Master
  • *****
  • Mensajes: 2.505
  • Karma: 131
  • Sexo: Masculino
  • A.k.a. TLX
    • Ver Perfil
Re: kNews - Sistema de noticias
« Respuesta #57 en: 22 de Septiembre de 2007, 12:45:25 pm »
kNews actualizado a la version 1.2
Podeis ver los cambios en el primer post del tema.
Muchas gracias a todos por vuestras ayudas, sugerencias y peticiones.

Un saludo,
TLX
La dedicación de mi respuesta sera directamente proporcional a la dedicación de tu pregunta.
Hacer códigos que entiendan las máquinas es fácil, lo difícil y realmente útil es hacer códigos que entiendan las personas.
http://twitter.com/CarlosRdrz
http://www.carlosrdrz.es

Desconectado naveda

  • Administrador General
  • PHPero Master
  • *****
  • Mensajes: 2.282
  • Karma: 165
  • Sexo: Masculino
    • Ver Perfil
    • naveda.me
Re: kNews - Sistema de noticias
« Respuesta #58 en: 22 de Septiembre de 2007, 12:55:27 pm »
Error de Conexion a la base de datos.
Por favor, leete las Normas


Desconectado CarlosRdrz

  • Moderador Global
  • PHPero Master
  • *****
  • Mensajes: 2.505
  • Karma: 131
  • Sexo: Masculino
  • A.k.a. TLX
    • Ver Perfil
Re: kNews - Sistema de noticias
« Respuesta #59 en: 22 de Septiembre de 2007, 13:03:57 pm »
Jaja, se me olvido configurar el config.php :$
Ya esta arreglado,
Un saludo!!
La dedicación de mi respuesta sera directamente proporcional a la dedicación de tu pregunta.
Hacer códigos que entiendan las máquinas es fácil, lo difícil y realmente útil es hacer códigos que entiendan las personas.
http://twitter.com/CarlosRdrz
http://www.carlosrdrz.es