FAQ de Vulnerabilidades

Iniciado por sirdarckcat, 10 Enero 2006, 01:44 AM

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

Proxy Lainux

#10
hola

estoy revisando en pdf de formatstring pero tengo una duda sobre un ejemplo... supuestamente es codigo

printf ("The magic number is: \x25d\n", 23);

deberia funciona de esta forma printf ("The magic number is: %d\n", 23);

pero cuando lo compilo me dice esto y no lo puedo compilar

secuencia de escape hexadecimal fuera de rango

porke pasa eso? alguien me puede decir porfavor  ;D

---EDITADO

ya encontre porke.. lo que pasa es que en el pdf se ekivokaon y en vez de poner \x25 d pusieron \x25d, por esa pequeña separacion no funcionaba, jeje...

Chuflo

Con el problema de Banco yo dejaria asi la funcion cajero

cajero(persona,dinero,cuenta){
   if(persona==cuenta.dueño){
       if(dinero<=cuenta.total){
          cuenta.total = cuenta.total + cuenta;
          dar.dinero.a.persona;
       }sino{
          decir("No tiene saldo señor/señora");
       }
   }sino{
      alarma_prendida=true;
   }
}

madridserginho

Si esto lo he probado yo, viene en el metasploit framework del backtrack 4 beta, pero yo tengo una duda y me gustaría que me ayudarais.He estado mucho tiempo con esto del hacking, he probado sacar contraseñas de windows, credenciales de red, he usado sniffers con envenenamiento de tablas para sacar contraseñas, crackeado wifis y algunas cosas mas.

Tengo conocimientos de C,java,visual...Pero nunca he trabajado con APIs,

ahora he llegado al punto de las vulnerabilidades y me he estancado un poco, he querido unar el metasploit pero la mayoría de los exploits no funcionan o no los se usar ya que estan parcheados,por lo tanto nunca me ha funcionado mucho esto de los exploits.
Primero me gustaría saber de una página donde se pongan exploits ya hechos para ir viendo como se usan y demás,tambien hay muchos que no se como se compilan, y una vez que sepa como se usan bien los exploits me gustaría saber los pasos para crealos yo mismo, que necesito para buscar vulnerabilidades,como va eso de las shellcode, y finalmente la programación de estos.Esque como no encuentro ninguno actualizado.

Si porfavor podeis ponerme link de la web por orden así podría ir aprendiendo paso por paso,la verdad ganas no me faltan pero no se por donde empezar,también no se si es mejor empezar por exploits locales y luego pasar a los de red, vosotros me direis,os agradecería que me guiarais un poco.

Gracias por adelantado.  ;-)

AlbertoBSD

#13
Bueno ahi esta el link.

http://foro.elhacker.net/bugs_y_exploits-b32.0/ :rolleyes:

Generalmente podrías empezar por los siguientes:

http://foro.elhacker.net/bugs_y_exploits/taller_de_introduccion_a_bugsexploits-t103198.0.html
http://foro.elhacker.net/bugs_y_exploits/taller_de_stack_overflows_en_windows_por_rojodos-t57910.0.html

El orden pues no hay mucho próximamente se podrán lo FAQ para que estos sean leídos primeros y después pongas las dudas que tengas.

Saludos
Donaciones
1Coffee1jV4gB5gaXfHgSHDz9xx9QSECVW

AlbertoBSD

#14
Pues eso, son libres de preguntar sobre los temas antes expuestos y cualquier sobre el tema de bugs y exploits de aplicaciones aquí.

Saludos
Donaciones
1Coffee1jV4gB5gaXfHgSHDz9xx9QSECVW

F1r3544

#15
Muy interesante.
" Sólo la cultura salva los pueblos" (Sí das de comer pescado a un pobre lo ayudas por una jornada, pero si lo enseñas a pescar lo ayudarás para toda la vida).

F1r3544

#16
Cita de: sirdarckcat en 14 Enero 2006, 03:47 AM
Segunda Sesión

Tipos de Bugs:

Nivel Aplicación
Nivel Web

Esta sesión nos centraremos en:
Nivel Aplicación se refiere a BoF, HoF, y FSoF.

Este taller es de práctica, anexo documentación, porque la info que daré aqui no es suficiente.

los BoF son vulnerabilidades que se dan porque el programador, al calcular la longitud de memoria asignada a tal variable, permite que el usuario meta mas de lo permitido, esto es porque en C, por ejemplo, al meter asi:
scanf("%s",string);
se empiezan a guardar en posiciones despues de la direccion de memoria guardada, asi que no hay algo que le diga alto.

