<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" 
  xmlns:content="http://purl.org/rss/1.0/modules/content/" 
  xmlns:dc="http://purl.org/dc/elements/1.1/" 
  xmlns:atom="http://www.w3.org/2005/Atom" 
  xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" 
  xmlns:media="http://search.yahoo.com/mrss/">
  <channel>
    <title>Posts on Sam&#39;s Hacking Wonderland</title>
    <link>https://netsec.expert/posts/</link>
    <description>Recent content in Posts on Sam&#39;s Hacking Wonderland</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en</language>
    <managingEditor>the@netsec.expert (Sam Anttila)</managingEditor>
    <webMaster>the@netsec.expert (Sam Anttila)</webMaster>
    <copyright>&amp;copy;{year}</copyright>
    <lastBuildDate>Thu, 04 Nov 2021 20:17:00 +0100</lastBuildDate>
    <sy:updatePeriod>weekly</sy:updatePeriod>
    
        <atom:link href="https://netsec.expert/posts/index.xml" rel="self" type="application/rss+xml" />
    

      
      <item>
        <title>Automating DOM XSS Discovery</title>
        <link>https://netsec.expert/posts/automating-dom-xss/</link>
        <pubDate>Thu, 04 Nov 2021 20:17:00 +0100</pubDate>
        <author>the@netsec.expert (Sam Anttila)</author>
        <atom:modified>Thu, 04 Nov 2021 20:17:00 +0100</atom:modified>
        <guid>https://netsec.expert/posts/automating-dom-xss/</guid>
        <description>This article is a brief introduction to static analysis tools to hunt for client-side web vulnerabilities while giving some examples of ways I&amp;rsquo;ve successfully employed it so you can have fun with these tools too.
What&amp;rsquo;s this about static analysis anyway? Static analysis is different from dynamic analysis (e.g., black-box testing with Burp). It never actually runs any code or depends on any running processes but instead parses raw source code.</description>
        
        <dc:creator>Sam Anttila</dc:creator>
        
        
        
        
        
          
            
              <category>bug hunting</category>
            
          
            
              <category>web</category>
            
          
            
              <category>development</category>
            
          
            
              <category>vulnerabilities</category>
            
          
        
        
      </item>
      
      <item>
        <title>Mitigation schmitigation: Control HttpOnly cookies through XSS</title>
        <link>https://netsec.expert/posts/mitigation-schmitigation-xss-and-httponly/</link>
        <pubDate>Mon, 16 Aug 2021 20:02:11 +0100</pubDate>
        <author>the@netsec.expert (Sam Anttila)</author>
        <atom:modified>Mon, 16 Aug 2021 20:02:11 +0100</atom:modified>
        <guid>https://netsec.expert/posts/mitigation-schmitigation-xss-and-httponly/</guid>
        <description>Did you know the &amp;lsquo;HttpOnly&amp;rsquo; cookie attribute, intended to make it so that JavaScript can not read or write a particular cookie, is more of a handwavy suggestion than a requirement?
It&amp;rsquo;s true.
In the modern version of Chrome, regardless of the underlying OS, you can overwrite cookies with HttpOnly set.
If you&amp;rsquo;ve been around long enough in web security or perhaps dug deep into the literature on web attacks, you might know this as &amp;lsquo;cookie jar overflow&amp;rsquo;, &amp;lsquo;cookie overflow&amp;rsquo; (my favorite because it sounds delicious), or &amp;lsquo;cookie forcing&amp;rsquo;, because it&amp;rsquo;s really not a new attack.</description>
        
        <dc:creator>Sam Anttila</dc:creator>
        
        
        
        
        
          
            
              <category>bug hunting</category>
            
          
            
              <category>vulnerabilities</category>
            
          
            
              <category>web</category>
            
          
        
        
      </item>
      
      <item>
        <title>Fuzz the Unfuzzable</title>
        <link>https://netsec.expert/posts/fuzz-the-unfuzzable/</link>
        <pubDate>Tue, 10 Aug 2021 16:12:30 +0200</pubDate>
        <author>the@netsec.expert (Sam Anttila)</author>
        <atom:modified>Tue, 10 Aug 2021 16:12:30 +0200</atom:modified>
        <guid>https://netsec.expert/posts/fuzz-the-unfuzzable/</guid>
        <description>Fuzzers are awesome! You write &amp;lsquo;em, set &amp;lsquo;em up and run &amp;lsquo;em&amp;hellip; and out come delicious fun bugs! (The bugs are a guarantee &amp;ndash; your skill will determine if it&amp;rsquo;s in your fuzzer or the target application)
