前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >自定义AWVS的Docker镜像

自定义AWVS的Docker镜像

原创
作者头像
小生观察室
发布2022-02-16 22:37:38
1.9K0
发布2022-02-16 22:37:38
举报
文章被收录于专栏:小生观察室小生观察室

前言

(1)之前发布了AWVS14批量漏洞扫描Docker篇,看到后台很多小伙伴留言问是如何搭建的,故而有此文做个记录

(2)网上几乎千篇一律的pull他人的容器进行使用或无详细的制作过程,一般只有头和最后的结果却忽略了中间存在的一些坑

(3)也发现很多Docker镜像存在各种后门及挖矿程序,所以建议自定义镜像

AWVS简介

AWVS是Acunetix Web Vulnerability Scanner的缩写。

它是一个自动化的Web应用程序安全测试工具,审计检查漏洞。

它可以扫描任何可通过Web浏览器访问的和遵循HTTP/HTTPS规则的Web站点和Web应用程序。

可以通过检查SQL注入攻击漏洞、跨站脚本攻击漏洞等来审核Web应用程序的安全性。

AWVS功能介绍

WebScanner:全站扫描,Web安全漏洞扫描

Site Crawler:爬虫功能,遍历站点目录结构

Target Finder:端口扫描,找出web服务器 Subdomain Scanner:子域名扫描器,利用DNS查询

Blind SQL Injector:盲注工具

HTTP Editor:http协议数据包编辑器

HTTP Sniffer:HTTP协议嗅探器

HTTP Fuzzer:模糊测试工具

Authentication Tester:Web认证破解工具

Web Srevice Scanner:Web服务扫描器

Web Srevice Editor:Web服务编辑器

docker build 构建镜像

新建项目

  • Ubuntu环境
  • 简易的Dockerfile环境

在任意目录下执行以下语句

代码语言:javascript
复制
mkdir ubuntu && cd ubuntu
vim Dockerfile

Dockerfile里面的内容为:

代码语言:javascript
复制
FROM ubuntu:18.04
RUN apt-get update && apt-get install -y

构建镜像

代码语言:javascript
复制
docker?build?-t?xsgcs/awvs14:220117111?.

执行后会生成出现镜像内容

代码语言:javascript
复制
REPOSITORY?????TAG?????????IMAGE?ID???????CREATED??????????????SIZE
xsgcs/awvs14???220117111???eb348505474e???About?a?minute?ago???102MB
ubuntu?????????18.04???????dcf4d4bef137???7?days?ago???????????63.2MB

运行容器

代码语言:javascript
复制
docker?run?-it?-d?-p?8088:3443?eb348505474e

进入容器

代码语言:javascript
复制
docker?exec?-it?8d6e162ff38f?/bin/bash

宿主机复制文件至容器

代码语言:javascript
复制
docker?cp?/var/local/ubuntu/acunetix_14.6.211220100_x64.sh?8d6e162ff38f:/var/local/
docker?cp?/var/local/ubuntu/awvs_crack/?8d6e162ff38f:/var/local/

容器复制文件至宿主机

代码语言:javascript
复制
docker?cp?d6e162ff38f:/var/local/?/var/local/xsgcs/

部署AWVS

环境依赖安装

代码语言:javascript
复制
apt-get?update

apt?install?libxshmfence-dev?libxdamage1?libgtk-3-0?libasound2?libnss3?libxss1?libx11-xcb-dev?libgbm-dev?sudo?systemd?net-tools?libx11-xcb1?libxcb-dri3-0?libgbm1?libdrm2?libxshmfence1?vim?-y

安装AWVS14

安装包及破解文件已打包在容器里面,对应路径为:/var/local/

等待环境依赖安装完成之后,执行acunetix_14.6.211220100_x64.sh脚本,并选择Enter进入下一步

代码语言:javascript
复制
root@10a035ad6a67:/var/local#?./acunetix_14.6.211220100_x64.sh

Acunetix?Installer?Version:?v_211220100,?Copyright?(c)?Acunetix
------------------------------------------------------------

Checking?os...
Checking?for?dependencies...
Please?read?the?following?License?Agreement.?You?must?accept?the?terms?of?this
agreement?before?continuing?with?the?installation.
press?ENTER?to?continue
>>>

输入yes表示同意

代码语言:javascript
复制
Last?modified?March?4,?2021.

Accept?the?license?terms??[yes|no]
[no]?>>>?yes

自定义主机名、邮箱地址、密码并自动开始安装

代码语言:javascript
复制
Configuring?acunetix?user...
????Creating?user?acunetix.

By?default?the?Acunetix?will?be?installed?to?/home/acunetix/.acunetix

Checking?database?port...
Checking?backend?port...

Configuring?hostname...
Insert?new?hostname,?or?leave?blank?to?use?2a06bd213923
????Hostname?[2a06bd213923]:xsgcs

