Repository navigation
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
60 lines (54 loc) · 2.13 KB
/
Copy pathdocker-compose.yml
File metadata and controls
60 lines (54 loc) · 2.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
version: "3.8"
# ⚠️ FOR LOCAL TESTING ONLY
# These services are intentionally insecure/misconfigured so that the NSE
# scripts in this repository have real targets to detect issues against.
# Never expose these ports to the public internet or run this on a shared network.
services:
# ---------------------------------------------------------------------
# HTTP target — plain Nginx with no security headers, no HTTPS.
# Used to test: HTTP/http-security-headers, HTTP/http-cookie-flags,
# HTTP/http-cors-config, HTTP/http-methods-enum, HTTP/http-server-fingerprint,
# HTTP/http-dir-listing, HTTP/http-trace-method, etc.
# ---------------------------------------------------------------------
http-target:
image: nginx:1.25-alpine
container_name: nse-test-http
ports:
- "8080:80"
volumes:
- ./test-fixtures/http/index.html:/usr/share/nginx/html/index.html:ro
restart: unless-stopped
# ---------------------------------------------------------------------
# FTP target — anonymous login enabled, no TLS.
# Used to test: FTP/ftp-anonymous-login, FTP/ftp-banner-grab,
# FTP/ftp-cleartext-enforcement, FTP/ftp-passive-mode-check, FTP/ftp-tls-support,
# FTP/ftp-writable-dirs, etc.
# ---------------------------------------------------------------------
ftp-target:
image: fauria/vsftpd
container_name: nse-test-ftp
ports:
- "2121:21"
- "21100-21110:21100-21110"
environment:
FTP_USER: testuser
FTP_PASS: testpass
PASV_ADDRESS: 127.0.0.1
PASV_MIN_PORT: 21100
PASV_MAX_PORT: 21110
restart: unless-stopped
# ---------------------------------------------------------------------
# Redis target — no authentication (default insecure config).
# Used to test: DATABASE/redis-unauthenticated-access,
# DATABASE/redis-admin-command-exposure.
# ---------------------------------------------------------------------
redis-target:
image: redis:7-alpine
container_name: nse-test-redis
ports:
- "6380:6379"
command: redis-server --protected-mode no
restart: unless-stopped
networks:
default:
name: nse-test-network