<?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[BitsInsight]]></title><description><![CDATA[BitsInsight]]></description><link>https://blog.pkdiv.com</link><generator>RSS for Node</generator><lastBuildDate>Tue, 14 Apr 2026 02:18:47 GMT</lastBuildDate><atom:link href="https://blog.pkdiv.com/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[Domain fronting: a missed validation that enabled stealth]]></title><description><![CDATA[Domain Fronting is a technique used to bypass filtering and surveillance by concealing the true destination of a request. It has been used to evade censorship, bypass security controls, and connect to C2 (Command and Control) Servers .
HTTP History
T...]]></description><link>https://blog.pkdiv.com/domain-fronting-a-missed-validation-that-enabled-stealth</link><guid isPermaLink="true">https://blog.pkdiv.com/domain-fronting-a-missed-validation-that-enabled-stealth</guid><category><![CDATA[privacy]]></category><category><![CDATA[networking]]></category><category><![CDATA[http]]></category><category><![CDATA[https]]></category><category><![CDATA[TLS]]></category><category><![CDATA[CDN]]></category><dc:creator><![CDATA[Divyesh P K]]></dc:creator><pubDate>Wed, 19 Nov 2025 10:47:10 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/stock/unsplash/6NflM91LGJo/upload/5f81bfeec990f30c347bcb622ec5c1f9.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><strong>Domain Fronting</strong> is a technique used to bypass filtering and surveillance by concealing the true destination of a request. It has been used to evade censorship, bypass security controls, and connect to C2 (Command and Control) Servers .</p>
<h2 id="heading-http-history"><strong>HTTP History</strong></h2>
<p>The HTTP 1.0 protocol developed in the early 1990s, used one host per IP. With the explosion of the internet and the issue with the exhaustion of the IPv4 addresses, HTTP 1.1 was developed . HTTP 1.1 made it possible for IPs to be shared among website with the introduction of the <em>host</em> header. When a client make a request to a server for a website, it would form a TCP connection with the server using the IP and the application layer read the host header of the HTTP request to respond with the appropriate website.</p>
<p>To make these requests secure, TLS (formerly SSL) is used to encrypt the traffic. TLS also faced issues with hosting multiple HTTPS websites, hence SNI (Server Name Indication) was introduced as an extension to TLS. SNI indicates the domain whose certificate the client wants to form the TLS connection with.</p>
<p>The rollout of these features, combined with the lack of proper validation between protocols operating at different layers of the network stack, made this technique possible.</p>
<h2 id="heading-domain-fronting"><strong>Domain Fronting</strong></h2>
<p>Domain Fronting is a technique that leverages CDNs to mask traffic. The client sends a <em>ClientHello</em> to start negotiating the TLS tunnel. In the <em>ClientHello</em> message, the client specifies the front domain (<a target="_blank" href="http://front.example.com">front.example.com</a>) in the SNI field. So the TLS tunnel is formed with the parameters of the front domain.</p>
<p>To an external entity, it maybe companies , governments or any one else viewing the connection, the client would seem communicating with the front domain. The external entities can view the SNI and it is the only way for determine the destination .</p>
<p>Once the TLS tunnel is established, all HTTP requests are now encrypted , which includes the host header with the actual destination domain. The CDNs route the requests to the destination domain using their internal routing. While routing the requests, the CDN does not validate a match between the domain in the SNI and the host fields. This allows Domain Fronting.</p>
<p><img src="https://miro.medium.com/v2/resize:fit:733/1*C8VjYKH6ZEYy19ffqSNm6Q.png" alt class="image--center mx-auto" /></p>
<h2 id="heading-is-it-still-allowed-2025"><strong>Is it still allowed (2025)</strong></h2>
<p>Domain Fronting in now blocked by major platforms. While it helps bypassing firewalls, masking destinations and helped overcome censorship, malicious actors also abused the quirks . It was used to connect to command-and-control servers, for distributing malware or also espionage .</p>
<p>In 2018 Russia blocked IPs of all major CDNs to stop Domain Fronting which caused issues for other companies and services using the CDN. Later Google and AWS disabled Domain Fronting, so as not get completely banned. While no direct regulation exists today banning the technique, most providers voluntarily don’t allow it.</p>
]]></content:encoded></item><item><title><![CDATA[Passkeys - Password less authentication]]></title><description><![CDATA[Passwords-based authentication has been the most common method of authentication for most services on the internet. While implementing password-based authentication is uncomplicated process , it presents various challenges. With the users signing up ...]]></description><link>https://blog.pkdiv.com/passkeys-password-less-authentication</link><guid isPermaLink="true">https://blog.pkdiv.com/passkeys-password-less-authentication</guid><category><![CDATA[passwords]]></category><category><![CDATA[passkeys]]></category><dc:creator><![CDATA[Divyesh P K]]></dc:creator><pubDate>Sat, 07 Jun 2025 18:30:00 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/stock/unsplash/-eiswENkF9c/upload/275443c791fe322882e572a519c4bc24.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Passwords-based authentication has been the most common method of authentication for most services on the internet. While implementing password-based authentication is uncomplicated process , it presents various challenges. With the users signing up for a significant number of online services, users tend to reuse and choose weaker passwords. As for service provider, a significant amount effort is required to secure the passwords stored in the database.</p>
<p>Passkeys use asymmetric cryptographic keys for authentication — a public and a private key. When a user register for a service, a the user device creates a pair of public-private key. The private key is stored on the user device, while the public key is sent to and stored on the server.</p>
<p>Each time the user tries to login to a service, the user device digitally signs a challenge from the server. The server then verifies the signature and authenticates the user to the service. Passkeys eliminates user burden of remembering passwords for multiple services.</p>
<p>Passkeys offers numerous security advantages.</p>
<ul>
<li><p>Phishing is thwarted since the public-private key pair is associated with a particular service’s real domain. A change in domain, however subtle or unnoticeable will remain ineffective since the platform used to store the keys, only associated them with the real domain.</p>
</li>
<li><p>A breach of public keys stored on the servers is worthless since they can neither be used to authenticate nor derive the private key within a feasible period with the existing computational capabilities and mathematical understanding.</p>
</li>
<li><p>Eliminates developer effort required to develop and maintain complex security measures to safe public keys.</p>
</li>
<li><p>The authentication process does not involve the transmission of the private key to the server, the key is only used to sign a challenge response</p>
</li>
<li><p>Passkeys can be stored on a native or 3rd party services and synced across all devices used by the user.</p>
</li>
</ul>
<p>Given the security enhancements and the ease of use passkeys (password-less) authentication will become the primary method for users to authenticate users to a service. Major companies have started the implementation of passkeys and smaller organizations soon following them</p>
]]></content:encoded></item></channel></rss>