HexBrain

Browse / CVEs / CVE-2024-39250

CVE-2024-39250· efroTech / timetrax

EfroTech Timetrax v8.3 - Sql Injection

highseverity
4.9%likelihood of exploitation, next 30 days
92%of all CVEs are less likely
Readycheck to confirm it

EfroTech Timetrax v8.3 was discovered to contain an unauthenticated SQL injection vulnerability via the q parameter in the search web interface.

Impact

Unauthenticated attackers can execute SQL injection attacks to extract or modify sensitive timetrax database information.

Fix

Update EfroTech Timetrax to a version later than v8.3 that patches the SQL injection vulnerability.

How to confirm it

Send: GET /Login.aspx
Positive when: contains(body,"TimeTrax - Cloud HR Software") and contains(content_type, "text/html") and status_code == 200
Send: GET /search.aspx?q='
Positive when: contains_all(body,"Incorrect syntax near","Unclosed quotation mark after the character string") and contains(content_type, "text/html") and status_code == 500

Run it with nuclei: nuclei -id CVE-2024-39250 -u <target>. This check is not marked as verified by its authors.

The full check
id: CVE-2024-39250

info:
  name: EfroTech Timetrax v8.3 - Sql Injection
  author: s4e-io,efran
  severity: high
  description: |
    EfroTech Timetrax v8.3 was discovered to contain an unauthenticated SQL injection vulnerability via the q parameter in the search web interface.
  impact: |
    Unauthenticated attackers can execute SQL injection attacks to extract or modify sensitive timetrax database information.
  remediation: |
    Update EfroTech Timetrax to a version later than v8.3 that patches the SQL injection vulnerability.
  reference:
    - https://nvd.nist.gov/vuln/detail/CVE-2024-39250
    - https://www.tenable.com/cve/CVE-2024-39250
    - https://github.com/efrann/CVE-2024-39250
    - https://vuldb.com/?id.272268
  classification:
    epss-score: 0.04886
    epss-percentile: 0.92144
  metadata:
    vendor: efroTech
    product: timetrax
    fofa-query: icon_hash="-661694518"
  tags: cve,cve2024,sqli,timetrax,vuln

flow: http(1) && http(2)

http:
  - raw:
      - |
        GET /Login.aspx HTTP/1.1
        Host: {{Hostname}}

    matchers:
      - type: dsl
        dsl:
          - 'contains(body,"TimeTrax - Cloud HR Software")'
          - 'contains(content_type, "text/html")'
          - "status_code == 200"
        condition: and
        internal: true

  - raw:
      - |
        GET /search.aspx?q=' HTTP/1.1
        Host: {{Hostname}}

    matchers:
      - type: dsl
        dsl:
          - 'contains_all(body,"Incorrect syntax near","Unclosed quotation mark after the character string")'
          - 'contains(content_type, "text/html")'
          - "status_code == 500"
        condition: and

References

Use this check only on systems you are authorised to test. Where the data comes from