<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[R Protocols Blog - Security Research]]></title><description><![CDATA[R Protocols is a Hacker-driven cybersecurity firm focused on developer-friendly penetration testing and security solutions.]]></description><link>https://blog.rprotocols.com</link><image><url>https://cdn.hashnode.com/res/hashnode/image/upload/v1770545195760/2c28e462-e5a5-443c-82ea-af5349a78f49.png</url><title>R Protocols Blog - Security Research</title><link>https://blog.rprotocols.com</link></image><generator>RSS for Node</generator><lastBuildDate>Sun, 24 May 2026 03:00:16 GMT</lastBuildDate><atom:link href="https://blog.rprotocols.com/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[From Customer Orders to Internal Logistics: How a Single API Exposed an Entire Commerce Operation]]></title><description><![CDATA[A multi-million dollar omni-channel commerce platform serving customers across e-commerce, retail stores, warehouse operations, and logistics infrastructure was found exposing highly sensitive custome]]></description><link>https://blog.rprotocols.com/omnichannel-ecommerce-breach</link><guid isPermaLink="true">https://blog.rprotocols.com/omnichannel-ecommerce-breach</guid><dc:creator><![CDATA[Renganathan]]></dc:creator><pubDate>Fri, 08 May 2026 19:56:45 GMT</pubDate><enclosure url="https://cdn.hashnode.com/uploads/covers/691cb9c4c2ff69977d5df38b/80cee482-cee7-40a0-a2fb-be03ce14527c.jpg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>A multi-million dollar omni-channel commerce platform serving customers across e-commerce, retail stores, warehouse operations, and logistics infrastructure was found exposing highly sensitive customer and operational data through an insecure order management API, while the main store is powered by Shopify.</p>
<p>The platform powers large-scale retail operations across online and offline channels, handling massive daily order volumes, invoice generation, delivery orchestration, and store-level fulfillment workflows.</p>
<p>A critical vulnerability within the platform’s AWS-backed order management infrastructure exposed customer PII, invoices, delivery metadata, warehouse operations, employee identifiers, and logistics. The issue potentially affected several hundred thousand customer and operational records.</p>
<p>This issue was <strong>responsibly disclosed to the platform’s security team,</strong> validated internally, and subsequently remediated within a short timeframe, accompanied by a bounty.</p>
<hr />
<h4><strong>Step-by-Step Breakdown of the Issue</strong> info.</h4>
<h4><strong>Initial Observation</strong></h4>
<p>While placing an order through the platform’s e-commerce flow, an AWS API Gateway endpoint responsible for retrieving orders was identified.</p>
<p>The endpoint appeared to be deeply integrated across multiple internal and external systems, including:</p>
<ul>
<li><p>Customer order flows</p>
</li>
<li><p>Retail POS infrastructure</p>
</li>
<li><p>Warehouse processing systems</p>
</li>
<li><p>Invoice generation workflows</p>
</li>
<li><p>Delivery and logistics orchestration</p>
</li>
</ul>
<p>Further testing revealed that the API accepted direct order identifiers and returned complete order objects without validating customer ownership or enforcing authentication.</p>
<h4><strong>Discovery of the Exposure</strong></h4>
<p>The vulnerable endpoint exposed order details through predictable order identifiers.</p>
<p>The application relied on a reusable API key embedded within frontend and retail operational flows rather than implementing proper authorization enforcement.</p>
<p>By modifying order reference values, it became possible to retrieve arbitrary customer and operational records belonging to other users.</p>
<p>No authentication, ownership validation, or abuse protection mechanisms were enforced.</p>
<p>The flow effectively looked like:</p>
<img src="https://cdn.hashnode.com/uploads/covers/691cb9c4c2ff69977d5df38b/72b6fca4-46b2-457c-98ac-4e056104cb1a.png" alt="" style="display:block;margin:0 auto" />

