diff --git a/artifact/README.md b/artifact/README.md index 1002324e0..d4fb2af7e 100644 --- a/artifact/README.md +++ b/artifact/README.md @@ -1,9 +1,9 @@ -# Artifact Evaluation +# ๐Ÿ“œ Artifact Evaluation > [!NOTE] > All operations are performed in the root directory of the repository. -## (Step 1) Build +## ๐Ÿ› ๏ธ (Step 1) Build You should use the following command to build the base image, all evaluation is based on the image. @@ -11,15 +11,15 @@ You should use the following command to build the base image, all evaluation is docker compose up --build shadowbound ``` -## (Step 2) Basic Test +## ๐Ÿงช (Step 2) Basic Test -Our basic test include use the ShadowBound to compile nginx and run it, you can use the following command to achieve it. +Our basic test includes using ShadowBound to compile Nginx and run it. You can use the following command to achieve it: ```bash docker compose up --build nginx-eval ``` -After running the command, you can access the result at `eval/nginx/results/shadowbound.txt`, the results should be like this: +After running the command, you can access the result at `eval/nginx/results/shadowbound.txt`. The results should look like this: ``` Running 1m test @ http://localhost:80/index.html @@ -37,13 +37,12 @@ Requests/sec: 118955.36 Transfer/sec: 96.77MB ``` -### (Step 3) Integration Test +### ๐Ÿ”— (Step 3) Integration Test -To show ShadowBound can cooperate with other UAF defenses, we show how we use ShadowBound+FFMalloc and ShadowBound+MarkUS to compile nginx and run it. +To show ShadowBound can cooperate with other UAF defenses, we demonstrate how to use ShadowBound+FFMalloc and ShadowBound+MarkUS to compile Nginx and run it. > [!WARNING] -> You may encounter a `Segmentation fault` during the test. It is due to UAF defense issues, not ShadowBound. If this occurs, try running the test again. In our experience, such issues are relatively rare. - +> You may encounter a `Segmentation fault` during the test. This is due to UAF defense issues, not ShadowBound. If this occurs, try running the test again. In our experience, such issues are relatively rare. ```bash TARGET=shadowbound-ffmalloc docker compose up --build nginx-eval @@ -52,11 +51,11 @@ TARGET=shadowbound-markus docker compose up --build nginx-eval After running the command, you can access the result at `eval/nginx/results/shadowbound-ffmalloc.txt` and `eval/nginx/results/shadowbound-markus.txt`. -### (Step 4) Security Test +### ๐Ÿ” (Step 4) Security Test -In the evaluation, we show how ShadowBound can prevent real world vulnerabilities. You can choose use our pre-built image to run the test or you can also build the image by yourself. +In the evaluation, we demonstrate how ShadowBound can prevent real-world vulnerabilities. You can choose to use our pre-built image to run the test or build the image yourself. -#### Use Pre-built Image +#### ๐Ÿ–ผ๏ธ Use Pre-built Image ```bash docker pull dataisland/shadowbound-seceval:latest @@ -64,24 +63,23 @@ docker run -it dataisland/shadowbound-seceval /bin/bash /root/test.sh ``` -#### Build Image by Yourself +#### ๐Ÿ”จ Build Image by Yourself > [!WARNING] -> Please ensure that your network and machine is stable, the building process may take a long time and download a lot of data. +> Please ensure that your network and machine are stable. The building process may take a long time and download a lot of data. > If you encounter any problems, please use our pre-built image as a safe choice. -First you should build the image by this command: +First, build the image with this command: ```bash docker compose up --build sec-eval ``` -Then you can enter the container, build all the test cases and run them. +Then, enter the container, build all the test cases, and run them: ```bash docker run -it sec-eval /bin/bash /root/build.sh && /root/test.sh ``` - -### (Step 5) Performance Test +### โšก (Step 5) Performance Test