<feed xmlns="http://www.w3.org/2005/Atom"> <id>https://kelvin-0110.github.io/</id><title>Kelvin Security Labs</title><subtitle>Hands-on cybersecurity labs, TryHackMe writeups, and penetration testing notes covering web exploitation, privilege escalation, and real-world attack techniques. # UPDATED</subtitle> <updated>2026-06-09T20:32:09+05:30</updated> <author> <name>Kelvin</name> <uri>https://kelvin-0110.github.io/</uri> </author><link rel="self" type="application/atom+xml" href="https://kelvin-0110.github.io/feed.xml"/><link rel="alternate" type="text/html" hreflang="en" href="https://kelvin-0110.github.io/"/> <generator uri="https://jekyllrb.com/" version="4.4.1">Jekyll</generator> <rights> © 2026 Kelvin </rights> <icon>/assets/img/favicons/favicon.ico</icon> <logo>/assets/img/favicons/favicon-96x96.png</logo> <entry><title>Unrestricted File Upload Leads to Remote Code Execution | Calliope Gallery</title><link href="https://kelvin-0110.github.io/posts/calliope-gallery-unrestricted-file-upload/" rel="alternate" type="text/html" title="Unrestricted File Upload Leads to Remote Code Execution | Calliope Gallery" /><published>2026-06-09T19:00:00+05:30</published> <updated>2026-06-09T20:28:55+05:30</updated> <id>https://kelvin-0110.github.io/posts/calliope-gallery-unrestricted-file-upload/</id> <content type="text/html" src="https://kelvin-0110.github.io/posts/calliope-gallery-unrestricted-file-upload/" /> <author> <name>Shivansh Sharma</name> </author> <category term="A02 - Security Misconfiguration" /> <category term="Unrestricted File Upload" /> <summary>Lab Link Lab: Calliope Gallery Overview Calliope Gallery allows artists to upload portfolio images through their account dashboard. A forgotten configuration change introduced for an image thumbnailing integration caused uploaded files to be processed by PHP within the upload directory. By uploading a specially crafted JPEG containing PHP code, it was possible to achieve Remote Code Executi...</summary> </entry> <entry><title>XXE Injection via Envelope Import Leads to Arbitrary File Read | Foldmark</title><link href="https://kelvin-0110.github.io/posts/foldmark-xxe-injection/" rel="alternate" type="text/html" title="XXE Injection via Envelope Import Leads to Arbitrary File Read | Foldmark" /><published>2026-06-09T18:00:00+05:30</published> <updated>2026-06-09T20:28:55+05:30</updated> <id>https://kelvin-0110.github.io/posts/foldmark-xxe-injection/</id> <content type="text/html" src="https://kelvin-0110.github.io/posts/foldmark-xxe-injection/" /> <author> <name>Shivansh Sharma</name> </author> <category term="A05 - Injection" /> <category term="XML External Entity" /> <summary>Lab Link Lab: Foldmark Overview Foldmark is a document envelope platform that allows organizations to import XML envelopes from competing e-signature providers. The importer parses user-supplied XML files and renders a preview containing the signer, document title, timestamp, and organization. Because external entity processing was enabled, the XML parser was vulnerable to XML External Enti...</summary> </entry> <entry><title>Local File Inclusion via Template Router | CostThis</title><link href="https://kelvin-0110.github.io/posts/costthis-local-file-inclusion/" rel="alternate" type="text/html" title="Local File Inclusion via Template Router | CostThis" /><published>2026-06-09T10:30:00+05:30</published> <updated>2026-06-09T20:28:55+05:30</updated> <id>https://kelvin-0110.github.io/posts/costthis-local-file-inclusion/</id> <content type="text/html" src="https://kelvin-0110.github.io/posts/costthis-local-file-inclusion/" /> <author> <name>Shivansh Sharma</name> </author> <category term="A01 - Broken Access Control" /> <category term="Local File Inclusion" /> <summary>Lab Link Lab: CostThis Overview CostThis uses a simple page router that dynamically loads content from files stored on disk. The page being rendered is controlled through a URL parameter, making the application susceptible to Local File Inclusion (LFI). By abusing directory traversal sequences, it was possible to force the application to include arbitrary files from the server filesystem an...</summary> </entry> <entry><title>IDOR in Password Reset API Leads to Administrator Account Takeover | TheForms</title><link href="https://kelvin-0110.github.io/posts/theforms-idor-account-takeover/" rel="alternate" type="text/html" title="IDOR in Password Reset API Leads to Administrator Account Takeover | TheForms" /><published>2026-06-08T23:00:00+05:30</published> <updated>2026-06-09T20:28:55+05:30</updated> <id>https://kelvin-0110.github.io/posts/theforms-idor-account-takeover/</id> <content type="text/html" src="https://kelvin-0110.github.io/posts/theforms-idor-account-takeover/" /> <author> <name>Shivansh Sharma</name> </author> <category term="A01 - Broken Access Control" /> <category term="IDOR" /> <summary>Lab Link Lab: TheForms Overview TheForms is a community platform featuring chat functionality, user profiles, and administrative controls. During testing, the password reset functionality was found to rely solely on a user UUID embedded within the request path. Because the endpoint failed to verify ownership of the target account, any authenticated user could reset the password of another u...</summary> </entry> <entry><title>JWT Algorithm Confusion Leads to Privilege Escalation | Halftone Studio</title><link href="https://kelvin-0110.github.io/posts/halftone-studio-jwt-algorithm-confusion/" rel="alternate" type="text/html" title="JWT Algorithm Confusion Leads to Privilege Escalation | Halftone Studio" /><published>2026-06-08T20:00:00+05:30</published> <updated>2026-06-09T20:28:55+05:30</updated> <id>https://kelvin-0110.github.io/posts/halftone-studio-jwt-algorithm-confusion/</id> <content type="text/html" src="https://kelvin-0110.github.io/posts/halftone-studio-jwt-algorithm-confusion/" /> <author> <name>Shivansh Sharma</name> </author> <category term="A07 - Authentication Failures" /> <category term="JWT" /> <summary>Lab Link Lab: Halftone Studio Overview Halftone Studio recently migrated from API keys to JWT-based authentication. During the migration, support was temporarily expanded to accommodate multiple token formats. The application exposes its public verification key and JWT metadata, creating the conditions for a JWT Algorithm Confusion vulnerability. By abusing the verifier’s trust in the token...</summary> </entry> </feed>
