You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The go-test-bench application includes vulnerabilities from the OWASP Top
13
16
10 and is intended to be used as an educational tool for developers and
14
-
security professionals. Any maintainers are welcome to make pull requests.
17
+
security professionals. PRs welcome!
15
18
16
19
> For customer demonstrations [click here to follow the Demo.md readme](./Demo.md).
17
20
@@ -23,15 +26,19 @@ security professionals. Any maintainers are welcome to make pull requests.
23
26
24
27
## How to Run Locally
25
28
26
-
*standard library
29
+
To run with the standard library,
27
30
```bash
28
31
go build -o app ./cmd/std
29
32
./app
30
33
```
31
34
32
-
To run with gin instead, substitute `gin` for `std` in the build command; likewise for `go-swagger` and `julienschmidt`.
35
+
To run with gin instead, substitute `gin` for `std` in the build command,
36
+
and likewise for `chi`, `go-swagger`, or `julienschmidt`.
33
37
34
-
View app at [http://localhost:8080](http://localhost:8080)
38
+
The app can be viewed in your browser at [http://localhost:8080](http://localhost:8080)
39
+
40
+
Note that the app loads resources from subdirs, so you _will_ need to run from
41
+
the dir this README.md is in.
35
42
36
43
## How to Run Using Docker
37
44
@@ -62,14 +69,19 @@ The development [team](docs/acknowledgements.md).
62
69
* exception: vulnerable functions from a particular framework (see below)
63
70
* framework-specific code is located under `cmd/` and `pkg/`
64
71
* html templates and css are under `views/`
65
-
* vulnerability and route data is in go structs,
72
+
* vulnerability and route data is in go structs,
66
73
located in the relevant package under `internal/`
67
74
68
75
### quirks
69
76
70
-
Each framework is different. We've tried to separate framework logic from vulnerability logic so that adding a framework necessitates a minimum of changes to vulnerability logic, and vice versa.
77
+
Each framework is different. We've tried to separate framework logic from
78
+
vulnerability logic so that adding a framework necessitates a minimum of
79
+
changes to vulnerability logic, and vice versa.
71
80
72
81
#### swagger
73
-
Swagger is a bit unique, in that it has a lot of generated code and requires a swagger spec. To maintain a single source of truth, we generate the swagger spec from our route data. We also generate boilerplate tying a route handler to each swagger endpoint.
82
+
Swagger is a bit unique, in that it has a lot of generated code and requires a
83
+
swagger spec. To maintain a single source of truth, we generate the swagger
84
+
spec from our route data. We also generate boilerplate tying a route handler to
85
+
each swagger endpoint.
74
86
75
87
For details, see [cmd/go-swagger/README.md](cmd/go-swagger/README.md)
0 commit comments