Skip to content
基于 Docker 的真实应用测试环境
Branch: master
Clone or download
Latest commit a987b94 Jul 18, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
socks5 修正默认端口 Oct 27, 2018
src
.gitignore Initial commit May 20, 2018
LICENSE Initial commit May 20, 2018
readme.md 调整readme Jul 4, 2019

readme.md

app-env-docker

基于 Docker 的真实应用测试环境。我们构建这个仓库是为了验证防护效果,并补充到 CVE 漏洞覆盖说明 里。和网上已有的 vulhubvulapps 相比,我们不同之处在于:

  1. 下载的资源存储在 https://packages.baidu.com/app/,国内下载快
  2. 完全基于 Dockerfile,执行 make 启动环境,可定制化强但是首次安装慢
  3. 专注 Web 漏洞,覆盖漏洞更多;可用于扫描器开发或者 OpenRASP 漏洞测试
  4. 使用改造过的 socks5 代理自动转发请求,比修改DNS方式安全

其他说明文档

使用方法

构建,并启动指定应用,e.g

make -C src/zzcms/8.2

启动后,会直接进入一个 bash shell,可以使用 curl 测试应用是否正常,e.g

[ubuntu-server: /share/docker]
# make -C src/seacms/6.45/
make: Entering directory '/share/docker/src/seacms/6.45'
docker build -t openrasp/seacms:6.45 .
Sending build context to Docker daemon 23.04 kB
Step 1/14 : FROM openrasp/php5.4
 ---> 0c8fc9d4a64a

-- 精简掉的内容 --

Step 14/14 : RUN chown mysql -R /var/lib/mysql
 ---> Running in 586aa2f25f15
 ---> 2bc8468709c0
Removing intermediate container 586aa2f25f15
Successfully built 2bc8468709c0
docker run --rm -it openrasp/seacms:6.45
[-] Starting Apache
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 172.17.0.2. Set the 'ServerName' directive globally to suppress this message
[-] Starting MariaDB
[-] Waiting for MySQL to start ...
[-] Accessing 127.0.0.1 for the first time
[-] Dropping shell
 -  HostName:    f615004ffa66
 -  IP address:  172.17.0.2

[OpenRASP] root@f615004ffa66:/var/www/html #

自动化代理方案

方案1 - nginx proxy_pass 方式

需要设置转发IP,适合每次只运行一个镜像的场景

server {
    listen 81;
    location / {
        proxy_set_header Host $http_host;
        proxy_pass http://172.17.0.2;
    }
}

方案2 - PAC + xip.io 自动化代理方案

具体请参考 socks5/readme.md

界面截屏如下

screen

You can’t perform that action at this time.