What I feel is less talked about is that fuzzing doesn&amp;rsquo;t have to be about finding crashes in binaries to yield cool results (You don&amp;rsquo;t even have to like binary exploitation! I don&amp;rsquo;t!), and stuff that won&amp;rsquo;t crash or aren&amp;rsquo;t binaries are far from &amp;ldquo;unfuzzable&amp;rdquo;; they just need a different approach.</description>
        
        <dc:creator>Sam Anttila</dc:creator>
        
        
        
        
        
          
            
              <category>bug hunting</category>
            
          
            
              <category>vulnerabilities</category>
            
          
            
              <category>fuzzing</category>
            
          
        
        
      </item>
      
      <item>
        <title>Cheatsheet: XSS that works in 2021</title>
        <link>https://netsec.expert/posts/xss-in-2021/</link>
        <pubDate>Sun, 07 Feb 2021 12:00:00 +0000</pubDate>
        <author>the@netsec.expert (Sam Anttila)</author>
        <atom:modified>Sun, 07 Feb 2021 12:00:00 +0000</atom:modified>
        <guid>https://netsec.expert/posts/xss-in-2021/</guid>
        <description>It&amp;rsquo;s been a year since my last XSS cheatsheet, and a year of developments in XSS exploitology. Here&amp;rsquo;s a new and updated version jam-packed full of goodies that I use myself! Note: This cheat-sheet focuses on up to date and relevant items only. Would you take a cheat sheet with you to an exam that has a bunch of irrelevant stuff? No, of course not. I hate cheat sheets that</description>
        
        <dc:creator>Sam Anttila</dc:creator>
        
        
        
        
        
          
            
              <category>bug hunting</category>
            
          
            
              <category>vulnerabilities</category>
            
          
            
              <category>cheatsheet</category>
            
          
        
        
      </item>
      
      <item>
        <title>Escape Static Website Dependency Hell with Hugo</title>
        <link>https://netsec.expert/posts/escape-dependency-hell-with-hugo/</link>
        <pubDate>Sun, 31 Jan 2021 11:31:28 +0100</pubDate>
        <author>the@netsec.expert (Sam Anttila)</author>
        <atom:modified>Sun, 31 Jan 2021 11:31:28 +0100</atom:modified>
        <guid>https://netsec.expert/posts/escape-dependency-hell-with-hugo/</guid>
        <description>The problem I really want to highlight something most people don&amp;rsquo;t discuss in depth when picking what technology stacks to use for their static website, something I&amp;rsquo;ve had to deal with frequently when writing for this site, and something that I found that Hugo was the only reasonable solution to.
Dependencies.
st=&amp;gt;start: Site para=&amp;gt;parallel: Site Generator op1=&amp;gt;operation: Dependency 1 op2=&amp;gt;operation: Dependency 2 op3=&amp;gt;operation: Dependency 3 st-&amp;gt;para(path1,bottom)-&amp;gt;op1-&amp;gt;op3 st-&amp;gt;para(path2,right)-&amp;gt;op2-&amp;gt;op3 Here&amp;rsquo;s a real-life scenario for you:</description>
        
        <dc:creator>Sam Anttila</dc:creator>
        
        
        
        
        
          
            
              <category>tech</category>
            
          
            
              <category>misc</category>
            
          
            
              <category>development</category>
            
          
        
        
          
            
          
        
      </item>
      
      <item>
        <title>Breaking Python 3 eval protections</title>
        <link>https://netsec.expert/posts/breaking-python3-eval-protections/</link>
        <pubDate>Sat, 16 Jan 2021 20:02:11 +0100</pubDate>
        <author>the@netsec.expert (Sam Anttila)</author>
        <atom:modified>Sat, 16 Jan 2021 20:02:11 +0100</atom:modified>
        <guid>https://netsec.expert/posts/breaking-python3-eval-protections/</guid>
        <description>Today I&amp;rsquo;m presenting you some research I&amp;rsquo;ve done recently into the Python 3 eval protections.
