CVE-2024-44313

8.1 HIGH

📋 TL;DR

CVE-2024-44313 is an incorrect access control vulnerability in TastyIgniter 3.7.6 that allows unauthorized users to access and generate invoices without proper permission checks. This affects all TastyIgniter installations running version 3.7.6, potentially exposing sensitive order and customer information.

💻 Affected Systems

Products:
  • TastyIgniter
Versions: 3.7.6
Operating Systems: All platforms running TastyIgniter
Default Config Vulnerable: ⚠️ Yes
Notes: All installations of TastyIgniter 3.7.6 are vulnerable regardless of configuration.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could access all invoice data, including customer details, order information, and potentially payment data, leading to data breach, privacy violations, and financial fraud.

🟠

Likely Case

Unauthorized users accessing invoice data they shouldn't see, potentially exposing customer information and order details to competitors or malicious actors.

🟢

If Mitigated

With proper access controls, only authorized administrative users can access invoice functionality, limiting exposure to legitimate business needs.

🌐 Internet-Facing: HIGH - TastyIgniter is typically deployed as an internet-facing e-commerce platform, making it directly accessible to attackers.
🏢 Internal Only: MEDIUM - Even internal-only deployments could be vulnerable to insider threats or compromised internal accounts.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: MEDIUM

Exploitation requires understanding of TastyIgniter's URL structure and access to user accounts, but no authentication bypass is needed for the vulnerable endpoint.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 3.7.7 or later

Vendor Advisory: https://github.com/tastyigniter/TastyIgniter/security/advisories

Restart Required: No

Instructions:

1. Backup your TastyIgniter installation and database. 2. Update to TastyIgniter 3.7.7 or later via the admin panel or manual update. 3. Verify the invoice() function in Orders.php now includes proper permission checks.

🔧 Temporary Workarounds

Add manual permission check

all

Manually add permission checks to the invoice() function in Orders.php

Edit app/admin/controllers/Orders.php and add permission checks before invoice generation logic

🧯 If You Can't Patch

  • Implement network-level access controls to restrict access to the invoice endpoint to authorized IP addresses only
  • Add web application firewall rules to block unauthorized invoice access attempts

🔍 How to Verify

Check if Vulnerable:

Check if running TastyIgniter 3.7.6 by viewing the version in admin panel or checking composer.json

Check Version:

Check admin panel dashboard or view composer.json file for version information

Verify Fix Applied:

After updating, attempt to access invoice functionality with non-admin user accounts to confirm access is denied

📡 Detection & Monitoring

Log Indicators:

  • Unauthorized access attempts to /admin/orders/invoice endpoint
  • Invoice generation requests from non-admin user accounts

Network Indicators:

  • HTTP requests to invoice endpoint without proper authentication headers

SIEM Query:

source="web_logs" AND (uri_path="/admin/orders/invoice" OR uri_path LIKE "%/invoice") AND user_role!="admin"

🔗 References

📤 Share & Export