From da98e550798cdcf037f74888b42d830f2b1b5b69 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=B0smail=20=C3=87A=C4=9EDA=C5=9E?= Date: Mon, 1 Nov 2021 15:51:17 +0300 Subject: [PATCH] documentation for https://github.com/aspnetzero/aspnet-zero-core/issues/4040 --- docs/en/Security-Test-Angular.md | 93 ++++++++++++++++++ .../images/owas-zap-load-context-angular.png | Bin 0 -> 15222 bytes .../owas-zap-load-script-angular-props.png | Bin 0 -> 39780 bytes .../images/owas-zap-load-script-angular.png | Bin 0 -> 18604 bytes docs/en/nav-aspnet-core-angular.json | 4 +- docs/en/nav-aspnet-core-mvc.json | 2 +- 6 files changed, 96 insertions(+), 3 deletions(-) create mode 100644 docs/en/Security-Test-Angular.md create mode 100644 docs/en/images/owas-zap-load-context-angular.png create mode 100644 docs/en/images/owas-zap-load-script-angular-props.png create mode 100644 docs/en/images/owas-zap-load-script-angular.png diff --git a/docs/en/Security-Test-Angular.md b/docs/en/Security-Test-Angular.md new file mode 100644 index 00000000..8be50874 --- /dev/null +++ b/docs/en/Security-Test-Angular.md @@ -0,0 +1,93 @@ +# Security Test with OWASP ZAP + +Security is an important aspect for software applications. ASP.NET Zero includes ready to use files for testing the security of its web application using [OWASP ZAP](https://www.zaproxy.org/) Tool. + +To test the web application, you need to install following tools; + +* [Docker](https://www.docker.com/) +* [Helm](https://helm.sh/) +* [Owasp ZAP Tool](https://www.zaproxy.org/) + +After installing the Docker, be sure that you enabled the Kubernetes on Docker by following [https://docs.docker.com/desktop/kubernetes/](https://docs.docker.com/desktop/kubernetes/). + +## Deploying App to Kubernetes + +The security test will be runned on an instance of the app which works in Kubernetes. To run our application on Kubernetes, ASP.NET Zero includes Helm charts out of the box. To run our web application on Kubernetes, we must create 3 Docker images. + +To do that, go to folder which contains *.Web.Host.sln file and execute the command below (Don't forget to replace MyCompanyName.AbpZeroTemplate with your project name); + +```bash +docker build -t abpzerotemplate-host -f src\MyCompanyName.AbpZeroTemplate.Web.Host\Dockerfile . +``` + +This command will create a Docker image for the Host API application. Our application also needs to connect to a database. We will be using the *.Migrator project to create and seed our app's database. So, we need to create a docker image for our Migrator app as well. To do that, run the command below in the same directory (Don't forget to replace MyCompanyName.AbpZeroTemplate with your project name); + +```bash +docker build -t abpzerotemplate-migrator -f src\MyCompanyName.AbpZeroTemplate.Migrator\Dockerfile . +``` + +We will not run a security test on the client side Angular application, we will only run security test on API application but our Helm chart includes the Angular app as well. Because of that, we need to create an image for the Angular app as well. To do that, first publish your Angular app using the command below; + +```` +npm run publish-k8s +```` + +When the publish is completed, run the following command in the ```angular``` folder of your project; + +```` +docker build -t abpzerotemplate-angular -f Dockerfile . +```` + +Now, we have all Docker images we need to run our application. + +Open a command prompt and go to "aspnet-core\etc\k8s\helm-chart" under your project directory and execute the Helm command below; + +``` +helm upgrade --install anz abpzerotemplate-angular +``` + +This command will create 4 pods on Kubernetes, 1 for SQL Server, 1 for Host API application, 1 for Angular application and 1 for the migrator app. The default Helm chart uses SQL Server but you can change it if your app uses a different database provider. + +To access your app from your local computer, go to your Host file and add the entry below. You can use a different URL if you wish but don't forget to use that URL in the following steps. + +```bash +127.0.0.1 abpzerotemplate-host-www +127.0.0.1 abpzerotemplate-angular-www +``` + +If you are not using Windows OS, you need to do the same for your OS. + +Now, if you go to a browser and type [https://abpzerotemplate-host-www/swagger](https://abpzerotemplate-host-www/swagger), you can visit the Host API application. You can visit the Angular app on [https://abpzerotemplate-angular-www](https://abpzerotemplate-angular-www). + +## Preparing ZAP for Testing + +Open the OWASP ZAP application and load the script from "aspnet-core\etc\owasp\abpzerotemplate-angular\abpzerotemplate-angular-http-sender-script.js" by clicking the scripts area and then load icon as shown below; + +Load Zest Script + +When the script load window appears, select the properties as shown below; + +Load Zest Script Properties + +This script will be used to automatically add "authorization" header to each request. The script itself contains "ACCESS_TOKEN_HERE" placeholder for the token value. So, you need to go to [https://abpzerotemplate-host-www/swagger/](https://abpzerotemplate-host-www/swagger/) endpoint and get a token from "TokenAuth/Authenticate" endpoint and replace this placeholder. + +Don't forget to enable the HTTP Sender script after importing it. Otherwise, OWASP ZAP can't make authorized requests to your API endpoints. + +Load OWASP Context + + + + + +## Include OpenAPI Definitions + +OWASP ZAP can import OpenAPI definition from an OpenAPI json file. To do that, select "Import > Import an OpenAPI definition from a URL" and enter "https://abpzerotemplate-host-www/swagger/v1/swagger.json" as Definition and "https://abpzerotemplate-host-www" as the URL. + +## Testing the App + +Finally, we can start testing the app. To do that, right click on the your site and Click Attack > Active Scan and select the context we imported before and click "Start Scan" button. + +### Report + +The test process might take a long time depending on the API endpoint count. When the test finishes, you can go to Report menu on ZAP Tool and generate a report as you wish. + diff --git a/docs/en/images/owas-zap-load-context-angular.png b/docs/en/images/owas-zap-load-context-angular.png new file mode 100644 index 0000000000000000000000000000000000000000..4f180d0243ddffcc890066ef7762af3df5b0335a GIT binary patch literal 15222 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 literal 0 HcmV?d00001 diff --git a/docs/en/images/owas-zap-load-script-angular-props.png b/docs/en/images/owas-zap-load-script-angular-props.png new file mode 100644 index 0000000000000000000000000000000000000000..d1024976d78d2a7ead02c7e69dd96a0d2e2919bc GIT binary patch literal 39780 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 kup>}?dzj~KlcW!Sz7uh$!#F1#-(Nl+mp1k