It&amp;rsquo;s been covered before, but it surprised me to find that most of the info I could find was only applicable for earlier versions of Python and no longer work, or suggested solutions would not work from an attacker perspective inside of eval since you need to express it as a single statement.
Since these break every so often, I&amp;rsquo;ve gone to some length to describe how I arrived at my conclusions to hopefully proverbially &amp;lsquo;teach you how to fish&amp;rsquo; so you can work out your own technique should any of the exact solutions I arrived at break in the future.</description>
        
        <dc:creator>Sam Anttila</dc:creator>
        
        
        
        
        
        
      </item>
      
      <item>
        <title>100% evasion - Write a crypter in any language to bypass AV</title>
        <link>https://netsec.expert/posts/write-a-crypter-in-any-language/</link>
        <pubDate>Thu, 06 Feb 2020 12:00:00 +0000</pubDate>
        <author>the@netsec.expert (Sam Anttila)</author>
        <atom:modified>Thu, 06 Feb 2020 12:00:00 +0000</atom:modified>
        <guid>https://netsec.expert/posts/write-a-crypter-in-any-language/</guid>
        <description>Writing a 100% evasion crypter Today I will be showing you how to write your own crypter in any language you want. I will be using an earlier in-development version of my recently released free and open-source PowerShell crypter Xencrypt as the basis for my examples (and that&amp;rsquo;s the tool you see in action in the screenshot above) as I walk you through how to design and implement your own crypter.</description>
        
        <dc:creator>Sam Anttila</dc:creator>
        
        
        
        
        
          
            
              <category>tradecraft</category>
            
          
            
              <category>evasion</category>
            
          
        
        
      </item>
      
      <item>
        <title>Actual XSS in 2020</title>
        <link>https://netsec.expert/posts/xss-in-2020/</link>
        <pubDate>Sat, 01 Feb 2020 12:00:00 +0000</pubDate>
        <author>the@netsec.expert (Sam Anttila)</author>
        <atom:modified>Sat, 01 Feb 2020 12:00:00 +0000</atom:modified>
        <guid>https://netsec.expert/posts/xss-in-2020/</guid>
        <description>I dislike most XSS cheat sheets out there. Many attempt to be copy-and-paste sources (and never clean up things that stopped working 10 years ago) while ignoring that in most instances where you&amp;rsquo;re doing more difficult than trivial injection literally none of it will work for one reason or another (be it WAF or a XSS filter), and if it is trivial XSS then you just need one vector and not a million.</description>
        
        <dc:creator>Sam Anttila</dc:creator>
        
        
        
        
        
          
            
              <category>bug hunting</category>
            
          
            
              <category>vulnerabilities</category>
            
          
            
              <category>cheatsheet</category>
            
          
        
        
      </item>
      
      <item>
        <title>Tradecraft - This is why your tools and exploits get detected by EDR</title>
        <link>https://netsec.expert/posts/getting-detected-by-edrs/</link>
        <pubDate>Sat, 11 Jan 2020 12:00:00 +0000</pubDate>
        <author>the@netsec.expert (Sam Anttila)</author>
        <atom:modified>Sat, 11 Jan 2020 12:00:00 +0000</atom:modified>
        <guid>https://netsec.expert/posts/getting-detected-by-edrs/</guid>
        <description>Background Recently I had the opportunity to play around with EDRs and test what works and doesn&amp;rsquo;t. What struck me is just how many behaviours and actions EDRs actually monitor for, and that unfortunately (for red team at least) most tools are not at all developed to combat the level of monitoring that EDRs provide. Below, I&amp;rsquo;ve compiled the most common reasons why the tools and payloads I tested were getting flagged as malicious and suspicious by EDRs so that you can hopefully also learn from my experiences.</description>
        
        <dc:creator>Sam Anttila</dc:creator>
        
        
        
        
        
          
            
              <category>tradecraft</category>
            
          
            
              <category>evasion</category>
            
          
        
        
      </item>
      
      <item>
        <title>Minitip - Stored XSS through SVG</title>
        <link>https://netsec.expert/posts/xss-through-svg/</link>
        <pubDate>Thu, 09 Jan 2020 12:00:00 +0000</pubDate>
        <author>the@netsec.expert (Sam Anttila)</author>
        <atom:modified>Thu, 09 Jan 2020 12:00:00 +0000</atom:modified>
        <guid>https://netsec.expert/posts/xss-through-svg/</guid>
        <description>The button below will write the following SVG image to the page (remember: SVG files are just code):

alert(&amp;quot;XSS through SVG&amp;quot;); &amp;quot;&#39;);&#34;Load SVG file
1 2 3 4 5 6 7  &amp;lt;svg xmlns=&amp;#34;http://www.w3.org/2000/svg&amp;#34; viewBox=&amp;#34;0 0 100 100&amp;#34;&amp;gt; &amp;lt;circle cx=&amp;#34;50&amp;#34; cy=&amp;#34;50&amp;#34; r=&amp;#34;48&amp;#34; fill=&amp;#34;none&amp;#34; stroke=&amp;#34;#000&amp;#34;/&amp;gt; &amp;lt;path d=&amp;#34;M50,2a48,48 0 1 1 0,96a24 24 0 1 1 0-48a24 24 0 1 0 0-48&amp;#34;/&amp;gt; &amp;lt;circle cx=&amp;#34;50&amp;#34; cy=&amp;#34;26&amp;#34; r=&amp;#34;6&amp;#34;/&amp;gt; &amp;lt;circle cx=&amp;#34;50&amp;#34; cy=&amp;#34;74&amp;#34; r=&amp;#34;6&amp;#34; fill=&amp;#34;#FFF&amp;#34;/&amp;gt; ***&amp;lt;script&amp;gt;alert(&amp;#34;XSS through SVG&amp;#34;);&amp;lt;/script&amp;gt;*** &amp;lt;/svg&amp;gt;    Which when loaded will trigger the XSS payload marked above.</description>
        
        <dc:creator>Sam Anttila</dc:creator>
        
        
        
        
        
          
            
              <category>minitips</category>
            
          
            
              <category>vulnerabilities</category>
            
          
        
        
      </item>
      

    
  </channel>
</rss>