Skip to content

Commit

Permalink
adding courseid
Browse files Browse the repository at this point in the history
  • Loading branch information
sorinboia committed Nov 2, 2023
1 parent 2e6f54b commit 95d35bb
Show file tree
Hide file tree
Showing 32 changed files with 762 additions and 347 deletions.
Binary file modified docs/__pycache__/custom_roles.cpython-36.pyc
Binary file not shown.
Binary file modified docs/_build/doctrees/class1/class1.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/class1/module1/lab1/lab1.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/class1/module1/lab2/lab2.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/class1/module1/module1.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/class1/module2/lab1/lab1.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/class1/module2/lab2/lab2.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/class1/module2/module2.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/environment.pickle
Binary file not shown.
Binary file modified docs/_build/doctrees/index.doctree
Binary file not shown.
2 changes: 1 addition & 1 deletion docs/_build/html/.buildinfo
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
config: 9d7eea553a69bfa9c62dffdeb6049de0
config: 04f9420b5acea2ea846996b5d45b2200
tags: 645f666f9bcd5a90fca523b33c5a78b7
9 changes: 1 addition & 8 deletions docs/_build/html/_sources/class1/class1.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,6 @@ Lab Maintainers:

|
The application used in the lab
-------------------------------

For this lab, we will use the **Arcadia Crypto** application.

This application is a modern application simulating a crypto trading platform app where you can buy and sell crypto currency.
Expand All @@ -25,10 +22,6 @@ The following components are used within the application:
* **Stocks Transaction** - Deal with all related to buying or selling crypto currencies. It interact with other microservices like Users and Stocks
* **Database** - Database were all information is stored


The lab architecture
--------------------

As you can notice in the chart below, the Arcadia Crypto application is running in our own datacenter, and is already available on internet.