<p>The API returned complete order objects containing customer, invoice, logistics, and operational metadata.</p>
<p>This allowed unrestricted enumeration of order records at scale.</p>
<h4><strong>Data Exposed</strong></h4>
<p>The affected API responses exposed highly sensitive customer and operational information, including their Name, Email Address, Phone Number, House Address, signed AWS Invoice URLs, Shipping, and Logistics Info, Store names, Employee names, etc.</p>
<hr />
<h4><strong>Technical Root Cause</strong></h4>
<p>The issue originated from broken object-level authorization (BOLA) combined with several insecure architectural decisions:</p>
<ul>
<li><p>Publicly accessible order lookup APIs</p>
</li>
<li><p>Predictable order identifiers</p>
</li>
<li><p>Static reusable API keys</p>
</li>
<li><p>Shared public and internal API infrastructure</p>
</li>
<li><p>Missing authorization enforcement</p>
</li>
</ul>
<p>The platform relied heavily on API key presence rather than validating whether a user was authorized to access a specific order resource.</p>
<p>As a result, any external actor capable of accessing the endpoint could enumerate customer and operational records at scale.</p>
<hr />
<h4><strong>Impact</strong></h4>
<p>The exposure extended far beyond traditional customer PII leakage, this could have led to issues like</p>
<ul>
<li><p>Large-scale customer data harvesting</p>
</li>
<li><p>Operational reconnaissance</p>
</li>
<li><p>Fraud targeting</p>
</li>
<li><p>Social engineering campaigns</p>
</li>
<li><p>Competitive intelligence gathering</p>
</li>
<li><p>Supply chain visibility abuse</p>
</li>
</ul>
<p>The issue effectively exposed an end-to-end operational map of the platform’s commerce infrastructure through a single insecure API flow.</p>
<hr />
<h4><strong>Timeline</strong></h4>
<p><strong>Vulnerability Discovered:</strong> Redacted<br /><strong>Validation Completed:</strong> Within 24–48 hours<br /><strong>Remediation Implemented:</strong> Shortly after acknowledgment<br /><strong>Public Disclosure:</strong> Several months post-fix</p>
]]></content:encoded></item><item><title><![CDATA[From Burger Order to Data Breach: An API Security Case Study]]></title><description><![CDATA[The Target Company is a large food & beverage commerce enablement platform. The platform is a powerhouse for 10,000+ restaurants, including leading Burgers, Tacos, Pizza fast food chains. A critical misconfiguration was identified within the order ma...]]></description><link>https://blog.rprotocols.com/from-burger-order-to-data-breach-an-api-security-case-study</link><guid isPermaLink="true">https://blog.rprotocols.com/from-burger-order-to-data-breach-an-api-security-case-study</guid><category><![CDATA[bugbounty]]></category><category><![CDATA[cybersecurity]]></category><category><![CDATA[penetration testing]]></category><category><![CDATA[APIs]]></category><dc:creator><![CDATA[Renganathan]]></dc:creator><pubDate>Sun, 07 Dec 2025 22:01:29 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/stock/unsplash/6T8e94x4ACs/upload/8fe3b7968c141d56453d77eb4d33be30.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>The Target Company is a large <strong>food &amp; beverage commerce enablement platform</strong>. The platform is a powerhouse for 10,000+ restaurants, including leading Burgers, Tacos, Pizza fast food chains. A critical misconfiguration was identified within the <strong>order management API architecture</strong>. This flaw exposed <strong>sensitive customer, delivery partner, and restaurant data</strong> without requiring authentication.</p>
<p>The vulnerability allowed unauthorized access to <strong>hundreds of thousands of order records</strong>, including <strong>personal identifiable information (PII)</strong> such as names, phone numbers, residential addresses, email IDs, billing details, delivery partner information, and IP addresses.</p>
<p>This issue was <strong>responsibly disclosed to the platform’s technology executive leadership</strong>, validated internally, and subsequently remediated in a short timeframe.</p>
<hr />
<h2 id="heading-step-by-step-breakdown-of-the-issue">Step-by-Step Breakdown of the Issue</h2>
<h3 id="heading-users-involved">Users Involved</h3>
<ul>
<li><p><strong>User A:</strong> A legitimate customer placing an online food order</p>
</li>
<li><p><strong>User B:</strong> Any unauthenticated external user on the internet</p>
</li>
</ul>
<hr />
<h3 id="heading-initial-observation">Initial Observation</h3>
<p>While placing an order through a restaurant’s official website, the application was observed loading a large client-side JavaScript file (<code>main.js</code>) responsible for checkout and order processing logic.</p>
<p>This JavaScript file contained <strong>multiple backend API endpoints</strong>, some of which appeared to handle order lookups and transaction details.</p>
<p>Given the file size (several thousand lines), used <a target="_blank" href="http://x.com/gerben_javado">gerben_javado</a>’s <a target="_blank" href="https://github.com/GerbenJavado/LinkFinder">L</a><a target="_blank" href="https://github.com/GerbenJavado/LinkFinder">ink Finder</a> tool to extract API paths and parameters efficiently.</p>
<hr />
<h3 id="heading-discovery-of-unauthenticated-endpoints">Discovery of Unauthenticated Endpoints</h3>
<p>An unauthenticated API endpoint was identified that returned <strong>order details when supplied with a valid order hash</strong>.</p>
<p>Although the hash initially appeared non-predictable, something <a target="_blank" href="https://api.dotpe.in/api/morder/order/hash/detail/Q2BNNhxtKK"><code>Q2BNr6hxtKK</code></a> <a target="_blank" href="https://api.dotpe.in/api/morder/order/hash/detail/Q2BNNhxtKK">, further</a> testing revealed the presence of a <strong>secondary API endpoint</strong> that:</p>
<ul>
<li><p>Accepted <strong>simple numeric order identifiers</strong></p>
</li>
<li><p>Returned the corresponding <strong>order hash</strong></p>
</li>
<li><p>Allowed reuse of that hash in the unauthenticated order detail API</p>
</li>
</ul>
<p>This created a <strong>complete enumeration chain</strong>:</p>
<ol>
<li><p>Guess numeric order ID</p>
</li>
<li><p>Fetch associated order hash</p>
</li>
<li><p>Use the order hash to retrieve <strong>full PII and transaction details</strong></p>
</li>
<li><p>Repeat the process at scale</p>
</li>
</ol>
<p>No authentication, session validation, or rate limiting was enforced at any stage of this flow.</p>
<p>So that flow looked like</p>
<ul>
<li><p><code>api[.]example[.]com/api/order/4985909</code> → Returns order metadata, including the hash value</p>
</li>
<li><p><code>api[.]example[.]com/api/redacted/order/hash/redacted/A2BNr6hxtKK</code> → Returns full order details and associated PII</p>
<p>  <img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1765144455123/16c7f4fa-565f-4367-b39d-cd41cd9910fd.png" alt="written explanation " class="image--center mx-auto" /></p>
</li>
</ul>
<hr />
<h3 id="heading-data-exposed">Data Exposed</h3>
<p>The affected API responses contained the following sensitive information:</p>
<ul>
<li><p>Customer's full name</p>
</li>
<li><p>Mobile phone number</p>
</li>
<li><p>Email address</p>
</li>
<li><p>Residential delivery address</p>
</li>
<li><p>Full billing and order data</p>
</li>
<li><p>Delivery partner name &amp; phone number</p>
</li>
<li><p>Restaurant identifiers</p>
</li>
<li><p>Order timestamps</p>
</li>
<li><p>IP address</p>
</li>
</ul>
<p>Both <strong>customer and restaurant operational data</strong> were exposed through this vulnerability of several hundred thousand customers and thousands of restaurants.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1765143201630/f7e570d4-db00-4909-9fdd-1cbb4ae2c34b.png" alt="lovely json" class="image--center mx-auto" /></p>
<hr />
<h2 id="heading-technical-root-cause">Technical Root Cause</h2>
<p>The root cause originated from <strong>broken object-level authorization (BOLA)</strong> combined with:</p>
<ul>
<li><p><strong>Unauthenticated access to order lookup APIs</strong></p>
</li>
<li><p><strong>Predictable numeric order identifiers</strong></p>
</li>
<li><p><strong>Public order-hash retrieval endpoints</strong></p>
</li>
<li><p><strong>Lack of rate limiting and abuse detection</strong></p>
</li>
</ul>
<p>The system relied on the secrecy of order hashes instead of enforcing <strong>mandatory authentication and authorization controls</strong>, allowing any external actor to retrieve sensitive order records at scale.</p>
<hr />
<h2 id="heading-timeline">Timeline</h2>
<ul>
<li><p><strong>Vulnerability Discovered:</strong> [Redacted]</p>
</li>
<li><p><strong>Reported to Organization:</strong> [Redacted]</p>
</li>
<li><p><strong>Acknowledged &amp; Validation Completed:</strong> Within 24–48 hours</p>
</li>
<li><p><strong>Patch &amp; Remediation Implemented:</strong> Shortly after acknowledgment</p>
</li>
<li><p><strong>Public Disclosure:</strong> Several months post-fix</p>
</li>
</ul>
]]></content:encoded></item><item><title><![CDATA[Exposing iCloud Users’ Names, Phone Numbers, and Email Addresses]]></title><description><![CDATA[During security research on iCloud’s web functionalities, a misconfiguration was identified within the Notes sharing feature that exposed sensitive user metadata. Although the contents of private notes were not accessible, the system unintentionally ...]]></description><link>https://blog.rprotocols.com/exposing-icloud-users-names-phone-numbers-and-email-addresses</link><guid isPermaLink="true">https://blog.rprotocols.com/exposing-icloud-users-names-phone-numbers-and-email-addresses</guid><category><![CDATA[bugbounty]]></category><category><![CDATA[cybersecurity]]></category><category><![CDATA[vulnerability]]></category><dc:creator><![CDATA[Renganathan]]></dc:creator><pubDate>Sat, 22 Nov 2025 05:22:39 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/stock/unsplash/wAygsCk20h8/upload/f48a3277fce93109ba5a5e8be6a803a3.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>During security research on iCloud’s web functionalities, a misconfiguration was identified within the Notes sharing feature that exposed sensitive user metadata. Although the contents of private notes were not accessible, the system unintentionally revealed the <strong>full name, phone number, and email address</strong> of the owner of certain shared Notes.</p>
<p>This issue was responsibly disclosed to Apple, validated by the Apple Product Security Team, and subsequently remediated.</p>
<hr />
<h3 id="heading-step-by-step-breakdown-of-the-issue"><strong>Step-by-Step Breakdown of the Issue</strong></h3>
<p>Users Involved:</p>
<ul>
<li><p>User A: Owner of an iCloud Note</p>
</li>
<li><p>User B: External user accessing publicly shared Notes</p>
</li>
</ul>
<ol>
<li><p>A user generated a shareable iCloud Notes link in the format:<br /> <a target="_blank" href="https://www.icloud.com/notes/0MJM1URPtcLj6k0s1bDIIB3Bg"><code>https://www.icloud.com/notes/0MJM1URPtcLj6k0s1bDIIB3Bg</code></a></p>
</li>
<li><p>Some of these shared Notes were publicly indexed by search engines due to user sharing configurations.</p>
</li>
<li><p>Publicly shared Notes links were discovered via google dorking such as:<br /> <code>site:</code><a target="_blank" href="http://icloud.com/notes/*"><code>icloud.com/notes/*</code></a></p>
</li>
</ol>
<p><img src="https://miro.medium.com/v2/resize:fit:770/1*toz4jKy5PwL8RWOVhsDobg.jpeg" alt="indexed icloud links" /></p>
<ol>
<li><p>When accessing certain shared Notes, the system returned a verification prompt rather than a direct 404 or access denial.</p>
</li>
<li><p>Upon clicking the <strong>Verify</strong> button, the page displayed the <strong>email address</strong> associated with the Note’s owner along with the file name.</p>
<p> <img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1763751759360/243d878b-1010-410b-b267-372352fcf9fb.png" alt="exposed icloud notes filename" class="image--center mx-auto" /></p>
<p> <img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1763751604240/d8b7618b-bd6c-44fa-8f3d-90f17668011d.png" alt="exposed icloud user email id" class="image--center mx-auto" /></p>
</li>
</ol>
<p>In some instances, the interface also returned the owner's <strong>phone number</strong>, depending on the sharing configuration.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1763751418774/68c872e0-83c4-448b-a188-29f4009ea138.png" alt="exposed icloud user phone number" class="image--center mx-auto" /></p>
<ol start="4">
<li><p>Opening the same shared link in a private browsing session exposed the <strong>full name</strong> of the owner.</p>
<p> <img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1763751909062/28f9413e-3cc8-430e-b898-1ed77716caad.png" alt="icloud user's name exposed" class="image--center mx-auto" /></p>
</li>
<li><p>Attempts to exploit the verification flow further (e.g., modifying API requests to extract additional data) were mitigated by Apple’s backend and did not result in unauthorized access to note content.</p>
</li>
</ol>
<p><strong>The vulnerability was limited to the exposure of user metadata, not the notes themselves.</strong></p>
<h3 id="heading-technical-root-cause"><strong>Technical Root Cause</strong></h3>
<p>The misconfiguration originated from how the iCloud Notes sharing mechanism handled identity verification for shared links. When verification was triggered for a public Note URL, the platform disclosed:</p>
<ul>
<li><p>The email address associated with the Apple ID</p>
</li>
<li><p>The phone number associated with the Apple ID (in some cases)</p>
</li>
<li><p>The Apple ID display name</p>
</li>
</ul>
<p>These details were revealed without requiring authentication and were accessible to any external user visiting the shared link.</p>
<p>Additionally, the public indexability of certain Notes URLs allowed search engines like Google to crawl and surface shareable iCloud Notes links, increasing the exposure surface.</p>
<h3 id="heading-impact"><strong>Impact</strong></h3>
<p>The vulnerability allowed unauthorized users to:</p>
<ul>
<li><p>Identify the Apple ID email address associated with a shared iCloud Note</p>
</li>
<li><p>Access the Apple ID owner’s phone number in specific cases</p>
</li>
<li><p>Retrieve the full display name of the Apple ID owner</p>
</li>
</ul>
<p>Although the Note contents were not exposed, this metadata could be used for:</p>
<ul>
<li><p>Targeted phishing</p>
</li>
<li><p>Social engineering</p>
</li>
<li><p>Identity profiling</p>
</li>
</ul>
<hr />
<h3 id="heading-fix-amp-apples-response"><strong>Fix &amp; Apple’s Response</strong></h3>
<p>Apple acknowledged the report and addressed the root cause by preventing public crawling of iCloud Notes share URLs and tightening the verification flow to ensure user metadata is no longer exposed.</p>
<p>The issue was fixed completely after acknowledgment.</p>
<p>Apple’s security team handled the disclosure professionally, validated the vulnerability, and credited my name, “Renganathan” in the <strong>Apple Security Hall of Fame</strong>.</p>
<h3 id="heading-timeline"><strong>Timeline</strong></h3>
<ul>
<li><p><strong>Reported:</strong> June 2, 2021</p>
</li>
<li><p><strong>Accepted &amp; Fix Implemented:</strong> June 16, 2021</p>
</li>
<li><p><strong>Fully Resolved:</strong> June 2021</p>
</li>
<li><p><strong>Hall of Fame Recognition:</strong> February 2022</p>
</li>
</ul>
]]></content:encoded></item></channel></rss>