CVE-2020-13933
📋 TL;DR
CVE-2020-13933 is an authentication bypass vulnerability in Apache Shiro where specially crafted HTTP requests can circumvent authentication mechanisms. This affects applications using Apache Shiro for authentication and authorization before version 1.6.0. Attackers could potentially access protected resources without valid credentials.
💻 Affected Systems
- Apache Shiro
📦 What is this software?
Shiro by Apache
⚠️ Risk & Real-World Impact
Worst Case
Complete authentication bypass allowing unauthorized access to all protected resources, potentially leading to data theft, privilege escalation, or full system compromise.
Likely Case
Partial authentication bypass enabling access to specific protected endpoints or resources that should require authentication.
If Mitigated
Limited impact with proper network segmentation, additional authentication layers, and monitoring in place.
🎯 Exploit Status
Exploitation requires sending specially crafted HTTP requests but does not require authentication.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 1.6.0 and later
Vendor Advisory: https://lists.apache.org/thread.html/r4506cedc401d6b8de83787f8436aac83956e411d66848c84785db46d@%3Cdev.shiro.apache.org%3E
Restart Required: Yes
Instructions:
1. Identify all applications using Apache Shiro. 2. Update Shiro dependency to version 1.6.0 or later. 3. Rebuild and redeploy affected applications. 4. Restart application servers.
🔧 Temporary Workarounds
Request Filtering
allImplement web application firewall rules or request filters to block suspicious HTTP requests patterns.
Additional Authentication Layer
allImplement additional authentication checks at the application level or using reverse proxy authentication.
🧯 If You Can't Patch
- Implement strict network segmentation to isolate vulnerable applications
- Deploy web application firewall with rules specifically targeting Shiro authentication bypass patterns
🔍 How to Verify
Check if Vulnerable:
Check application dependencies for Apache Shiro version. If version is below 1.6.0, the application is vulnerable.
Check Version:
Check Maven pom.xml, Gradle build.gradle, or application classpath for shiro-core version.
Verify Fix Applied:
Verify that Apache Shiro version is 1.6.0 or higher in application dependencies and perform authentication testing.
📡 Detection & Monitoring
Log Indicators:
- Unusual authentication success patterns
- Access to protected resources without authentication logs
- HTTP requests with unusual headers or parameters
Network Indicators:
- HTTP requests attempting to manipulate authentication mechanisms
- Requests to protected endpoints without proper authentication headers
SIEM Query:
source="web_server" AND (url="*/protected/resource*" AND NOT auth_success="true")
🔗 References
- https://lists.apache.org/thread.html/r18b45d560d76c4260813c802771cc9678aa651fb8340e09366bfa198%40%3Cdev.geode.apache.org%3E
- https://lists.apache.org/thread.html/r4506cedc401d6b8de83787f8436aac83956e411d66848c84785db46d%40%3Cdev.shiro.apache.org%3E
- https://lists.apache.org/thread.html/r4c1e1249e9e1acb868db0c80728c13f448d07333da06a0f1603c0a33%40%3Cdev.shiro.apache.org%3E
- https://lists.apache.org/thread.html/r539f87706094e79c5da0826030384373f0041068936912876856835f%40%3Cdev.shiro.apache.org%3E
- https://lists.apache.org/thread.html/r575301804bfac87a064359cf4b4ae9d514f2d10db7d44120765f4129%40%3Cdev.shiro.apache.org%3E
- https://lists.apache.org/thread.html/r6ea0224c1971a91dc6ade1f22508119a9c3bd56cef656f0c44bbfabb%40%3Cdev.shiro.apache.org%3E
- https://lists.apache.org/thread.html/r70098e336d02047ce4d4e69293fe8d558cd68cde06f6430398959bc4%40%3Cdev.shiro.apache.org%3E
- https://lists.apache.org/thread.html/r70b907ccb306e9391145e2b10f56cc6914a245f91720a17a486c020a%40%3Cdev.shiro.apache.org%3E
- https://lists.apache.org/thread.html/r8097b81905f2a113ebdf925bcbc6d8c9d6863c807c9ee42e1e7c9293%40%3Cdev.shiro.apache.org%3E
- https://lists.apache.org/thread.html/r852971e28f54cafa7d325bd7033115c67d613b112a2a1076817390ac%40%3Cdev.shiro.apache.org%3E
- https://lists.apache.org/thread.html/r9d93dfb5df016b1a71a808486bc8f9fbafebbdbc8533625f91253f1d%40%3Cdev.shiro.apache.org%3E
- https://lists.apache.org/thread.html/r9ea6d8560d6354d41433ad006069904f0ed083527aa348b5999261a7%40%3Cdev.geode.apache.org%3E
- https://lists.apache.org/thread.html/rb47d88af224e396ee34ffb88ee99fb6d04510de5722cf14b7137e6bc%40%3Cdev.shiro.apache.org%3E
- https://lists.apache.org/thread.html/rb5edf49cd1451475dbcf53826ba6ef1bb7872dd6493d6112eb0c2bad%40%3Cdev.shiro.apache.org%3E
- https://lists.apache.org/thread.html/re25b8317b00a50272a7252c4552cf1a81a97984cc2111ef7728e48e0%40%3Cdev.shiro.apache.org%3E
- https://lists.debian.org/debian-lts-announce/2021/08/msg00002.html
- https://lists.apache.org/thread.html/r18b45d560d76c4260813c802771cc9678aa651fb8340e09366bfa198%40%3Cdev.geode.apache.org%3E
- https://lists.apache.org/thread.html/r4506cedc401d6b8de83787f8436aac83956e411d66848c84785db46d%40%3Cdev.shiro.apache.org%3E
- https://lists.apache.org/thread.html/r4c1e1249e9e1acb868db0c80728c13f448d07333da06a0f1603c0a33%40%3Cdev.shiro.apache.org%3E
- https://lists.apache.org/thread.html/r539f87706094e79c5da0826030384373f0041068936912876856835f%40%3Cdev.shiro.apache.org%3E
- https://lists.apache.org/thread.html/r575301804bfac87a064359cf4b4ae9d514f2d10db7d44120765f4129%40%3Cdev.shiro.apache.org%3E
- https://lists.apache.org/thread.html/r6ea0224c1971a91dc6ade1f22508119a9c3bd56cef656f0c44bbfabb%40%3Cdev.shiro.apache.org%3E
- https://lists.apache.org/thread.html/r70098e336d02047ce4d4e69293fe8d558cd68cde06f6430398959bc4%40%3Cdev.shiro.apache.org%3E
- https://lists.apache.org/thread.html/r70b907ccb306e9391145e2b10f56cc6914a245f91720a17a486c020a%40%3Cdev.shiro.apache.org%3E
- https://lists.apache.org/thread.html/r8097b81905f2a113ebdf925bcbc6d8c9d6863c807c9ee42e1e7c9293%40%3Cdev.shiro.apache.org%3E
- https://lists.apache.org/thread.html/r852971e28f54cafa7d325bd7033115c67d613b112a2a1076817390ac%40%3Cdev.shiro.apache.org%3E
- https://lists.apache.org/thread.html/r9d93dfb5df016b1a71a808486bc8f9fbafebbdbc8533625f91253f1d%40%3Cdev.shiro.apache.org%3E
- https://lists.apache.org/thread.html/r9ea6d8560d6354d41433ad006069904f0ed083527aa348b5999261a7%40%3Cdev.geode.apache.org%3E
- https://lists.apache.org/thread.html/rb47d88af224e396ee34ffb88ee99fb6d04510de5722cf14b7137e6bc%40%3Cdev.shiro.apache.org%3E
- https://lists.apache.org/thread.html/rb5edf49cd1451475dbcf53826ba6ef1bb7872dd6493d6112eb0c2bad%40%3Cdev.shiro.apache.org%3E
- https://lists.apache.org/thread.html/re25b8317b00a50272a7252c4552cf1a81a97984cc2111ef7728e48e0%40%3Cdev.shiro.apache.org%3E
- https://lists.debian.org/debian-lts-announce/2021/08/msg00002.html