> ## Documentation Index
> Fetch the complete documentation index at: https://rootea.es/llms.txt
> Use this file to discover all available pages before exploring further.

# Server-Side Request Forgery

> Cross-platform resources for Server-Side Request Forgery: curated HTB machines, PortSwigger labs and TryHackMe rooms with validated writeups and related skills.

# Server-Side Request Forgery

This page aggregates **cross-platform resources to practice Server-Side Request Forgery**: retired Hack The Box machines, PortSwigger Web Security Academy labs and TryHackMe rooms, plus curated resources (HackTricks, PortSwigger, etc.) and related skills.

## Curated resources

| Source     | Link                                                                                                                                                                                     |
| ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| HackTricks | [https://book.hacktricks.wiki/en/pentesting-web/ssrf-server-side-request-forgery/index.html](https://book.hacktricks.wiki/en/pentesting-web/ssrf-server-side-request-forgery/index.html) |

## HTB machines practicing Server-Side Request Forgery (10)

| Machine                                                 | OS      | Difficulty                                           |
| ------------------------------------------------------- | ------- | ---------------------------------------------------- |
| [AdmirerToo](/en/htb/machines/linux/dificil/admirertoo) | Linux   | <span className="dbadge dbadge-hard">HARD</span>     |
| [Dab](/en/htb/machines/linux/dificil/dab)               | Linux   | <span className="dbadge dbadge-hard">HARD</span>     |
| [Forge](/en/htb/machines/linux/medio/forge)             | Linux   | <span className="dbadge dbadge-medium">MEDIUM</span> |
| [Fulcrum](/en/htb/machines/linux/insano/fulcrum)        | Linux   | <span className="dbadge dbadge-insane">INSANE</span> |
| [Haircut](/en/htb/machines/linux/medio/haircut)         | Linux   | <span className="dbadge dbadge-medium">MEDIUM</span> |
| [Kotarak](/en/htb/machines/linux/dificil/kotarak)       | Linux   | <span className="dbadge dbadge-hard">HARD</span>     |
| [Love](/en/htb/machines/windows/facil/love)             | Windows | <span className="dbadge dbadge-easy">EASY</span>     |
| [Minion](/en/htb/machines/windows/insano/minion)        | Windows | <span className="dbadge dbadge-insane">INSANE</span> |
| [OverGraph](/en/htb/machines/linux/dificil/overgraph)   | Linux   | <span className="dbadge dbadge-hard">HARD</span>     |
| [Time](/en/htb/machines/linux/medio/time)               | Linux   | <span className="dbadge dbadge-medium">MEDIUM</span> |

## PortSwigger labs practicing Server-Side Request Forgery (11)

| Lab                                                                                                                                | Difficulty                                                 | Topic                              | Official                                                                                                            |
| ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------- |
| [Basic SSRF against another back-end system](/en/portswigger/labs/ssrf/basic-ssrf-against-backend-system)                          | <span className="dbadge dbadge-easy">APPRENTICE</span>     | SSRF (Server-Side Request Forgery) | [Open](https://portswigger.net/web-security/ssrf/lab-basic-ssrf-against-backend-system)                             |
| [Basic SSRF against the local server](/en/portswigger/labs/ssrf/basic-ssrf-against-localhost)                                      | <span className="dbadge dbadge-easy">APPRENTICE</span>     | SSRF (Server-Side Request Forgery) | [Open](https://portswigger.net/web-security/ssrf/lab-basic-ssrf-against-localhost)                                  |
| [Blind SSRF with Shellshock exploitation](/en/portswigger/labs/ssrf/blind-shellshock-exploitation)                                 | <span className="dbadge dbadge-easy">APPRENTICE</span>     | SSRF (Server-Side Request Forgery) | [Open](https://portswigger.net/web-security/ssrf/blind/lab-shellshock-exploitation)                                 |
| [Exploiting XXE to perform SSRF attacks](/en/portswigger/labs/xxe/exploiting-xxe-to-perform-ssrf)                                  | <span className="dbadge dbadge-easy">APPRENTICE</span>     | XXE (XML External Entity)          | [Open](https://portswigger.net/web-security/xxe/lab-exploiting-xxe-to-perform-ssrf)                                 |
| [SSRF with whitelist-based input filter](/en/portswigger/labs/ssrf/ssrf-with-whitelist-filter)                                     | <span className="dbadge dbadge-easy">APPRENTICE</span>     | SSRF (Server-Side Request Forgery) | [Open](https://portswigger.net/web-security/ssrf/lab-ssrf-with-whitelist-filter)                                    |
| [Blind SSRF with out-of-band detection](/en/portswigger/labs/ssrf/blind-out-of-band-detection)                                     | <span className="dbadge dbadge-medium">PRACTITIONER</span> | SSRF (Server-Side Request Forgery) | [Open](https://portswigger.net/web-security/ssrf/blind/lab-out-of-band-detection)                                   |
| [Routing-based SSRF](/en/portswigger/labs/host-header/exploiting-host-header-routing-based-ssrf)                                   | <span className="dbadge dbadge-medium">PRACTITIONER</span> | HTTP Host Header Attacks           | [Open](https://portswigger.net/web-security/host-header/exploiting/lab-host-header-routing-based-ssrf)              |
| [SSRF via flawed request parsing](/en/portswigger/labs/host-header/exploiting-host-header-ssrf-via-flawed-request-parsing)         | <span className="dbadge dbadge-medium">PRACTITIONER</span> | HTTP Host Header Attacks           | [Open](https://portswigger.net/web-security/host-header/exploiting/lab-host-header-ssrf-via-flawed-request-parsing) |
| [SSRF via OpenID dynamic client registration](/en/portswigger/labs/oauth/openid-oauth-ssrf-via-openid-dynamic-client-registration) | <span className="dbadge dbadge-medium">PRACTITIONER</span> | OAuth Authentication               | [Open](https://portswigger.net/web-security/oauth/openid/lab-oauth-ssrf-via-openid-dynamic-client-registration)     |
| [SSRF with blacklist-based input filter](/en/portswigger/labs/ssrf/ssrf-with-blacklist-filter)                                     | <span className="dbadge dbadge-medium">PRACTITIONER</span> | SSRF (Server-Side Request Forgery) | [Open](https://portswigger.net/web-security/ssrf/lab-ssrf-with-blacklist-filter)                                    |
| [SSRF with filter bypass via open redirection vulnerability](/en/portswigger/labs/ssrf/ssrf-filter-bypass-via-open-redirection)    | <span className="dbadge dbadge-medium">PRACTITIONER</span> | SSRF (Server-Side Request Forgery) | [Open](https://portswigger.net/web-security/ssrf/lab-ssrf-filter-bypass-via-open-redirection)                       |

## TryHackMe rooms practicing Server-Side Request Forgery (4)

| Room                                                                   | Difficulty                                         | Type        | Access  | Official                                                 |
| ---------------------------------------------------------------------- | -------------------------------------------------- | ----------- | ------- | -------------------------------------------------------- |
| [Advent of Cyber 2023](/en/tryhackme/rooms/adventofcyber2023)          | <span className="dbadge dbadge-easy">EASY</span>   | Walkthrough | 🟢 Free | [Open](https://tryhackme.com/room/adventofcyber2023)     |
| [Intro to SSRF](/en/tryhackme/rooms/ssrfqi)                            | <span className="dbadge dbadge-easy">EASY</span>   | Walkthrough | 🔵 VIP  | [Open](https://tryhackme.com/room/ssrfqi)                |
| [Wordpress: CVE-2021-29447](/en/tryhackme/rooms/wordpresscve202129447) | <span className="dbadge dbadge-easy">EASY</span>   | Challenge   | 🟢 Free | [Open](https://tryhackme.com/room/wordpresscve202129447) |
| [SSRF](/en/tryhackme/rooms/ssrfhr)                                     | <span className="dbadge dbadge-easy">MEDIUM</span> | Walkthrough | 🟢 Free | [Open](https://tryhackme.com/room/ssrfhr)                |

## Related skills

* [/en/skills/xss](/en/skills/xss)
* [/en/skills/rce](/en/skills/rce)

***

← [Back to the full glossary](/en/glossary)

<script type="application/ld+json">
  {`{"@context":"https://schema.org","@type":"DefinedTerm","name":"Server-Side Request Forgery","termCode":"ssrf","inLanguage":"en","url":"https://rootea.es/en/skills/ssrf","inDefinedTermSet":{"@type":"DefinedTermSet","name":"Tactical pentesting glossary","url":"https://rootea.es/en/glossary"}}`}
</script>

<script type="application/ld+json">
  {`{"@context":"https://schema.org","@type":"ItemList","name":"HTB machines practicing Server-Side Request Forgery","numberOfItems":10,"itemListElement":[{"@type":"ListItem","position":1,"url":"https://rootea.es/en/htb/machines/linux/dificil/admirertoo","name":"AdmirerToo"},{"@type":"ListItem","position":2,"url":"https://rootea.es/en/htb/machines/linux/dificil/dab","name":"Dab"},{"@type":"ListItem","position":3,"url":"https://rootea.es/en/htb/machines/linux/medio/forge","name":"Forge"},{"@type":"ListItem","position":4,"url":"https://rootea.es/en/htb/machines/linux/insano/fulcrum","name":"Fulcrum"},{"@type":"ListItem","position":5,"url":"https://rootea.es/en/htb/machines/linux/medio/haircut","name":"Haircut"},{"@type":"ListItem","position":6,"url":"https://rootea.es/en/htb/machines/linux/dificil/kotarak","name":"Kotarak"},{"@type":"ListItem","position":7,"url":"https://rootea.es/en/htb/machines/windows/facil/love","name":"Love"},{"@type":"ListItem","position":8,"url":"https://rootea.es/en/htb/machines/windows/insano/minion","name":"Minion"},{"@type":"ListItem","position":9,"url":"https://rootea.es/en/htb/machines/linux/dificil/overgraph","name":"OverGraph"},{"@type":"ListItem","position":10,"url":"https://rootea.es/en/htb/machines/linux/medio/time","name":"Time"}]}`}
</script>

*Last updated: 2026-05-09*