Configuring?the?master?user...
????Email:?xsgcs@xsgcs.com
????Password:Xsgcs.com
????Password?again:Xsgcs.com

Initializing?file?system...

Extracting?files?to?/home/acunetix/.acunetix....

稍等几分钟就可以安装完毕,安装结束后其实服务并没有正常启动(会自动退出),这里跟Windows下安装有一些区别

默认情况下并没有启动AWVS需切换成acunetix账户进行重新启动

在linux下安装AWVS会创建acunetix账户来管理AWVS

执行以下语句进行启动

代码语言:javascript
复制
su?acunetix
cd?/home/acunetix/.acunetix
./start.sh

再使用Ctrl+P+Q退出容器而不停止运行里面的内容

访问https://服务器IP:8088,输入账户xsgcs@xsgcs.com、密码Xsgcs.com即可登录

默认安装好后是处于未破解的情况,接下来我们进行破解使用

破解AWVS

安装包及破解文件已打包在容器里面,对应路径为:/var/local/

将容器里/var/local/awvs_crack文件夹中对应的license_info.jsonwa_data.dat文件覆盖至/home/acunetix/.acunetix/data/license/

推荐将license_info.jsonwa_data.dat文件设置为只读权限

代码语言:javascript
复制
cp?/var/local/awvs_crack/license_info.json?/home/acunetix/.acunetix/data/license/
cp?/var/local/awvs_crack/wa_data.dat?/home/acunetix/.acunetix/data/license/
chmod?444?/home/acunetix/.acunetix/data/license/license_info.json
chmod?444?/home/acunetix/.acunetix/data/license/wa_data.dat
chown?root:acunetix?/home/acunetix/.acunetix/data/license/license_info.json
chown?acunetix:acunetix?/home/acunetix/.acunetix/data/license/wa_data.dat

修改/etc/hosts文件并添加如下内容并保存

代码语言:javascript
复制
echo?127.0.0.1?updates.acunetix.com?>>?/etc/hosts
echo?127.0.0.1?erp.acunetix.com?>>?/etc/hosts

重新刷新页面即可

打包并上传至Docker Hub

将容器打包成镜像

代码语言:javascript
复制
docker?commit?e52e307bbf0a?xsgcs:awvs14v2112201000

登录Docker Hub

代码语言:javascript
复制
docker?login

设置镜像标签并上传至Docker Hub

代码语言:javascript
复制
docker?tag?xsgcs:awvs14v2112201000?xsgcs/awvs14:2112201000
docker?push?xsgcs/awvs14:2112201000

其他说明

  • 错误异常1
代码语言:javascript
复制
error?parsing?HTTP?408?response?body:?invalid?character?'<'?looking?for?beginning?of?value:?"<html><body><h1>408?Request?Time-out</h1>\nYour?browser?didn't?send?a?complete?request?in?time.\n</body></html>\n\n"

解决方式

代码语言:javascript
复制
ifconfig?eth0?mtu?900
  • 错误异常2
代码语言:javascript
复制
Error?response?from?daemon:?conflict:?unable?to?delete?009c92684e05?(must?be?forced)?-?image?is?referenced?in?multiple?repositories

解决方式

代码语言:javascript
复制
docker?rmi?xsgcs:awvs14v211220100
  • 错误异常3

容器重启后AWVS没有自动重启运行,可手动执行容器里面的/var/local/awvs.sh脚本

脚本内容为:

代码语言:javascript
复制
#!/bin/bash
echo?'127.0.0.1?updates.acunetix.com'?>>?/etc/hosts
echo?'127.0.0.1?erp.acunetix.com'?>>?/etc/hosts
su?-l?acunetix?-c?"/home/acunetix/.acunetix/start.sh";

或在run容器时添加bash命令

完整运行命令如下

代码语言:javascript
复制
docker?run?-it?-d?-p?8088:3443?xsgcs/awvs14:211220100?/bin/bash?/var/local/xsgcs.sh

现成镜像

如感觉以上搭建起来比较麻烦或不想自己搭建的也可以用小生观察室已搭建好的纯净镜像一键启动即可使用

已打包好的镜像

代码语言:javascript
复制
docker?pull?xsgcs/awvs14_crack_211220100:211220100

docker?run?-it?-d?-p?8088:3443?xsgcs/awvs14_crack_211220100:211220100?/bin/bash?/var/local/xsgcs.sh

访问?https://YOUR_IP:8088/

账户:xsgcs@xsgcs.com 
密码:Xsgcs.com

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
作者已关闭评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • AWVS简介
    • AWVS功能介绍
    • docker build 构建镜像
      • 新建项目
        • 构建镜像
          • 宿主机复制文件至容器
            • 容器复制文件至宿主机
            • 部署AWVS
              • 环境依赖安装
                • 安装AWVS14
                • 破解AWVS
                • 打包并上传至Docker Hub
                • 其他说明
                • 现成镜像
                相关产品与服务
                容器镜像服务
                容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
                http://www.vxiaotou.com