> > Bueno, pues eso. Me ha quedado lo de comentar que la opción "a+" del
> > fopen es pelin peligrosa, si no se verifica que el fichero a abrir no es
> > un enlace simbólico a, por ejemplo a /etc/passwd ( si lo ejecuta como
> > root puede ser divertido... )
>
> Para nada. Este fallito si es de bult
Hola,
> > tambien era en el caso que el programa "nuestro" se ejecuto con setuid de
> > root
> >
> > Hay varios exploits que se aprovechan de eso, de no comprobar si el
> > fichero que el programa intenta abrir es un enlace simbólico o no existe
> >
> > Imagina que nuestro programa se ejecuta co
On Tue, 15 Jan 2002, Carles Pina i Estany wrote:
> Hola,
>
> > > Bueno, pues eso. Me ha quedado lo de comentar que la opción "a+" del
> > > fopen es pelin peligrosa, si no se verifica que el fichero a abrir no es
> > > un enlace simbólico a, por ejemplo a /etc/passwd ( si lo ejecuta como
> > > ro
Hola,
> > > En el man de system() lo único que veo sobre esto es:
> >
> > > Yo creo que cuando system llama a un programa normal sin privilegios
> >
> > no, no es cuando llama a un programa normal
>
> Quiero decir sin setuid ni setgid.
hombre, entonces claro, todo va con los permisos de quien l
Hola,
> > Bueno, pues eso. Me ha quedado lo de comentar que la opción "a+" del
> > fopen es pelin peligrosa, si no se verifica que el fichero a abrir no es
> > un enlace simbólico a, por ejemplo a /etc/passwd ( si lo ejecuta como
> > root puede ser divertido... )
>
> Para nada. Este fallito si es
Antes de que llegue la respuesta de Carles que está al caer, decir que
para ser offtopic se está estirando bastante esta discusión.
No os exciteis...
--
Antonio Castro wrote:
On 15 Jan 2002, Juan Antonio Martinez wrote:
Bueno, pues eso. Me ha quedado lo de comentar que la opción "a+" del
fo
On Tue, 15 Jan 2002, Carles Pina i Estany wrote:
>
>
> Hola,
>
> > > par de errores gordos de concepto en cuanto a seguridad ( el usar
> > > system() sin ajustar el entorno, por ejemplo ), pero por lo menos hace
> >
> > Eso no lo entiendo. A que te refieres con ajustar el entorno ?
> >
> > En
On 15 Jan 2002, Juan Antonio Martinez wrote:
> Bueno, pues eso. Me ha quedado lo de comentar que la opción "a+" del
> fopen es pelin peligrosa, si no se verifica que el fichero a abrir no es
> un enlace simbólico a, por ejemplo a /etc/passwd ( si lo ejecuta como
> root puede ser divertido... )
Pa
Hola,
> > quizás me equivoco, pero creo que el estándard ANSI C define qué tiene que
> > hacer fflush(xxx) cuando xxx es un flujo de salida, no de entrada
> >
> > En sistemas como Solaris o HP-UX que son los que tengo más a mano el
> > fflush(stdin) elimina todo lo que haya quedado en stdin, en c
Hola,
> > par de errores gordos de concepto en cuanto a seguridad ( el usar
> > system() sin ajustar el entorno, por ejemplo ), pero por lo menos hace
>
> Eso no lo entiendo. A que te refieres con ajustar el entorno ?
>
> En el man de system() lo único que veo sobre esto es:
> Yo creo que cuan
Hola,
> > > if (fgets(buffer,sizeof(buffer),stdin) ) {
> > > if ( buffer[strlen(buffer)-1] == '\n' )
> > > buffer[strlen(buffer)-1]='\0';
> > > fflush(stdin);
> >
> > estás seguro del fflush(stdin) ?
>
> No hay diferencia entre entrada y salida, porque eso es
> subjetivo. Juan A
On 15 Jan 2002, Juan Antonio Martinez wrote:
> par de errores gordos de concepto en cuanto a seguridad ( el usar
> system() sin ajustar el entorno, por ejemplo ), pero por lo menos hace
Eso no lo entiendo. A que te refieres con ajustar el entorno ?
En el man de system() lo único que veo sobre e
El mar, 15-01-2002 a las 11:38, Carles Pina i Estany escribió:
>
> quizás me equivoco, pero creo que el estándard ANSI C define qué tiene que
> hacer fflush(xxx) cuando xxx es un flujo de salida, no de entrada
>
> En sistemas como Solaris o HP-UX que son los que tengo más a mano el
> fflush(stdi
On Tue, 15 Jan 2002 11:38:41 +0100 (CET)
Carles Pina i Estany <[EMAIL PROTECTED]> wrote:
> On 15 Jan 2002, Juan Antonio Martinez wrote:
>
> > El substituto correcto de gets(buffer) es:
> >
> > if (fgets(buffer,sizeof(buffer),stdin) ) {
> > if ( buffer[strlen(buffer)-1] == '\n' )
> >
Hola,
On 15 Jan 2002, Juan Antonio Martinez wrote:
> El substituto correcto de gets(buffer) es:
>
> if (fgets(buffer,sizeof(buffer),stdin) ) {
> if ( buffer[strlen(buffer)-1] == '\n' )
> buffer[strlen(buffer)-1]='\0';
> fflush(stdin);
estás seguro del fflush(s
El sáb, 12-01-2002 a las 20:17, Jose Luis Alarcon escribió:
> Por favor, si hay por aqui alguien que
> conozca el C, le pido encarecidamente que
> eche un vistazo al programa que adjunto (es
> muy cortito) y averigue por que diablos
> falla la orden gets().
Amoaver...he estado siguiendo el threa
El Jan 15, Carles Pina i Estany escribió:
>
> Hola,
>
> > Si no recuerdo mal, "%s" hace que scanf coja cadenas separadas por
> > espacios. Para hacerlo cogiendo una línea:
> >
> > scanf( "%[^n]" , buffer ) ; getchar();
>
> pero eso tambien es tan peligroso como gets a palo seco, no? (sc
Hola,
> Si no recuerdo mal, "%s" hace que scanf coja cadenas separadas por
> espacios. Para hacerlo cogiendo una línea:
>
> scanf( "%[^n]" , buffer ) ; getchar();
pero eso tambien es tan peligroso como gets a palo seco, no? (scanf no
creo que compruebe el tamaño máximo de buffer para
El Jan 14, Drizzt Do'Urden escribió:
>
>
> >scanf("%s", &respuesta) -> Lee hasta que encuentres un final de línea
> >scanf("%s%*c", &respuesta) -> Lee hasta que encuentres un final de línea y
>
>
> Si, pero dudo que eso coja algo asi:
>
> cadena
Si no recuerdo mal, "%s" hace que sca
>scanf("%s", &respuesta) -> Lee hasta que encuentres un final de línea
>scanf("%s%*c", &respuesta) -> Lee hasta que encuentres un final de línea y
Si, pero dudo que eso coja algo asi:
cadena
Saludos
Drizzt
Hola.
Al utilizar scanf ten en cuenta lo que lees y lo que dejas.
scanf("%s", &respuesta) -> Lee hasta que encuentres un final de línea
scanf("%s%*c", &respuesta) -> Lee hasta que encuentres un final de línea y
luego desprecia un carácter.
Por cierto, esto está en "man scanf", es lo primero
No te sale al compilar el mensaje ese de...
Warning : The gets () function is dangerous and should not be used
Hay que usarla com cuidado, mejor usa scanf, te permite mas control sobre lo
que haces.
Saludos
Sergio
A las 11:17 del 12 de Jan de 2002, Jose Luis Alarcon dijo:
> Por favor, si ha
El ds, 12-01-2002 a las 20:17, Jose Luis Alarcon escribió:
> Por favor, si hay por aqui alguien que
> conozca el C, le pido encarecidamente que
> eche un vistazo al programa que adjunto (es
> muy cortito) y averigue por que diablos
> falla la orden gets().
>
> Os juro que me estoy volviendo lo
23 matches
Mail list logo