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 - Debci

#1481
ASM / Re: Mi primer programa en NASM
2 Abril 2010, 13:08 PM
Solved ^^

Saludos
#1482
ASM / Mi segundo programa en ASM
2 Abril 2010, 12:19 PM
Hola a todos, esta vez he querido leer un caracter de stdin pero hay segmentation fault, es porque alamaceno lo leido en esi y no soy capaz de derteminar la length de este para darselo al sys_write, es basicamente un programa de echo:

Código (asm) [Seleccionar]

section .text
  global _start ;parida que necesita el linker xD

_start: ;entry point
       pop ebx
       pop ebx
       pop ebx
       pop ebx
       mov eax,5
       add     ebx,ecx
mov edx,len ;Longitud del mensaje
mov ecx,msg ;Mensaje que vamos a escribir
mov ebx,1 ;file descriptor (stdout)
mov eax,4 ;llama de sistema numero 4 (sys_write)
int 80h ;call al kernel para que ejecute las sentencias
       pushad ;Guardamos registros
       pushfd ;Guardamos flags
       mov     eax, 3 ;sys_read(3)
       mov     ebx, 0 ;stdin (0)
       mov     ecx, esi ;Guardamos la string en esi
       mov     edx, 1 ;nnumero de bytes a leer
       int     80h ;llamada al kernel de linux
       popfd ;re-establecemos flags
       popad ;re-establecemos registros
       ret ;retorno para llamar al procedimiento
       
       mov edx,length2 ;longitud del mensaje
mov ecx,esi ;mensaje a escribir
       mov ebx,1 ;file descriptor (stdout)
       mov eax,4 ;llamada a sistema numero 4 (sys_write)
int 80h ;linux esta aqui!
       mov     eax,1 ;llamada a sistema numero 1 (sys_exit)
int 80h ;llamada al kernel, linux acabará con la ejecución del proceso
       


section .data

msg db 'Hola mundo!',10 ;la primera cadena
mensaje2 db 'a',10
len equ $ - msg ;longitud de nuestra cadena
length2 equ  $ - mensaje2



Saludos
#1483
ASM / Re: Mi primer programa en NASM
2 Abril 2010, 12:17 PM
Cita de: Eternal Idol en  2 Abril 2010, 12:10 PM
¿Como que se ejecuta tres veces el sys_write? ¿No sera que al olvidarte de poner el 0 terminador de cadena al escribir msg tambien sale mensaje2?

¿Probaste con 0Ah?
pero se supone que solo lo llamo una vez como es que escribe dos veces la cadena?

Saludos
#1484
ASM / Mi primer programa en NASM
2 Abril 2010, 11:51 AM
Hola a a todos, me va gustando esto del asm xD
Mirad he hecho mi primer code, muy sencillo un hi World clasico pero con unas cosillas mas:

Código (asm) [Seleccionar]

section .text
  global _start ;parida para tener al linker contento

_start: ;entry point

mov edx,len ;colocamos en edx como primer argumento de la llamada a sys_write len
mov ecx,msg ;en ecx el segundo argumento que es una define double word (la cadena)
mov ebx,1 ;el file descriptor, el out standard
mov eax,4 ;llamada a sistema (sys_write)
int 80h ;llamamos al kernel para que ejecute
       jmp segundaLlamada ;salto incondicional a otra seción de codigo

segundaLlamada:

       mov edx,length2 ;lo mismo de antes
mov ecx,mensaje2 ;lo mismo
mov ebx,1 ;lo mismo
mov eax,4 ;mas de lo mismo
int 80h ;mas todavia
       mov eax,1 ;llamamos a 1 (sys_exit)
       mov ebx,0       ;codigo de salida, o eso he entendido
int 80h ;otra vez mi querido linux

section .data

msg db 'Hola mundo!',10 ;cadena
mensaje2 db 'Y buenos dias NASM',10
len equ $ - msg ;cadena
length2 equ  $ - mensaje2


El problema es que ejecuta 3 veces el syswrite cuando solo deberian ser dos, debuggeo y me fijo en que hace el salto a segundaLlamada y despues de eso la vuelve a ejecutar.
Como es eso?

Otra duda, como es que no puedo poner el valor de salto de linea como ah? si es 0x0a porque no puedo poner ah tengo que poner 10 o 0xa no lo entiendo con 0x80 si me deja pues pongo 80h.

Saludos

Saludos
#1485
Java / Re: Dudas con Strings
2 Abril 2010, 10:58 AM
Cita de: Leo Gutiérrez. en  2 Abril 2010, 05:35 AM
Sí, mi problema es que quería hacer todo con la clase String, no sabía de StringBuffer.

Queda resuelto así:

Código (java) [Seleccionar]
public class learn
{
    public static void voltear(StringBuffer string)
    {
        StringBuffer temporal = new StringBuffer(string);
        string.setCharAt(0, string.charAt(string.length() - 1));
        for(int i = 1; i < string.length(); i++)
            string.setCharAt(i, temporal.charAt(i - 1));
        System.out.println(string);
    }
    public static void main(String []args)
    {
        StringBuffer string = new StringBuffer("HOLA");
        System.out.println(string);
        for(int i = 0; i < string.length(); i++)
        voltear(string);
    }
}   


Gracias.
Character.toString();
Solo digo eso ^^

Saludos
#1486
Todos queremos un hijo de shell root pero el pobre tiene que descansar xD
Es cierto podrias enseñarnos exploits en cocnreto que el ms08_67 esta ya muy visto xD ademas no he conseguido ni una shell por vulnerabilidad del SMB en el 445.

Saludos
#1487
ASM / Re: Duda sobre OPCODE
1 Abril 2010, 22:52 PM
Gracias me habeis aclarado muchas cosas.

Saludos
#1488
ASM / Re: Duda sobre OPCODE
1 Abril 2010, 22:10 PM
Cita de: Hacker_Zero en  1 Abril 2010, 21:14 PM
No son caracteres hexadecimales, son numeros hexadecimales, que se pasan a binario  :P.

Saludos
claro, pero cada numero hexadecimal representa un caracter no?
Entonces lo que vemos al abrir un ejecutable con editor de texto, si pasamos los caracteres ascii a hexadecimal y este numero lo relacionamos en la tabla sale desensamblado?
Aunque si no me equivoco todo esto iba por proceso (en memoria) y no en DD.

Saludos
#1489
Cita de: tragantras en  1 Abril 2010, 21:42 PM
ips privadas de clase A:

A   10.0.0.0 hasta 10.255.255.255
No tenia ni idea xDDD

Saludos
#1490
Cita de: Alex@ShellRoot en  1 Abril 2010, 20:09 PM
Lo dices por estò 10.211.55.140. Pwned! esta dentro de una red!
Mi stack se ha desbordado xDDDDD
Saludos