si esta información se guarda en el Stack, parte de la memoria, donde se empujan funciones, se puede hacer que se ejecute código.
Mas info en:
http://en.wikipedia.org/wiki/Buffer_overflow

Los HoF, se crean cuando se usa, (de nuevo C), una  funcion, llamada malloc, que sire para especificar, cierta cantidad de memoria, lo que nos permite modificar variables.
Mas info en google xD

Los FSoF, son vulnerabilidades, al usar algo asi:
printf(variable);
documentación anexa.

Bueno.
deben leer y aparte si necesitan, investigar sobre estos temas, ya que los necesitaran para su siguiente tarea.

Esta es la historia de mi amigo Paco

Citar
Hoy Paco compró un software nuevo, llamado Apahuichtle, es un WebServer, y se supone que es anti todo, porque no soporta programación del lado del servidor.
Pero al pobre paco, lo han defaceado mil veces.
Lo unico que sabe, es que es una vulnerabilidad llamada BoF. busco en google que significa y encontro que es Birds of a Feather, asi que se ha puesto a borrar todos los archivos de pajaron que tenia.
Aun asi lo siguen defaceando.
Este es el codigo fuente de Apahichtle:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(int g, char *f[])
{
   FILE *arc;
   char buf[255],xyz[255],c;
   int jk=0,i,cl;
   scanf("%s %s %s",buf,xyz,buf);
   scanf("%s",buf);
   scanf("%s",buf);
   scanf("%s",buf);
   scanf("%s",buf);
   strcpy(buf,"C:/WEB");
   strcat(buf,xyz);
   arc = fopen(buf, "r");
   if (arc == NULL){
      printf(" ARCHIVO INVALIDO %s",buf);
      return 0;
   }
   cl=0;
   c = getc(arc);
   while (c != EOF){
         printf("%c",c);
         if (c=='\n'){
            printf("\n");
            c = getc(arc);
            //printf("%d",cl);
            cl=0;
         }else{
               c = getc(arc);
               cl++;
         }
   }
   fclose(arc);
   return 0;
}


Paco me mando el instalador tambien, lo dejo anexo.

Debes encontrar todoss los bugs que puedas.
te recuerdo que debes leer la documentación, para que puedas encontrara las vulnerabilidades que contiene este programa.



Hola qué tal, la vulnerabilidad está en :
Citar

strcpy(buf,"C:/WEB");
strcat(buf,xyz);
arc = fopen(buf, "r");


La razón  es porque, a buf se le asigna un valor de 255, de hay no se puede pasar. Y claro un usuario con fines educativo no ará eso, pero y los chicos que si lo quieren hacer. Con lo que si el chico que quiere hacer el desbordamiento solo tiene que introducir más caracteres que sobrepase 255, para sobrescrivir la memoria reservada, y poder ejecutar código arbitrario.

strcpy(buf,"C:/WEB"); Copia  C:/WEB en buf,  Luego strcat(buf, xyz); copia la ultima linea de xyz a buf, y luego fopen actua. Y hay es dónde ocurre el desborde (Overflow).
" Sólo la cultura salva los pueblos" (Sí das de comer pescado a un pobre lo ayudas por una jornada, pero si lo enseñas a pescar lo ayudarás para toda la vida).

SeanHjust

#17
Es un Post realmente interesante una buena introduccion! ;-) ;-) ;-) ;-) ;-) ;-) ;-) ;-) ;-)


Misak

Bueno,en el foro vi todo menos esto,como se arreglan,ya se que en esta página se enseña lo contrario,pero que como esta el ataque tambien esta la defensa.  ;)

Bueno quisiera una pagina buena o un manual o guía buena de calidad y que la pueda entender alguien que no sepa nada del tema mas alla de que sepa yo o no,por las dudas.

Bueno espero que alguien me responda lo mas rapido posible. :d

Muchas gracias

AlbertoBSD

Pues dependiendo del tipo de programa que se, si es un programa comercial tendrías que esperar a que se lance la nueva versión, o bajar los parchas si es que los hay.

Si es código libre igualmente hay que bajar el parche o la versión mas actual.

Si es código web tuyo o de alguien mas habra que corregirlo desde el código.

Saludos
Donaciones
1Coffee1jV4gB5gaXfHgSHDz9xx9QSECVW