Skip to content

Unauthenticated File Upload in Amasty Order Attributes for M...#2382

Open
carlospolop wants to merge 1 commit into
masterfrom
update_Unauthenticated_File_Upload_in_Amasty_Order_Attr_f3745318243d351f
Open

Unauthenticated File Upload in Amasty Order Attributes for M...#2382
carlospolop wants to merge 1 commit into
masterfrom
update_Unauthenticated_File_Upload_in_Amasty_Order_Attr_f3745318243d351f

Conversation

@carlospolop

Copy link
Copy Markdown
Collaborator

🤖 Automated Content Update

This PR was automatically generated by the HackTricks News Bot based on a technical blog post.

📝 Source Information

  • Blog URL: https://sansec.io/research/amasty-order-attributes-file-upload
  • Blog Title: Unauthenticated File Upload in Amasty Order Attributes for Magento
  • Suggested Section: Pentesting Web > File Upload; optionally add a Magento/Adobe Commerce note under Network Services Pentesting > 80,443 - Pentesting Web Methodology

🎯 Content Summary

Overview

Sansec describes CVE-2026-53787, a critical unauthenticated arbitrary file upload vulnerability in Amasty Order Attributes for Magento / Adobe Commerce. The issue affects all versions up to and including 3.16.0 and was fixed in Amasty Order Attributes 4.0.0, released on June 12, 2026. The vulnerability is classified as CWE-434: Unrestricted Up...

🔧 Technical Details

Unauthenticated REST file upload to RCE: when a web application or extension exposes an upload endpoint that accepts attacker-controlled file bytes and a filename without authentication, session validation, object ownership checks, or business-logic validation, an attacker can upload executable content into a web-accessible directory. The exploitation pattern is: identify the REST upload endpoint, submit encoded file content and a dangerous filename such as index.php, then request the uploaded file through the web server. Example structure from this case:

{
"fileContent": {
"base64_encoded_data": "PD9waHAgZWNobyAnR09PRCc7IGVjaG8gMyozOTU7ID8+",
"fileName_with_extension": "index.php"
}
}

The base64 payload decodes to:

<?php echo 'GOOD'; echo 3*395; ?>

If the upload location executes PHP, loading the file confirms code execution under the web server account. In ...

🤖 Agent Actions

Done.

Updated:

  • src/pentesting-web/file-upload/README.md

Added:

  • A new generic section on unauthenticated JSON/REST uploads to web-accessible media directories
  • Coverage for:
    • base64-in-JSON upload flows
    • route variants like /rest/V1/... and scoped aliases
    • upload-to-RCE when media paths execute PHP
    • stored XSS via uploaded .html / .svg
    • filename/path traversal via attacker-controlled names
    • missing business-logic validation (e.g. object/attribute binding before write)
  • The Sansec blog URL in the file’s ## References section

I kept the change in one file only, since file-upload/README.md was the best existing place and already covered adjacent upload-to-RCE and path traversal patterns.


This PR was automatically created by the HackTricks Feed Bot. Please review the changes carefully before merging.

@carlospolop

Copy link
Copy Markdown
Collaborator Author

🔗 Additional Context

Original Blog Post: https://sansec.io/research/amasty-order-attributes-file-upload

Content Categories: Based on the analysis, this content was categorized under "Pentesting Web > File Upload; optionally add a Magento/Adobe Commerce note under Network Services Pentesting > 80,443 - Pentesting Web Methodology".

Repository Maintenance:

  • MD Files Formatting: 977 files processed

Review Notes:

  • This content was automatically processed and may require human review for accuracy
  • Check that the placement within the repository structure is appropriate
  • Verify that all technical details are correct and up-to-date
  • All .md files have been checked for proper formatting (headers, includes, etc.)

Bot Version: HackTricks News Bot v1.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant