> For the complete documentation index, see [llms.txt](https://thmflags.gitbook.io/thm-walkthroughs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://thmflags.gitbook.io/thm-walkthroughs/difficulty-easy/owasp-top-10.md).

# OWASP Top 10

Learn about and exploit each of the   vulnerabilities; the 10 most critical web security risks.

{% embed url="<https://tryhackme.com/room/owasptop10>" %}
<https://tryhackme.com/room/owasptop10>
{% endembed %}

| Room Attributes       | Value                                                                  |
| --------------------- | ---------------------------------------------------------------------- |
| Subscription Required | <mark style="color:green;background-color:green;">False</mark> \[Free] |
| Type                  | Walkthrough                                                            |
| Difficulty            | <mark style="color:green;background-color:green;">Easy</mark>          |
| Tags                  | OWASP, Top 10, Injection, Broken Authentication                        |

## Task 1 Introduction

![OWASP Logo](https://i.imgur.com/QYg97jR.png)

This room breaks each category in the [OWASP Top 10 (2017)](https://owasp.org/www-project-top-ten/) project down and includes details on what the vulnerability is, how it occurs and how you can exploit it. You will put the theory into practise by completing supporting challenges.

* Injection
* Broken Authentication
* Sensitive Data Exposure
* XML External Entity
* Broken Access Control
* Security Misconfiguration
* Cross-site Scripting
* **I**nsecure Deserialization
* Components with Known Vulnerabilities
* Insufficent Logging & Monitoring

The room has been designed for beginners and assume no previous knowledge of security.

### Read the above.

{% hint style="success" %}
No answer needed
{% endhint %}

## Task 2 Accessing machines

### Connect to our network or deploy the AttackBox.

{% hint style="success" %}
No answer needed
{% endhint %}

## Task 3 <mark style="color:blue;background-color:blue;">\[Severity 1]</mark> Injection

### I've understood Injection attacks.

{% hint style="success" %}
No answer needed
{% endhint %}

## Task 4 <mark style="color:blue;background-color:blue;">\[Severity 1]</mark> OS Command Injection

### I've understood command injection.

{% hint style="success" %}
No answer needed
{% endhint %}

## Task 5 <mark style="color:blue;background-color:blue;">\[Severity 1]</mark> Command Injection Practical

{% content-ref url="/pages/jyLqZOwZI8tWQC7WYNrF" %}
[Task 5 - Command Injection Practical](/thm-walkthroughs/difficulty-easy/owasp-top-10/task-5-command-injection-practical.md)
{% endcontent-ref %}

## Task 6 <mark style="color:blue;background-color:blue;">\[Severity 2]</mark> Broken Authentication

### I've understood broken authentication mechanisms.

{% hint style="success" %}
No answer needed
{% endhint %}

## Task 7 <mark style="color:blue;background-color:blue;">\[Severity 2]</mark> Broken Authentication Practical

{% content-ref url="/pages/tyldCXob7xGHIuMBkRci" %}
[Task 7 - Broken Authentication Practical](/thm-walkthroughs/difficulty-easy/owasp-top-10/task-7-broken-authentication-practical.md)
{% endcontent-ref %}

## Task 8 <mark style="color:blue;background-color:blue;">\[Severity 3]</mark> Sensitive Data Exposure (Introduction)

### Read the introduction to Sensitive Data Exposure and deploy the machine.

{% hint style="success" %}
No answer needed
{% endhint %}

## Task 9 <mark style="color:blue;background-color:blue;">\[Severity 3]</mark> Sensitive Data Exposure (Supporting Material 1)

### Read and understand the supporting material on SQLite Databases.

{% hint style="success" %}
No answer needed
{% endhint %}

## Task 10 <mark style="color:blue;background-color:blue;">\[Severity 3]</mark> Sensitive Data Exposure (Supporting Material 2)

### Read the supporting material about cracking hashes.

{% hint style="success" %}
No answer needed
{% endhint %}

## Task 11 <mark style="color:blue;background-color:blue;">\[Severity 3]</mark> Sensitive Data Exposure (Challenge)

{% content-ref url="/pages/N57nACzDq8JeQ9zqRNpY" %}
[Task 11 - Sensitive Data Exposure (Challenge)](/thm-walkthroughs/difficulty-easy/owasp-top-10/task-11-sensitive-data-exposure-challenge.md)
{% endcontent-ref %}

## Task 12 <mark style="color:blue;background-color:blue;">\[Severity 4]</mark> XML External Entity

### Deploy the machine attached to the task.

{% hint style="success" %}
No answer needed
{% endhint %}

## Task 13 <mark style="color:blue;background-color:blue;">\[Severity 4]</mark> XML External Entity - eXtensible Markup Language

{% content-ref url="/pages/sYENReqzSvcrKiL9L8dU" %}
[Task 13 - XML External Entity - eXtensible Markup Language](/thm-walkthroughs/difficulty-easy/owasp-top-10/task-13-xml-external-entity-extensible-markup-language.md)
{% endcontent-ref %}

## Task 14 <mark style="color:blue;background-color:blue;">\[Severity 4]</mark> XML External Entity - DTD

{% content-ref url="/pages/1hdrQXIaUySDl4QUQvZC" %}
[Task 14 - XML External Entity - DTD](/thm-walkthroughs/difficulty-easy/owasp-top-10/task-14-xml-external-entity-dtd.md)
{% endcontent-ref %}

## Task 15 <mark style="color:blue;background-color:blue;">\[Severity 4]</mark> XML External Entity - XXE Payload

### Try the payload mentioned in description on the website.

{% hint style="success" %}
No answer needed
{% endhint %}

## Task 16 <mark style="color:blue;background-color:blue;">\[Severity 4]</mark> XML External Entity - Exploiting

{% content-ref url="/pages/52YXJVBvmPj3ACOZXJFb" %}
[Task 16 - XML External Entity - Exploiting](/thm-walkthroughs/difficulty-easy/owasp-top-10/task-16-xml-external-entity-exploiting.md)
{% endcontent-ref %}

## Task 17 <mark style="color:blue;background-color:blue;">\[Severity 5]</mark> Broken Access Control

### Read and understand how broken access control works.

{% hint style="success" %}
No answer needed
{% endhint %}

## Task 18 <mark style="color:blue;background-color:blue;">\[Severity 5]</mark> Broken Access Control (IDOR Challenge)

{% content-ref url="/pages/HiO9sS8I8nVkROGSu0ax" %}
[Task 18 - Broken Access Control (IDOR Challenge)](/thm-walkthroughs/difficulty-easy/owasp-top-10/task-18-broken-access-control-idor-challenge.md)
{% endcontent-ref %}

## Task 19 <mark style="color:blue;background-color:blue;">\[Severity 6]</mark> Security Misconfiguration

{% content-ref url="/pages/EwoKsYIE7DDTbbEJi4Og" %}
[Task 19 - Security Misconfiguration](/thm-walkthroughs/difficulty-easy/owasp-top-10/task-19-security-misconfiguration.md)
{% endcontent-ref %}

## Task 20 <mark style="color:blue;background-color:blue;">\[Severity 7]</mark> Cross-site Scripting

{% content-ref url="/pages/1waUttE5CVf2sHDm4zKk" %}
[Task 20 - Cross-site Scripting](/thm-walkthroughs/difficulty-easy/owasp-top-10/task-20-cross-site-scripting.md)
{% endcontent-ref %}

## Task 21 <mark style="color:blue;background-color:blue;">\[Severity 8]</mark> Insecure Deserialization

{% content-ref url="/pages/21UITx9lJ0pMiwZRb6uN" %}
[Task 21 - Insecure Deserialization](/thm-walkthroughs/difficulty-easy/owasp-top-10/task-21-insecure-deserialization.md)
{% endcontent-ref %}

## Task 22 <mark style="color:blue;background-color:blue;">\[Severity 8]</mark> Insecure Deserialization - Objects

### Select the correct term of the following statement *"if a dog was sleeping", would this be:* A) A State, B) A Behaviour&#x20;

<details>

<summary>Reveal Flag <span data-gb-custom-inline data-tag="emoji" data-code="1f6a9">🚩</span></summary>

:triangular\_flag\_on\_post:`A Behaviour`

</details>

## Task 23 <mark style="color:blue;background-color:blue;">\[Severity 8]</mark> Insecure Deserialization - Deserialization

### What is the name of the base-2 formatting that data is sent across a network as?

<details>

<summary>Reveal Flag <span data-gb-custom-inline data-tag="emoji" data-code="1f6a9">🚩</span></summary>

:triangular\_flag\_on\_post:`Binary`

</details>

## Task 24 <mark style="color:blue;background-color:blue;">\[Severity 8]</mark> Insecure Deserialization - Cookies

{% content-ref url="/pages/3dWBsaZIXswIbcg9aON1" %}
[Task 24 - Insecure Deserialization - Cookies](/thm-walkthroughs/difficulty-easy/owasp-top-10/task-24-insecure-deserialization-cookies.md)
{% endcontent-ref %}

## Task 25 <mark style="color:blue;background-color:blue;">\[Severity 8]</mark> Insecure Deserialization - Cookies Practical

{% content-ref url="/pages/7EVIWaRwCXCuJCLF0WAL" %}
[Task 25 - Insecure Deserialization - Cookies Practical](/thm-walkthroughs/difficulty-easy/owasp-top-10/task-25-insecure-deserialization-cookies-practical.md)
{% endcontent-ref %}

## Task 26 <mark style="color:blue;background-color:blue;">\[Severity 8]</mark> Insecure Deserialization - Code Execution

### flag.txt

<details>

<summary>Reveal Flag <span data-gb-custom-inline data-tag="emoji" data-code="1f6a9">🚩</span></summary>

:triangular\_flag\_on\_post:`4a69a7ff9fd68`

</details>

## Task 27 <mark style="color:blue;background-color:blue;">\[Severity 9]</mark> Components With Known Vulnerabilities - Intro

### Read above.

{% hint style="success" %}
No answer needed
{% endhint %}

## Task 28 <mark style="color:blue;background-color:blue;">\[Severity 9]</mark> Components With Known Vulnerabilities - Exploit

### Read the above!

{% hint style="success" %}
No answer needed
{% endhint %}

## Task 29 <mark style="color:blue;background-color:blue;">\[Severity 9]</mark> Components With Known Vulnerabilities - Lab

### How many characters are in /etc/passwd (use wc -c /etc/passwd to get the answer)

{% hint style="warning" %}
**HINT:** You know its a bookstore application, you should check for recent unauthenticated bookstore app rce's.
{% endhint %}

<details>

<summary>Reveal Flag <span data-gb-custom-inline data-tag="emoji" data-code="1f6a9">🚩</span></summary>

:triangular\_flag\_on\_post:`1611`

</details>

## Task 30 <mark style="color:blue;background-color:blue;">\[Severity 10]</mark> Insufficient Logging and Monitoring

{% content-ref url="/pages/CZ57cltqozEod4ZkTLxO" %}
[Task 30 - Insufficient Logging and Monitoring](/thm-walkthroughs/difficulty-easy/owasp-top-10/task-30-insufficient-logging-and-monitoring.md)
{% endcontent-ref %}

## Task 31 What Next?

Donate to the OWASP Foundation!

{% embed url="<https://owasp.org/donate/?reponame=owasp.github.io>" %}

### Read the above!

{% hint style="success" %}
No answer needed
{% endhint %}