During this class we will:
Expand Down Expand Up @@ -70,7 +63,7 @@ During this class we will:
var email = emailInput.value;
localStorage.setItem('email', email);
fetch(`https://f5xclabmgmt.vltr.nginx-experience.com/v1/student/${btoa(email)}`, {
fetch(`https://f5xclabmgmt.vltr.nginx-experience.com/v1/student/f5xcemeaworkshop/${btoa(email)}`, {
method: 'GET',
headers: {
'Content-Type': 'application/json'
Expand Down
79 changes: 39 additions & 40 deletions docs/_build/html/_sources/class1/module1/lab1/lab1.rst.txt
Original file line number Diff line number Diff line change
@@ -1,69 +1,68 @@
Lab 1 - Expose the application
#####################################

Create the networking objects
*****************************
##############################

For this lab, we will use the following configuration

1. Create the Origin Pool targeting Arcadia public app

a) Web App & API Protection -> Load Balancers -> Origin Pool -> Add Origin Pool -> Fill the bellow data

.. table:: Origin Pool
:widths: auto
.. table::
:widths: auto

============================== ========================================================================================
Object Value
============================== ========================================================================================
**Name** arcadia-public-endpoint

**Port** 443
============================== ========================================================================================
Object Value
============================== ========================================================================================
**Name** arcadia-public-endpoint
**Port** 443

**TLS** Enable
**TLS** Enable

**Origin Server Verification** Skip Verification
============================== ========================================================================================
**Origin Server Verification** Skip Verification
============================== ========================================================================================

b) In the same screen -> Origin Servers -> Add Item -> Fill the bellow data -> Apply -> Save and exit

.. table:: Origin Server
:widths: auto
.. table::
:widths: auto

==================== ========================================================================================
Object Value
==================== ========================================================================================
**DNS name** $$hostArcadia$$
==================== ========================================================================================
==================== ========================================================================================
Object Value
==================== ========================================================================================
**DNS name** $$hostArcadia$$
==================== ========================================================================================

.. raw:: html
.. raw:: html

<script>c1m1l2a();</script>
<script>c1m1l2a();</script>

2. Create the HTTP LB

Web App & API Protection -> Load Balancers -> HTTP Load Balancer -> Add HTTP Load Balancer
a) Web App & API Protection -> Load Balancers -> HTTP Load Balancer -> Add HTTP Load Balancer -> Fill the bellow data -> Save and exit

.. table::
:widths: auto

.. table:: Configuration
:widths: auto
==================================== =================================================================================================
Object Value
==================================== =================================================================================================
**Name** arcadia-re-lb

**Domains** arcadia-re-$$makeId$$.workshop.emea.f5se.com

==================================== ========================================================================================
Object Value
==================================== ========================================================================================
**Name** arcadia-re-lb

**Domain** arcadia-re-$$makeId$$.workshop.emea.f5se.com
**Load Balancer Type** HTTP

**Automatically Manage DNS Records** Enable

**Load Balancer Type** HTTP

**Automatically Manage DNS Records** Enable
==================================== ========================================================================================
**Origin Pools** Click **Add Item**, for the **Origin Pool** select $$namespace$$/arcadia-public-endpoint -> Apply
==================================== =================================================================================================

.. raw:: html
.. raw:: html

<script>c1m1l2b();</script>
<script>c1m1l2b();</script>

3. So far, Arcadia is not protected but exposed all over the world on all F5XC RE.
Check your Arcadia application is exposed and reachable from the F5XC Global Network by browsing to http://arcadia-re-$$makeId$$.workshop.emea.f5se.com
Check your Arcadia application is exposed and reachable from the F5XC Global Network by browsing to :ext_link:`http://arcadia-re-$$makeId$$.workshop.emea.f5se.com`

.. warning:: Some Service Providers have a very long recursive cache. It can take several minutes to get a DNS response. You can change your DNS server to 1.1.1.1 or 8.8.8.8 to fix that.
27 changes: 25 additions & 2 deletions docs/_build/html/_sources/class1/module1/lab2/lab2.rst.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,26 @@
Lab 2 - Visibility
######################################
Lab 2 - Testing and Visibility
##############################

In order to make sure all is working we will need to login into the application and look at the relevant dashboards.

1. Login into the app while using the **arcadia-re-lb** load balancer :ext_link:`http://arcadia-re-$$makeId$$.workshop.emea.f5se.com`

.. table::
:widths: auto

========================================== ========================================================================================
Object Value
========================================== ========================================================================================
**Username** [email protected]

**Password** bitcoin
========================================== ========================================================================================

2. Browse to Web App & API Protection -> Dashboards -> Performance Dashboard -> Under **Load Balancers** click **arcadia-re-lb**

a) Observe the different overall statistics provided by the **Dashboard** dashboard

b) Observe the requests and plethora of information that can be seen for each request provided by the **Requests** dashboard



4 changes: 4 additions & 0 deletions docs/_build/html/_sources/class1/module1/module1.rst.txt
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
#######################
Publish the application
#######################

In this section, we will expose an existing and public internet facing application through F5 XC Global Network.
This will first provide us with built in visibility for the application behaviour and the capability in the next steps to add security services.

.. image:: ./pictures/Slide1.png
:align: center


**Module 1 - All sections**

Expand Down
46 changes: 43 additions & 3 deletions docs/_build/html/_sources/class1/module2/lab1/lab1.rst.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,46 @@
Lab 1 - Protect your app with WAAP
##################################
Lab 1 - Waf config
##################


1. Create the **Web Application Firewall policy**

a) Web App & API Protection -> App Firewall -> Add App Firewall -> Fill the bellow data -> Save and Exit


.. table:: Waf Policy
:widths: auto

============================== ========================================================================================
Object Value
============================== ========================================================================================
**Name** arcadia-waf

**Enforcement Mode** blocking
============================== ========================================================================================


.. raw:: html

<script>c1m2l1a();</script>


2. Attach the **Web Application Firewall policy** to the **HTTP Load Balancer**

a) Web App & API Protection -> Load Balancers -> HTTP Load Balancer -> Click the 3 dots under the **arcadia-re-lb** row -> Manage Configuration -> Edit Configuration -> Fill the bellow data -> Save and Exit


