<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Security on Shivasurya</title><link>http://shivasurya.me/categories/security/</link><description>Recent content in Security on Shivasurya</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Wed, 01 Apr 2026 00:00:00 +0000</lastBuildDate><atom:link href="http://shivasurya.me/categories/security/feed.xml" rel="self" type="application/rss+xml"/><item><title>CVE-2026-33186: Bypassing gRPC-Go Authorization with a Missing Slash</title><link>http://shivasurya.me/2026/04/01/cve-2026-33186-grpc-go-authorization-bypass/</link><pubDate>Wed, 01 Apr 2026 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2026/04/01/cve-2026-33186-grpc-go-authorization-bypass/</guid><description/></item><item><title>Some thoughts around Django SQL Injection CVE-2025-64459</title><link>http://shivasurya.me/2025/11/07/django-sql-injection-CVE-2025-64459/</link><pubDate>Fri, 07 Nov 2025 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2025/11/07/django-sql-injection-CVE-2025-64459/</guid><description>&lt;h2 id="vulnerability-overview">Vulnerability Overview&lt;/h2>
&lt;p>Yesterday I came across this CVE-2025-64459 and I was bit skeptical about the severity of the issue as it was marked as critical. So I decided to do a deep dive into the issue and see if it was a real issue or not. Turns out it was a real issue only if you&amp;rsquo;re meeting the following conditions:&lt;/p>
&lt;ol>
&lt;li>
&lt;p>You&amp;rsquo;re using Django Affected versions&lt;/p>
&lt;ul>
&lt;li>&lt;code>&amp;gt;= 5.2a1, &amp;lt; 5.2.8&lt;/code>&lt;/li>
&lt;li>&lt;code>&amp;gt;= 5.0a1, &amp;lt; 5.1.14&lt;/code>&lt;/li>
&lt;li>&lt;code>&amp;lt; 4.2.26&lt;/code>&lt;/li>
&lt;/ul>
&lt;/li>
&lt;li>
&lt;p>Source: request.GET or request.POST dict&lt;/p></description></item><item><title>Claude Code for Security Analysis: Introducing SecureFlow CLI to Hunt Security Vulnerabilities</title><link>http://shivasurya.me/2025/10/03/introducing-secureflow-cli-to-hunt-vulnerabilities-claude-code-for-security-analysis/</link><pubDate>Fri, 03 Oct 2025 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2025/10/03/introducing-secureflow-cli-to-hunt-vulnerabilities-claude-code-for-security-analysis/</guid><description>&lt;h2 id="ai-powered-security-vulnerability-hunting-at-scale">AI-Powered Security Vulnerability Hunting at Scale&lt;/h2>
&lt;p>SecureFlow CLI is an open-source agentic SAST security tool that uses AI-powered loops to autonomously hunt for vulnerabilities in codebases. Built on the same principles as Cline/Cursor/Windsurf/Claude-Code for Security Analysis, it leverages LLMs and tools to navigate code, gather context, and identify security issues.&lt;/p>
&lt;h3 id="example-wordpress-plugin-scanning-results">Example: WordPress Plugin Scanning Results&lt;/h3>
&lt;p>The WordPress plugin ecosystem is often overlooked for security scanning despite serving millions of users. Scanning 600+ WordPress plugins with SecureFlow yielded impressive results:&lt;/p></description></item><item><title>CodeQL: Eindhoven Quantifier Notation</title><link>http://shivasurya.me/2024/09/10/codeql-eindhoven-quantifier-notation/</link><pubDate>Tue, 10 Sep 2024 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2024/09/10/codeql-eindhoven-quantifier-notation/</guid><description>&lt;h3 id="introduction">Introduction&lt;/h3>
&lt;p>Recently, I have been thinking about aggregate functionality design for &lt;a href="https://codepathfinder.dev/">Code PathFinder&lt;/a>, &lt;a href="https://github.com/shivasurya/code-pathfinder">opensource alternative to GitHub CodeQL&lt;/a>. SQL aggregate functions such as &lt;code>SUM&lt;/code>, &lt;code>AVG&lt;/code>, &lt;code>MIN&lt;/code>, &lt;code>MAX&lt;/code> are combined with &lt;code>WHERE&lt;/code> and &lt;code>GROUP BY&lt;/code> to generate aggregate queries. However, I was wondering if there is a way to generate aggregate queries without using &lt;code>WHERE&lt;/code> and &lt;code>GROUP BY&lt;/code>. While going through &lt;a href="https://codeql.github.com/publications/ql-for-source-code-analysis.pdf">CodeQL design research paper&lt;/a>, I came across Eindhoven Quantifier Notation which is quite interesting, easy to understand and can be used to generate aggregate queries. This blog post will discuss about Eindhoven Quantifier Notation adopted by CodeQL.&lt;/p></description></item><item><title>Deep dive on Android Java / Kotlin Deserialization Code Execution with Semgrep Detection</title><link>http://shivasurya.me/2024/01/24/java-deserialization-rce-android-application-layer/</link><pubDate>Wed, 24 Jan 2024 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2024/01/24/java-deserialization-rce-android-application-layer/</guid><description>&lt;h3 id="overview">Overview&lt;/h3>
&lt;p>In this post, we will explore code execution using Java &amp;amp; Kotlin Deserialization in Android Application. Additionally, We will discuss the Gadget Chain, Detection and Exploitation technique specific to Android. Achieving code execution in server side application via Java deserialization has higher chance of success than in client side android application. This is due to limitation of variety of loaded classes in android application. For instance &lt;code>com.sun.org.apache.xalan.internal.xsltc.trax.TemplatesImpl&lt;/code> is available in openJDK but not in Android JDK (but with modification). These limitation can be a blocker for loading arbitrary classes and executing payload (mostly compiled bytecode) in Android application. Well there are lot of deserialization vulnerabilities is published out there such as&lt;/p></description></item><item><title>Heap Two Writeup - Exploit Education Lab Exercise</title><link>http://shivasurya.me/2023/05/06/exploit-education-heap-two-exercise-writeup/</link><pubDate>Sat, 06 May 2023 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2023/05/06/exploit-education-heap-two-exercise-writeup/</guid><description>&lt;p>If you haven&amp;rsquo;t set up your lab yet, feel free to check out my previous article on &lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/06/exploit-education-lab-setup.html">Exploit.education lab setup&lt;/a>&lt;/p>
&lt;p>Previous Writeup:&lt;/p>
&lt;ol>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/12/exploit-education-stack-zero-exercise-writeup.html">Stack Zero Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/20/exploit-education-stack-one-exercise-writeup.html">Stack One Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/26/exploit-education-stack-two-exercise-writeup.html">Stack Two Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/27/exploit-education-stack-three-exercise-writeup.html">Stack Three Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/28/exploit-education-stack-four-exercise-writeup.html">Stack Four Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/02/04/exploit-education-stack-five-exercise-writeup.html">Stack Five Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/02/26/exploit-education-stack-six-exercise-writeup.html">Stack Six Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/03/10/exploit-education-format-zero-exercise-writeup.html">Format Zero Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/03/31/exploit-education-format-one-exercise-writeup.html">Format One Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/04/07/exploit-education-format-two-exercise-writeup.html">Format Two Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/04/14/exploit-education-format-three-exercise-writeup.html">Format Three Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/04/21/exploit-education-format-four-exercise-writeup.html">Format Four Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/04/28/exploit-education-format-heap-exercise-writeup.html">Heap Zero Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/05/05/exploit-education-heap-one-exercise-writeup.html">Heap One Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;/ol>
&lt;h3 id="quick-overview">Quick Overview&lt;/h3>
&lt;p>Similar to Heap One, Heap Two exercise motive is to leverage buffer overflow and perform UAF (&lt;strong>User-After-Free Vulnerability&lt;/strong>) that technically allows to re-use the allocated memory in the heap to control the program flow. Similar to &lt;code>gets&lt;/code> in Heap Zero, &lt;code>strdup&lt;/code> function is unsafe that doesn&amp;rsquo;t have bounds check, it accepts memory address to copy but doesn&amp;rsquo;t care about overwriting other declared struct variable in the heap region.&lt;/p></description></item><item><title>Heap One Writeup - Exploit Education Lab Exercise</title><link>http://shivasurya.me/2023/05/05/exploit-education-heap-one-exercise-writeup/</link><pubDate>Fri, 05 May 2023 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2023/05/05/exploit-education-heap-one-exercise-writeup/</guid><description>&lt;p>If you haven&amp;rsquo;t set up your lab yet, feel free to check out my previous article on &lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/06/exploit-education-lab-setup.html">Exploit.education lab setup&lt;/a>&lt;/p>
&lt;p>Previous Writeup:&lt;/p>
&lt;ol>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/12/exploit-education-stack-zero-exercise-writeup.html">Stack Zero Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/20/exploit-education-stack-one-exercise-writeup.html">Stack One Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/26/exploit-education-stack-two-exercise-writeup.html">Stack Two Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/27/exploit-education-stack-three-exercise-writeup.html">Stack Three Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/28/exploit-education-stack-four-exercise-writeup.html">Stack Four Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/02/04/exploit-education-stack-five-exercise-writeup.html">Stack Five Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/02/26/exploit-education-stack-six-exercise-writeup.html">Stack Six Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/03/10/exploit-education-format-zero-exercise-writeup.html">Format Zero Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/03/31/exploit-education-format-one-exercise-writeup.html">Format One Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/04/07/exploit-education-format-two-exercise-writeup.html">Format Two Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/04/14/exploit-education-format-three-exercise-writeup.html">Format Three Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/04/21/exploit-education-format-four-exercise-writeup.html">Format Four Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/04/28/exploit-education-format-heap-exercise-writeup.html">Heap Zero Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;/ol>
&lt;h3 id="quick-overview">Quick Overview&lt;/h3>
&lt;p>Similar to Heap Zero, Heap One exercise motive is to smash the heap to modify other variables in the heap to a &lt;code>hex value&lt;/code> and technically overwrite &lt;code>struct&lt;/code> in the heap. Similar to &lt;code>gets&lt;/code> in Stack Zero, &lt;code>strcpy&lt;/code> function is unsafe that doesn&amp;rsquo;t have bounds check, it accepts memory address to write but doesn&amp;rsquo;t care about overwriting other declared struct variable in the heap region.&lt;/p></description></item><item><title>Heap Zero Writeup - Exploit Education Lab Exercise</title><link>http://shivasurya.me/2023/04/28/exploit-education-format-heap-exercise-writeup/</link><pubDate>Fri, 28 Apr 2023 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2023/04/28/exploit-education-format-heap-exercise-writeup/</guid><description>&lt;p>If you haven&amp;rsquo;t set up your lab yet, feel free to check out my previous article on &lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/06/exploit-education-lab-setup.html">Exploit.education lab setup&lt;/a>&lt;/p>
&lt;p>Previous Writeup:&lt;/p>
&lt;ol>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/12/exploit-education-stack-zero-exercise-writeup.html">Stack Zero Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/20/exploit-education-stack-one-exercise-writeup.html">Stack One Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/26/exploit-education-stack-two-exercise-writeup.html">Stack Two Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/27/exploit-education-stack-three-exercise-writeup.html">Stack Three Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/28/exploit-education-stack-four-exercise-writeup.html">Stack Four Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/02/04/exploit-education-stack-five-exercise-writeup.html">Stack Five Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/02/26/exploit-education-stack-six-exercise-writeup.html">Stack Six Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/03/10/exploit-education-format-zero-exercise-writeup.html">Format Zero Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/03/31/exploit-education-format-one-exercise-writeup.html">Format One Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/04/07/exploit-education-format-two-exercise-writeup.html">Format Two Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/04/14/exploit-education-format-three-exercise-writeup.html">Format Three Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/04/21/exploit-education-format-four-exercise-writeup.html">Format Four Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;/ol>
&lt;h3 id="quick-overview">Quick Overview&lt;/h3>
&lt;p>Similar to Stack One, Heap Zero exercise motive is to smash the heap to modify other variables in the heap to a &lt;code>hex value&lt;/code> and technically overwrite &lt;code>function pointer&lt;/code> in the heap. Similar to &lt;code>gets&lt;/code> in Stack Zero, &lt;code>strcpy&lt;/code> function is unsafe that doesn&amp;rsquo;t have bounds check, it accepts memory address to write but doesn&amp;rsquo;t care about overwriting other declared function pointer in heap.&lt;/p></description></item><item><title>Format Four Writeup - Exploit Education Lab Exercise</title><link>http://shivasurya.me/2023/04/21/exploit-education-format-four-exercise-writeup/</link><pubDate>Fri, 21 Apr 2023 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2023/04/21/exploit-education-format-four-exercise-writeup/</guid><description>&lt;h2 id="previous-writeup">Previous Writeup:&lt;/h2>
&lt;ol>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/12/exploit-education-stack-zero-exercise-writeup.html">Stack Zero Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/20/exploit-education-stack-one-exercise-writeup.html">Stack One Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/26/exploit-education-stack-two-exercise-writeup.html">Stack Two Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/27/exploit-education-stack-three-exercise-writeup.html">Stack Three Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/28/exploit-education-stack-four-exercise-writeup.html">Stack Four Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/02/04/exploit-education-stack-five-exercise-writeup.html">Stack Five Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/02/26/exploit-education-stack-six-exercise-writeup.html">Stack Six Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/03/10/exploit-education-format-zero-exercise-writeup.html">Format Zero Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/03/31/exploit-education-format-one-exercise-writeup.html">Format One Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/04/07/exploit-education-format-two-exercise-writeup.html">Format Two Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/04/14/exploit-education-format-three-exercise-writeup.html">Format Three Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;/ol>
&lt;p>If you haven&amp;rsquo;t done setting-up your lab, feel free to check out my previous article on &lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/06/exploit-education-lab-setup.html">Exploit.education lab setup&lt;/a>&lt;/p></description></item><item><title>Format Three Writeup - Exploit Education Lab Exercise</title><link>http://shivasurya.me/2023/04/14/exploit-education-format-three-exercise-writeup/</link><pubDate>Fri, 14 Apr 2023 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2023/04/14/exploit-education-format-three-exercise-writeup/</guid><description>&lt;h2 id="previous-writeup">Previous Writeup:&lt;/h2>
&lt;ol>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/12/exploit-education-stack-zero-exercise-writeup.html">Stack Zero Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/20/exploit-education-stack-one-exercise-writeup.html">Stack One Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/26/exploit-education-stack-two-exercise-writeup.html">Stack Two Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/27/exploit-education-stack-three-exercise-writeup.html">Stack Three Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/28/exploit-education-stack-four-exercise-writeup.html">Stack Four Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/02/04/exploit-education-stack-five-exercise-writeup.html">Stack Five Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/02/26/exploit-education-stack-six-exercise-writeup.html">Stack Six Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/03/10/exploit-education-format-zero-exercise-writeup.html">Format Zero Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/03/31/exploit-education-format-one-exercise-writeup.html">Format One Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/03/31/exploit-education-format-one-exercise-writeup.html">Format Two Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;/ol>
&lt;p>If you haven&amp;rsquo;t done setting-up your lab, feel free to check out my previous article on &lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/06/exploit-education-lab-setup.html">Exploit.education lab setup&lt;/a>&lt;/p></description></item><item><title>Format Two Writeup - Exploit Education Lab Exercise</title><link>http://shivasurya.me/2023/04/07/exploit-education-format-two-exercise-writeup/</link><pubDate>Fri, 07 Apr 2023 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2023/04/07/exploit-education-format-two-exercise-writeup/</guid><description>&lt;h2 id="previous-writeup">Previous Writeup:&lt;/h2>
&lt;ol>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/12/exploit-education-stack-zero-exercise-writeup.html">Stack Zero Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/20/exploit-education-stack-one-exercise-writeup.html">Stack One Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/26/exploit-education-stack-two-exercise-writeup.html">Stack Two Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/27/exploit-education-stack-three-exercise-writeup.html">Stack Three Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/28/exploit-education-stack-four-exercise-writeup.html">Stack Four Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/02/04/exploit-education-stack-five-exercise-writeup.html">Stack Five Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/02/26/exploit-education-stack-six-exercise-writeup.html">Stack Six Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/03/10/exploit-education-format-zero-exercise-writeup.html">Format Zero Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/03/31/exploit-education-format-one-exercise-writeup.html">Format One Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;/ol>
&lt;p>If you haven&amp;rsquo;t done setting-up your lab, feel free to check out my previous article on &lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/06/exploit-education-lab-setup.html">Exploit.education lab setup&lt;/a>&lt;/p></description></item><item><title>Format One Writeup - Exploit Education Lab Exercise</title><link>http://shivasurya.me/2023/03/31/exploit-education-format-one-exercise-writeup/</link><pubDate>Fri, 31 Mar 2023 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2023/03/31/exploit-education-format-one-exercise-writeup/</guid><description>&lt;h2 id="previous-writeup">Previous Writeup:&lt;/h2>
&lt;ol>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/12/exploit-education-stack-zero-exercise-writeup.html">Stack Zero Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/20/exploit-education-stack-one-exercise-writeup.html">Stack One Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/26/exploit-education-stack-two-exercise-writeup.html">Stack Two Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/27/exploit-education-stack-three-exercise-writeup.html">Stack Three Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/28/exploit-education-stack-four-exercise-writeup.html">Stack Four Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/02/04/exploit-education-stack-five-exercise-writeup.html">Stack Five Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/02/26/exploit-education-stack-six-exercise-writeup.html">Stack Six Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/03/10/exploit-education-format-zero-exercise-writeup.html">Format Zero Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;/ol>
&lt;p>If you haven&amp;rsquo;t done setting-up your lab, feel free to check out my previous article on &lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/06/exploit-education-lab-setup.html">Exploit.education lab setup&lt;/a>&lt;/p></description></item><item><title>CVE-2023-23397 - Zero Click Net-NTLMv2 Credential Hash Leak on Outlook Client</title><link>http://shivasurya.me/2023/03/25/CVE-2023-23397-vulnerability-deep-dive-and-poc/</link><pubDate>Sat, 25 Mar 2023 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2023/03/25/CVE-2023-23397-vulnerability-deep-dive-and-poc/</guid><description>&lt;h2 id="quick-overview">Quick Overview&lt;/h2>
&lt;p>Microsoft announced patch for &lt;a href="https://nvd.nist.gov/vuln/detail/CVE-2023-23397">CVE-2023-23397&lt;/a> which generally goes out usually on tuesday (Mar 14, 2023). This particular vulnerability caught my eyes due to the fact that I actively work on &lt;code>Active Directory&lt;/code> based HackTheBox machines and this one is something similar to &lt;code>Android Application Exploits&lt;/code> where attacker passes random url to &lt;code>activities&lt;/code> or &lt;code>services&lt;/code> and the outbound network connection often contains sensitive tokens attached to it.&lt;/p>
&lt;p>IIRC, I reported a similar vulnerability in 2020 which completely leaks encrypted sandbox local files including e-mail, tasks in the ProtonMail Android Client &lt;a href="https://proton.me/blog/protonmail-security-contributors">reference&lt;/a> However, it requires user interaction in the victim side of Android app.&lt;/p></description></item><item><title>HackTheBox Active Writeup - Active Directory - OSCP Practice</title><link>http://shivasurya.me/2023/03/17/hackthebox-active-writeup-oscp-active-directory/</link><pubDate>Fri, 17 Mar 2023 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2023/03/17/hackthebox-active-writeup-oscp-active-directory/</guid><description>&lt;h3 id="quick-overview">Quick Overview&lt;/h3>
&lt;p>&lt;a href="https://app.hackthebox.com/machines/Active">Active&lt;/a> is one of the easy Active Directory focused Windows Box from &lt;a href="https://docs.google.com/spreadsheets/u/1/d/1dwSMIAPIam0PuRBkCiDI88pU3yzrqqHkDtBngUHNCw8/htmlview#">TJNull OSCP Practice list&lt;/a>. It&amp;rsquo;s one of those easy machine where you get initial foothold via SMB &lt;code>Replication&lt;/code> share leak &amp;amp; escalate privileges using Active Directory weakness.&lt;/p>
&lt;p>&lt;img src="http://shivasurya.me/assets/media/htb-active-logo.png" alt="Active VM - HacktheBox Logo">&lt;/p>
&lt;h3 id="enumeration">Enumeration&lt;/h3>
&lt;h4 id="nmapautomator">NMapAutomator&lt;/h4>
&lt;p>Started with enumerating the target with &lt;a href="https://github.com/21y4d/nmapAutomator">&lt;code>NMapAutomator&lt;/code>&lt;/a> script since it helps in automating all possible ports with vulnerability scripts from &lt;code>nmap&lt;/code>. Additionally, &lt;code>NmapAutomator&lt;/code> can help in recon process using &lt;code>smbmap&lt;/code>, &lt;code>ffuf&lt;/code>, &lt;code>nikto&lt;/code>, &lt;code>DNSRecon&lt;/code>, &lt;code>SMB&lt;/code> enumeration.&lt;/p></description></item><item><title>Format Zero Writeup - Exploit Education Lab Exercise</title><link>http://shivasurya.me/2023/03/10/exploit-education-format-zero-exercise-writeup/</link><pubDate>Fri, 10 Mar 2023 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2023/03/10/exploit-education-format-zero-exercise-writeup/</guid><description>&lt;h3 id="previous-writeup">Previous Writeup:&lt;/h3>
&lt;ol>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/12/exploit-education-stack-zero-exercise-writeup.html">Stack Zero Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/20/exploit-education-stack-one-exercise-writeup.html">Stack One Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/26/exploit-education-stack-two-exercise-writeup.html">Stack Two Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/27/exploit-education-stack-three-exercise-writeup.html">Stack Three Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/28/exploit-education-stack-four-exercise-writeup.html">Stack Four Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/02/04/exploit-education-stack-five-exercise-writeup.html">Stack Five Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/02/26/exploit-education-stack-six-exercise-writeup.html">Stack Six Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;/ol>
&lt;p>If you haven&amp;rsquo;t done setting-up your lab, feel free to check out my previous article on &lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/06/exploit-education-lab-setup.html">Exploit.education lab setup&lt;/a>&lt;/p></description></item><item><title>Stack Six Writeup - Exploit Education Lab Exercise</title><link>http://shivasurya.me/2023/02/26/exploit-education-stack-six-exercise-writeup/</link><pubDate>Sun, 26 Feb 2023 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2023/02/26/exploit-education-stack-six-exercise-writeup/</guid><description>&lt;h3 id="previous-writeup">Previous Writeup:&lt;/h3>
&lt;ol>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/12/exploit-education-stack-zero-exercise-writeup.html">Stack Zero Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/20/exploit-education-stack-one-exercise-writeup.html">Stack One Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/26/exploit-education-stack-two-exercise-writeup.html">Stack Two Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/27/exploit-education-stack-three-exercise-writeup.html">Stack Three Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/28/exploit-education-stack-four-exercise-writeup.html">Stack Four Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/02/04/exploit-education-stack-five-exercise-writeup.html">Stack Five Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;/ol>
&lt;p>If you&amp;rsquo;re learning and writing binary exploits, I would strongly recommend you to take &lt;a href="https://p.ost2.fyi/courses/course-v1:OpenSecurityTraining2+Arch1001_x86-64_Asm+2021_v1/course/">Architecture 1001: x86-64 Assembly&lt;/a> course by &lt;code>Xeno Kovah&lt;/code>. They cover a wide variety of learning assembly instructions which will be really helpful to understand the exploits.&lt;/p></description></item><item><title>HackTheBox Jerry Writeup - OSCP Practice</title><link>http://shivasurya.me/2023/02/24/hackthebox-jerry-writeup-oscp/</link><pubDate>Fri, 24 Feb 2023 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2023/02/24/hackthebox-jerry-writeup-oscp/</guid><description>&lt;h3 id="quick-overview">Quick Overview&lt;/h3>
&lt;p>&lt;a href="https://app.hackthebox.com/machines/144">Jerry&lt;/a> is one of the Windows Box from &lt;a href="https://docs.google.com/spreadsheets/u/1/d/1dwSMIAPIam0PuRBkCiDI88pU3yzrqqHkDtBngUHNCw8/htmlview#">TJNull OSCP Practice list&lt;/a>. It&amp;rsquo;s one of those quite easy machine where you get initial foothold &amp;amp; privilege escalation in a single hop.&lt;/p>
&lt;p>&lt;img src="http://shivasurya.me/assets/media/htb-jerry-logo.jpg" alt="Jerry VM - HacktheBox Logo">&lt;/p>
&lt;h3 id="enumeration">Enumeration&lt;/h3>
&lt;h4 id="nmapautomator">NMapAutomator&lt;/h4>
&lt;p>Started with enumerating the target with &lt;a href="https://github.com/21y4d/nmapAutomator">&lt;code>NMapAutomator&lt;/code>&lt;/a> script since it helps in automating all possible ports with vulnerability scripts from &lt;code>nmap&lt;/code>. Additionally, &lt;code>NmapAutomator&lt;/code> can help in recon process using &lt;code>ffuf&lt;/code>, &lt;code>nikto&lt;/code>, &lt;code>DNSRecon&lt;/code>, &lt;code>SMB&lt;/code> enumeration.&lt;/p></description></item><item><title>HackTheBox OSCP Writeups - Shivasurya.me</title><link>http://shivasurya.me/2023/02/20/hackthebox-oscp-writeups/</link><pubDate>Mon, 20 Feb 2023 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2023/02/20/hackthebox-oscp-writeups/</guid><description>&lt;h3 id="quick-overview">Quick Overview&lt;/h3>
&lt;p>This blog post acts as Index of &lt;a href="https://docs.google.com/spreadsheets/u/1/d/1dwSMIAPIam0PuRBkCiDI88pU3yzrqqHkDtBngUHNCw8/htmlview#">TJNull HackTheBox OSCP Practice list&lt;/a>. I myself enjoyed solving all those HackTheBox VM and started writing writeups to help other folks out there striving hard to crack OSCP exam 🎮&lt;/p>
&lt;h3 id="index">Index&lt;/h3>
&lt;iframe class="airtable-embed" src="https://airtable.com/embed/shrt27NGHECI0l8yL?backgroundColor=orange&amp;viewControls=on" frameborder="0" onmousewheel="" width="100%" height="533" style="background: transparent; border: 1px solid #ccc;">&lt;/iframe>
&lt;h3 id="closing-note">Closing Note:&lt;/h3>
&lt;p>I hope this post is helpful for folks preparing for Offensive Security Certified Professional certification exam. For bugs,hugs &amp;amp; discussion, DM in &lt;a href="https://twitter.com/sshivasurya">Twitter&lt;/a>. Opinions are my own and not the views of my employer.&lt;/p></description></item><item><title>HackTheBox Bashed Writeup - OSCP Practice List</title><link>http://shivasurya.me/2023/02/14/hackthebox-bashed-writeup-oscp/</link><pubDate>Tue, 14 Feb 2023 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2023/02/14/hackthebox-bashed-writeup-oscp/</guid><description>&lt;h3 id="quick-overview">Quick Overview&lt;/h3>
&lt;p>&lt;a href="https://app.hackthebox.com/machines/118">Bashed&lt;/a> Box is one of the Linux Box from &lt;a href="https://docs.google.com/spreadsheets/u/1/d/1dwSMIAPIam0PuRBkCiDI88pU3yzrqqHkDtBngUHNCw8/htmlview#">TJNull OSCP Practice list&lt;/a>. It&amp;rsquo;s one of those quite easy machine where you get initial foothold in one hop and privilege escalation in second hop.&lt;/p>
&lt;p>&lt;img src="http://shivasurya.me/assets/media/htb-bashed-logo.jpg" alt="Bashed VM - HacktheBox Logo">&lt;/p>
&lt;h3 id="enumeration">Enumeration&lt;/h3>
&lt;h4 id="nmapautomator">NMapAutomator&lt;/h4>
&lt;p>Started with enumerating the target with &lt;a href="https://github.com/21y4d/nmapAutomator">&lt;code>NMapAutomator&lt;/code>&lt;/a> script since it helps in automating all possible ports with vulnerability scripts from &lt;code>nmap&lt;/code>. Additionally, &lt;code>NmapAutomator&lt;/code> can help in recon process using &lt;code>ffuf&lt;/code>, &lt;code>nikto&lt;/code>, &lt;code>DNSRecon&lt;/code>, &lt;code>SMB&lt;/code> enumeration.&lt;/p></description></item><item><title>Detecting Android WebView Vulnerable Configurations with Semgrep Rules - Part 1</title><link>http://shivasurya.me/2023/02/10/android-webview-vulnerabilities-semgrep-rules-detection/</link><pubDate>Fri, 10 Feb 2023 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2023/02/10/android-webview-vulnerabilities-semgrep-rules-detection/</guid><description>&lt;p>Android WebView widget provides APIs that help developers seamlessly integrate webpage contents within Android application. Advancement in Webview &amp;amp; Chrome Custom Tabs lead to &lt;a href="https://tomtunguz.com/mobile-only-saas/">exponential growth in webview based mobile development&lt;/a> platforms such as &lt;code>Ionic framework&lt;/code>, &lt;code>JQuery Mobile&lt;/code>, &lt;code>Adobe Phonegap&lt;/code> later open-sourced as &lt;code>Cordova Project&lt;/code>, &lt;code>React Native&lt;/code>. However the race to capture the mobile development market, immature WebView APIs and lack of security guidance lead to multiple vulnerabilities and exploits. In today&amp;rsquo;s blog post, we&amp;rsquo;ll deep dive into multiple WebView vulnerability configurations and leverage semgrep to detect those configuration real time.&lt;/p></description></item><item><title>Stack Five Writeup (Code Execution) - Exploit Education Lab Exercise</title><link>http://shivasurya.me/2023/02/04/exploit-education-stack-five-exercise-writeup/</link><pubDate>Sat, 04 Feb 2023 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2023/02/04/exploit-education-stack-five-exercise-writeup/</guid><description>&lt;h3 id="previous-writeup">Previous Writeup:&lt;/h3>
&lt;ol>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/12/exploit-education-stack-zero-exercise-writeup.html">Stack Zero Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/20/exploit-education-stack-one-exercise-writeup.html">Stack One Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/26/exploit-education-stack-two-exercise-writeup.html">Stack Two Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/27/exploit-education-stack-three-exercise-writeup.html">Stack Three Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/28/exploit-education-stack-four-exercise-writeup.html">Stack Four Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;/ol>
&lt;p>If you&amp;rsquo;re learning and writing binary exploits, I would strongly recommend you to take &lt;a href="https://p.ost2.fyi/courses/course-v1:OpenSecurityTraining2+Arch1001_x86-64_Asm+2021_v1/course/">Architecture 1001: x86-64 Assembly&lt;/a> course by &lt;code>Xeno Kovah&lt;/code>. They cover a wide variety of learning assembly instructions which will be really helpful to understand the exploits.&lt;/p></description></item><item><title>Stack Four Writeup - Exploit Education Lab Exercise</title><link>http://shivasurya.me/2023/01/28/exploit-education-stack-four-exercise-writeup/</link><pubDate>Sat, 28 Jan 2023 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2023/01/28/exploit-education-stack-four-exercise-writeup/</guid><description>&lt;h3 id="previous-writeup">Previous Writeup:&lt;/h3>
&lt;ol>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/12/exploit-education-stack-zero-exercise-writeup.html">Stack Zero Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/20/exploit-education-stack-one-exercise-writeup.html">Stack One Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/26/exploit-education-stack-two-exercise-writeup.html">Stack Two Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/27/exploit-education-stack-three-exercise-writeup.html">Stack Three Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;/ol>
&lt;p>If you&amp;rsquo;re learning and writing binary exploits, I would strongly recommend you to take &lt;a href="https://p.ost2.fyi/courses/course-v1:OpenSecurityTraining2+Arch1001_x86-64_Asm+2021_v1/course/">Architecture 1001: x86-64 Assembly&lt;/a> course by &lt;code>Xeno Kovah&lt;/code>. They cover a wide variety of learning assembly instructions which will be really helpful to understand the exploits.&lt;/p></description></item><item><title>Stack Three Writeup - Exploit Education Lab Exercise</title><link>http://shivasurya.me/2023/01/27/exploit-education-stack-three-exercise-writeup/</link><pubDate>Fri, 27 Jan 2023 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2023/01/27/exploit-education-stack-three-exercise-writeup/</guid><description>&lt;p>If you&amp;rsquo;re learning and writing binary exploits, I would strongly recommend you to take &lt;a href="https://p.ost2.fyi/courses/course-v1:OpenSecurityTraining2+Arch1001_x86-64_Asm+2021_v1/course/">Architecture 1001: x86-64 Assembly&lt;/a> course by &lt;code>Xeno Kovah&lt;/code>. They cover a wide variety of learning assembly instructions which will be really helpful to understand the exploits.&lt;/p>
&lt;p>If you haven&amp;rsquo;t done setting-up your lab, feel free to check out my previous article on &lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/06/exploit-education-lab-setup.html">Exploit.education lab setup&lt;/a>&lt;/p>
&lt;p>Previous Writeup:&lt;/p>
&lt;ol>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/12/exploit-education-stack-zero-exercise-writeup.html">Stack Zero Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/20/exploit-education-stack-one-exercise-writeup.html">Stack One Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/26/exploit-education-stack-two-exercise-writeup.html">Stack Two Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;/ol>
&lt;h3 id="quick-overview">Quick Overview&lt;/h3>
&lt;p>Similar to Stack Two, Stack Three exercise motive is to smash the stack to modify other variables in the stack to a &lt;code>hex value&lt;/code> and technically overwrite &lt;code>function pointer&lt;/code> in the stack. Similar to &lt;code>gets&lt;/code> in Stack Zero, &lt;code>strcpy&lt;/code> function is unsafe that doesn&amp;rsquo;t have bounds check, it accepts memory address to write but doesn&amp;rsquo;t care about overwriting other declared function pointer in stack. If you take closer look at the struct which isn&amp;rsquo;t dynamically being allocated by &lt;code>malloc&lt;/code> function, so probably the struct which contains both &lt;code>char buffer[64]&lt;/code> and &lt;code>volatile int *fp&lt;/code> function pointer stays in main stackframe. This overwritten function pointer will be further used to invoke in later part of the program.&lt;/p></description></item><item><title>Stack Two Writeup - Exploit Education Lab Exercise</title><link>http://shivasurya.me/2023/01/26/exploit-education-stack-two-exercise-writeup/</link><pubDate>Thu, 26 Jan 2023 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2023/01/26/exploit-education-stack-two-exercise-writeup/</guid><description>&lt;p>If you&amp;rsquo;re learning and writing binary exploits, I would strongly recommend you to take &lt;a href="https://p.ost2.fyi/courses/course-v1:OpenSecurityTraining2+Arch1001_x86-64_Asm+2021_v1/course/">Architecture 1001: x86-64 Assembly&lt;/a> course by &lt;code>Xeno Kovah&lt;/code>. They cover a wide variety of learning assembly instructions which will be really helpful to understand the exploits.&lt;/p>
&lt;p>If you haven&amp;rsquo;t done setting-up your lab, feel free to check out my previous article on &lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/06/exploit-education-lab-setup.html">Exploit.education lab setup&lt;/a>&lt;/p>
&lt;p>Previous Writeup:&lt;/p>
&lt;ol>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/12/exploit-education-stack-zero-exercise-writeup.html">Stack Zero Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/20/exploit-education-stack-one-exercise-writeup.html">Stack One Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/li>
&lt;/ol>
&lt;h3 id="quick-overview">Quick Overview&lt;/h3>
&lt;p>Similar to Stack One, Stack Two exercise motive is to smash the stack to modify other variables in the stack to a &lt;code>hex value 0x0d0a090a&lt;/code> but receives the value from the environment variable &lt;code>ExploitEducation&lt;/code>. Technically, similar to &lt;code>gets&lt;/code> in Stack Zero, &lt;code>strcpy&lt;/code> function is unsafe that doesn&amp;rsquo;t have bounds check, it accepts memory address to write but doesn&amp;rsquo;t care about overwriting other declared variables in stack. If you take closer look at the struct which isn&amp;rsquo;t dynamically being allocated by &lt;code>malloc&lt;/code> function, so probably the struct which contains both &lt;code>char buffer[64]&lt;/code> and &lt;code>volatile int changeme&lt;/code> stays in main stackframe.&lt;/p></description></item><item><title>Stack One Writeup - Exploit Education Lab Exercise</title><link>http://shivasurya.me/2023/01/20/exploit-education-stack-one-exercise-writeup/</link><pubDate>Fri, 20 Jan 2023 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2023/01/20/exploit-education-stack-one-exercise-writeup/</guid><description>&lt;p>If you&amp;rsquo;re learning and writing binary exploits, I would strongly recommend you to take &lt;a href="https://p.ost2.fyi/courses/course-v1:OpenSecurityTraining2+Arch1001_x86-64_Asm+2021_v1/course/">Architecture 1001: x86-64 Assembly&lt;/a> course by &lt;code>Xeno Kovah&lt;/code>. They cover a wide variety of learning assembly instructions which will be really helpful to understand the exploits.&lt;/p>
&lt;p>If you haven&amp;rsquo;t done setting-up your lab, feel free to check out my previous article on &lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/06/exploit-education-lab-setup.html">Exploit.education lab setup&lt;/a>&lt;/p>
&lt;p>Previous Writeup: &lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/12/exploit-education-stack-zero-exercise-writeup.html">Stack Zero Writeup - Exploit Education Lab Exercise&lt;/a>&lt;/p>
&lt;h3 id="quick-overview">Quick Overview&lt;/h3>
&lt;p>Unlike Stack Zero, Stack One exercise motive is to smash the stack to modify other variables in the stack to a &lt;code>hex value 0x496c5962&lt;/code>. Technically, similar to &lt;code>gets&lt;/code> in Stack Zero, &lt;code>strcpy&lt;/code> function is unsafe that doesn&amp;rsquo;t have bounds check, it accepts memory address to write but doesn&amp;rsquo;t care about overwriting other declared variables in stack. If you take closer look at the struct which isn&amp;rsquo;t dynamically being allocated by &lt;code>malloc&lt;/code> function, so probably the struct which contains both &lt;code>char buffer[64]&lt;/code> and &lt;code>volatile int changeme&lt;/code> stays in main stackframe.&lt;/p></description></item><item><title>Stack Zero Writeup - Exploit Education Lab Exercise</title><link>http://shivasurya.me/2023/01/12/exploit-education-stack-zero-exercise-writeup/</link><pubDate>Thu, 12 Jan 2023 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2023/01/12/exploit-education-stack-zero-exercise-writeup/</guid><description>&lt;p>If you&amp;rsquo;re learning and writing binary exploits, I would strongly recommend you to take &lt;a href="https://p.ost2.fyi/courses/course-v1:OpenSecurityTraining2+Arch1001_x86-64_Asm+2021_v1/course/">Architecture 1001: x86-64 Assembly&lt;/a> course by &lt;code>Xeno Kovah&lt;/code>. They cover a wide variety of learning assembly instructions which will be really helpful to understand the exploits.&lt;/p>
&lt;p>If you haven&amp;rsquo;t done setting-up your lab, feel free to check out my previous article on &lt;a href="https://shivasurya.me/security/binary-exploit/reverse-engineering/friday-gems/2023/01/06/exploit-education-lab-setup.html">Exploit.education lab setup&lt;/a>&lt;/p>
&lt;h3 id="quick-overview">Quick Overview&lt;/h3>
&lt;p>Stack Zero exercise is based on stackoverflow memory corruption issue where you&amp;rsquo;ll have to smash the stack to modify other variables in the stack to achieve code execution, execution flow redirection or behaviour in the program. Technically, &lt;code>gets&lt;/code> function is unsafe that doesn&amp;rsquo;t have bounds check basically, it accepts memory address to write but doesn&amp;rsquo;t care about overwriting other declared variables in stack. If you take closer look at the struct which isn&amp;rsquo;t dynamically being allocated by &lt;code>malloc&lt;/code> function, so probably the struct which contains both &lt;code>char buffer[64]&lt;/code> and &lt;code>volatile int changeme&lt;/code> stays in main stackframe.&lt;/p></description></item><item><title>Exploit Education Lab Setup - Windows &amp; MacOS</title><link>http://shivasurya.me/2023/01/06/exploit-education-lab-setup/</link><pubDate>Fri, 06 Jan 2023 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2023/01/06/exploit-education-lab-setup/</guid><description>&lt;p>Exploit.education binary exploitation exercise typically runs on ASLR (Address space layout randomization) disabled ubuntu based virtual machine with Data Execution Prevention turned off binaries. In order to setup the &lt;code>exploit.education&lt;/code> lab, You&amp;rsquo;ll have to either use virtualbox or qemu based virtual machine emulator setup to easily test and debug the exercises.&lt;/p>
&lt;h3 id="installation">Installation&lt;/h3>
&lt;p>For both MacOS and Windows, grab a copy of &lt;a href="https://www.qemu.org/download/">qemu emulator&lt;/a> and follow the installation setup which is quite easy.&lt;/p></description></item><item><title>Binary Search and Hidden Overflow 🪲</title><link>http://shivasurya.me/2022/12/04/binary-search-overflow/</link><pubDate>Sun, 04 Dec 2022 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2022/12/04/binary-search-overflow/</guid><description>&lt;p>Recently I was playing with overflow vulnerabilities help of &lt;code>exploit.education&lt;/code> exercise which mostly covers basic heap, buffer overflow,
use-after-free vulnerability patterns in a contained &lt;code>qemu&lt;/code> based environment. However, I was searching for Integer overflow patterns and articles around it &amp;ldquo;how to succesfully convert a integer overflow into a remote code execution&amp;rdquo;. While reading through the vulnerability reports, I started exploring code snippets relevant to integer overflow and this blog post &lt;a href="https://ai.googleblog.com/2006/06/extra-extra-read-all-about-it-nearly.html">&lt;code>Nearly All Binary Searches and Mergesorts are Broken&lt;/code>&lt;/a> caught my eyes.&lt;/p></description></item><item><title>Detecting Android Content Provider APIs with Semgrep Rules</title><link>http://shivasurya.me/2022/11/28/android-content-provider-semgrep-detection/</link><pubDate>Mon, 28 Nov 2022 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2022/11/28/android-content-provider-semgrep-detection/</guid><description>&lt;p>Content Provider is one of the powerful APIs which helps Android developers programmatically expose resource content within Android ecosystem via Intents. One could easily write those queries easily by extending the &lt;code>ContentProvider&lt;/code> class and implementing those methods and accessing via URI (example: &lt;code>android://com.zoho.example/database/:_data&lt;/code>). Though these Content Provider is a cupcake for developers, Unfortunately there are lot of vulnerabilities hidden within those APIs and with implementation part.&lt;/p>
&lt;p>The main intent for writing this blog post were Semgrep and the recent blog post from &lt;code>project zero&lt;/code> regarding &lt;a href="https://googleprojectzero.blogspot.com/2022/11/a-very-powerful-clipboard-samsung-in-the-wild-exploit-chain.html">Analysis of a Samsung in-the-wild exploit chain&lt;/a>. I&amp;rsquo;ve been using semgrep for a while to tweak my findings instead of naive grep, CodeQL and the Samsung exploit chain may look trivial but how a simple permission bypass can affect system level apps in the Android phone. Later this year, I have added semgrep to my mobile pentesting suite which helps me to run these scripts over large Android projects, decompiled projects in automated way which pings me on Slack 🤖.&lt;/p></description></item><item><title>Cross-Site Scripting attack on Leetcode</title><link>http://shivasurya.me/2020/12/07/leetcode-xss/</link><pubDate>Mon, 07 Dec 2020 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2020/12/07/leetcode-xss/</guid><description>&lt;p>Reflected XSS (Cross-Site Scripting) attack is my favorite vulnerability category as it&amp;rsquo;s relatively easy to exploit by checking for params as the source and rendering DOM as the sink.&lt;/p>
&lt;h3 id="problem">Problem&lt;/h3>
&lt;p>The core problem of the Reflected Cross-Site scripting attack is appending the URL parameter values in the DOM without validation or filtering. Though the reflected XSS requires user interaction by visiting the page or clicking on links in real-life attacks, people should think about Iframe tags that don&amp;rsquo;t need any interaction to load them on other third party web pages.&lt;/p></description></item><item><title>Securing an ExpressJS server - Part 1</title><link>http://shivasurya.me/2020/11/05/securing-express-server-part-1/</link><pubDate>Thu, 05 Nov 2020 00:00:00 +0000</pubDate><guid>http://shivasurya.me/2020/11/05/securing-express-server-part-1/</guid><description>&lt;p>As Javascript programming language popularity increases, platforms have already started adopting it from native desktop apps, mobile, browser to server-side, giving rise to exciting frameworks, style guides, tools.&lt;/p>
&lt;p>To JavaScript—you weren&amp;rsquo;t born with a silver spoon in your mouth, but you&amp;rsquo;ve outclassed every language that&amp;rsquo;s challenged you in the browser.&lt;/p>
&lt;p>ExpressJS is not an exception that powers &lt;a href="https://trends.builtwith.com/framework/Express">2.31% of the top 1 million websites&lt;/a> which runs on top of NodeJS and provides excellent features to develop web-based applications. So, let&amp;rsquo;s jumpstart with a few basics, and this particular series will cover a lot more aspects of securing, maintaining and deploying production-grade expressjs server.&lt;/p></description></item></channel></rss>