.. table:: Attach WAF policy
:widths: auto

================================== ========================================================================================
Object Value
================================== ========================================================================================
**Web Application Firewall (WAF)** Enable

**Enable** $$namespace$$/arcadia-waf
================================== ========================================================================================

.. raw:: html

<script>c1m2l1b();</script>


48 changes: 10 additions & 38 deletions docs/_build/html/_sources/class1/module2/lab2/lab2.rst.txt
Original file line number Diff line number Diff line change
@@ -1,50 +1,22 @@
Lab 2 - Expose the public application
#####################################
Lab 2 - Testing and Visibility
##############################

Create the networking objects
*****************************
1. First lets try and attack out application with an **XSS attack** using the bellow URL. Th attack will be blocked and a **support ID** will be provided. Save the **support ID** as it will be used in the next step.

For this lab, we will use the following configuration

1. Create the Origin Pool targeting Arcadia public app
:ext_link:`http://arcadia-re-$$makeId$$.workshop.emea.f5se.com/?a=%3Cscript%3Ealert(%27xss%27)`

.. table:: Origin Pool Config
:widths: auto

==================== ========================================================================================
Object Value
==================== ========================================================================================
**Name** arcadia-public-endpoint

**Endpoint** arcadia.emea.f5se.com

**Port** 443
2. Let's look at the blocked attack

**TLS** Enable
a) Web App & API Protection -> Dashboards -> Security Dashboard -> Scrool down to the **Load Balancers** section and click on **arcadia-re-lb** -> Security Analytics

**TLS Verification** Disable
==================== ========================================================================================
Here you will me able to see all blocked attacks.

2. Create the HTTP LB
3. If you want to filter a specific request that has been blocked

.. table:: Configuration
:widths: auto
a) On the current page -> Add Filter -> Enter req_id -> In -> Enter the previous support ID -> In case nothing is shown click on the Refresh button

==================================== ========================================================================================
Object Value
==================================== ========================================================================================
**Name** arcadia-re-lb

**Domain** arcadia-re-$$makeId$$.workshop.emea.f5se.com
Click the down arrow and you will see all the request details and why it has been blocked

**Load Balancer Type** HTTP

**Automatically Manage DNS Records** Enable
==================================== ========================================================================================

|

3. So far, Arcadia is not protected but exposed all over the world on all F5XC RE.
Check your Arcadia application is exposed and reachable from the F5XC Global Network by browsing to http://arcadia-re-$$makeId$$.workshop.emea.f5se.com

.. warning:: Some Service Providers have a very long recursive cache. It can take several minutes to get a DNS response. You can change your DNS server to 1.1.1.1 or 8.8.8.8 to fix that.
20 changes: 4 additions & 16 deletions docs/_build/html/_sources/class1/module2/module2.rst.txt
Original file line number Diff line number Diff line change
@@ -1,20 +1,8 @@
Protect the appliction with Cloud WAAP
######################################
Web Application Firewall
##############################

In this section, we will expose an existing and public internet facing application through F5XC Global Network.

The use case is simple:

* An application is already up and running somewhere (Datacenter, public cloud ...)
* This application has a public IP address or FQDN
* We will euse and levrage the F5XC Global Network to expose this application
* The application will be available everywhere though all F5XC Regional Edge locations
* We will apply a WAAP policy

Today (May 2023), the worldwide POPs map is as below

.. image:: ./pictures/map.jpeg
:align: center
In this section, we will protect our application with best of breed F5 XC Web Application Firewall.
We will lear how to configure and investigate attacks.

**Module 2 - All sections**

Expand Down
4 changes: 3 additions & 1 deletion docs/_build/html/_sources/index.rst.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
F5 Distributed Cloud EMEA Workshop
==================================
##################################

Welcome
-------
Expand Down Expand Up @@ -44,4 +44,6 @@ It covers:
:caption: Contents:
:glob:

intro*/intro*
class*/class*

Loading

0 comments on commit 95d35bb

Please sign in to comment.