掌握渗透测试,从Web漏洞靶场搭建开始

发表于:2023-8-17 09:13

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:XuPlus    来源:华为云开发者联盟

  渗透测试切忌纸上谈兵,学习渗透测试知识的过程中,我们通常需要一个包含漏洞的测试环境来进行训练。而在非授权情况下,对于网站进行渗透测试攻击,是触及法律法规的,所以我们常常需要自己搭建一个漏洞靶场,避免直接对公网非授权目标进行测试。
  漏洞靶场,不仅可以帮助我们锻炼渗透测试能力、可以帮助我们分析漏洞形成机理、更可以学习如何修复提高代码能力,同时也可以帮助我们检测各种各样漏洞扫描器的效果。
  本文将以 sectooladdict/wavsep:The Web Application Vulnerability Scanner Evaluation Project靶场为例来学习靶场搭建,结合漏洞扫描服务-华为云来发现存在的漏洞。
  靶场搭建
  我们找一台linux机器来进行实验
  > cat /etc/os-release -pNAME="Ubuntu"  
  VERSION="18.04.2 LTS (Bionic Beaver)"  
  ID=ubuntu  
  ID_LIKE=debian  
  PRETTY_NAME="Ubuntu 18.04.2 LTS"  
  VERSION_ID="18.04"  
  HOME_URL="https://www.ubuntu.com/"  
  SUPPORT_URL="https://help.ubuntu.com/"  
  BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"  
  PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"  
  VERSION_CODENAME=bionic  
  UBUNTU_CODENAME=bionic
  docker
  目前大部分靶场都有docker版本,我们利用docker来快速搭建靶场。docker安装可参考官网Install Docker Engine on Ubuntu| Docker Documentation安装手册,或者借助get.docker.com进行自动化安装
  root in szvphisprd13003
  > wget -qO- https://get.docker.com/ | bash
  安装完成后,还需要配置docker镜像源来加速镜像拉取时间。这里配置中科大(USTC)源来进行加速,在 /etc/docker/daemon.json中配置
  {
    "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
  }
  wavsep
  WAVSEP 是经典的漏洞靶场之一,包含常见的Web漏洞(SQL/XSS/PathTravseral/…),包含大量漏洞场景甚至假漏洞(检测扫描器误报率),目前漏洞有:
  ·Path Traversal/LFI: 816 test cases, implemented in 816 jsp pages(GET & POST)
  · Remote File Inclusion (XSS via RFI): 108 test cases, implementedin 108 jsp pages (GET & POST)
  · Reflected XSS: 66 test cases, implemented in 64 jsp pages (GET& POST)
  · Error Based SQL Injection: 80 test cases, implemented in 76 jsppages (GET & POST)
  · Blind SQL Injection: 46 test cases, implemented in 44 jsp pages(GET & POST)
  · Time Based SQL Injection: 10 test cases, implemented in 10 jsppages (GET & POST)
  · Unvalidated Redirect: 60 test cases, implemented in 60 jsp pages(GET & POST)
  · Old, Backup and Unreferenced Files: 184 test cases, implementedin 184 files (GET Only)
  · Passive Information Disclosure/Session Vulnerabilities(inspired/imported from ZAP-WAVE): 3 test cases of erroneous informationleakage, and 2 cases of improper authentication/information disclosure -implemented in 5 jsp pages
  · Experimental Test Cases (inspired/imported from ZAP-WAVE): 9additional RXSS test cases (anticsrf tokens, secret input vectors, tag signatures,etc), and 2 additional SQLi test cases (INSERT) - implemented in 11 jsp pages(GET & POST)
  使用docker安装wavsep:
  root in szvphisprd13003 in ~
  > docker search wavsep  
  ...
  owaspvwad/wavsep The Web Application Vulnerability Scanner E… 6  
  ...
  root in szvphisprd13003 in ~
  > docker pull owaspvwad/wavsep  
  ...
  root in szvphisprd13003 in ~
  > docker run -itd -p 8080:8080 owaspvwad/wavsep
  完成后访问 http://IP:8080/wavsep/ 即可。
  漏洞发现
  通过手工测试与扫描器来发现靶场中的问题。
  手工测试
  以文件包含漏洞为例,访问
  http://IP:8080/wavsep/active/LFI/LFI-Detection-Evaluation-GET-500Error/index.jsphttp://IP:8080/wavsep/active/LFI/LFI-Detection-Evaluation-GET-500Error/Case01-LFI-FileClass-FilenameContext-Unrestricted-OSPath-DefaultFullInput-AnyPathReq-Read.jsp?target=/root/apache-tomcat-8.0.27/webapps/wavsep/active/LFI/LFI-Detection-Evaluation-GET-500Error/content.ini
  手动修改 target 参数为 /etc/passwd 发现成功读取到 passwd 文件。
  华为云漏洞扫描
  1. 添加资产,配置域名认证
  # 查看wavsep容器id
  root in szvphisprd13003 in ~
  > docker ps
  02e9031d5b59 owaspvwad/wavsep "/bin/sh -c 'sh ~/..." 8 months ago Up 6 minutes  
  0.0.0.0:8080->8080/tcp
  # 查看web根目录
  root in szvphisprd13003 in ~
  > docker exec -it 02e9031d5b59 /bin/bash
  root@02e9031d5b59:/# cd ~/apache-tomcat-8.0.27/webapps/ROOT/
  root@02e9031d5b59:~/apache-tomcat-8.0.27/webapps/ROOT# echo d2NjX2NyeXB0ATQxNDU1MzVGNDM0MjQzOzMzMzAzNTM4MzUzMjM0NDUz  
  NDMzMzQ0MTM4NDMzMTMwNDI0MjMzNDIzMzQzMzE0MTM0MzAzMzMzNDMzNjM4MzQzOTQ1MzgzNjM4MzMzNjM2NDQ0NTM2MzczMjQyNDEzMjQ0MzMzMDMy  
  NDYzNDQ2MzU0NjMxMzEzMjM2MzYzOTM3NDUzNTM5NDI0MzM2NDUzNjQxNDEzNjMwMzYzNTMwMzk0NTM1MzAzMjM5NDQzNzQ0NDUzNDQyNDUzMzM1MzQ0  
  NDs7MzUzMDMwMzAzMDs4Q0NEMkJEOUVFNkIxOTlCQjk4Qjk1QTgzMUJBMEZBNDtDQTRDQjVENUM4RjI1N0ZDOzM3MzgzMzM0MzU2MTM1MzIyRDYyMzUz  
  NzY1MkQzNDY1MzEzNzJENjI2MzYzMzUyRDM2NjIzNzY1MzczMDY1MzMzNTM2MzAzMDs+d2NjX2NyeXB0ATQxNDU1MzVGNDM0MjQzOzM5MzI0NDMyMzk0  
  NTM2NDMzMjM3MzA0MjM1NDMzNjM5MzQ0NDQxMzkzMDM4MzU0MTMxMzczNTMxNDI0MzQyMzE0NjMzNDQzNDM0MzIzMzQ0MzkzNTM0MzkzODQzNDYzOTMw  
  MzEzNDQ2NDU0MzM0Mzk0NTQyMzgzOTQ2MzE0MzQ0OzszNTMwMzAzMDMwOzA4NDNFN0FEQzI3OUI0Q0QzNzA3RTNCN0YyMUM0RUIxO0MwODcyOTY0QjY0  
  ODk4MEM7MzczODMzMzQzNTYxMzUzMjJENjIzNTM3NjUyRDM0NjUzMTM3MkQ2MjYzNjMzNTJEMzY2MjM3NjUzNzMwNjUzMzM1MzYzMDMwOw+d2NjX2Nye  
  XB0ATQxNDU1MzVGNDM0MjQzOzM5NDM0NjMxMzQzNDMyNDU0NTM5MzUzODM4NDE0MzM4MzAzNjQ1MzIzNDQ2MzYzNTQzNDYzMzQ1NDEzNjM5MzA7OzM1M  
  zAzMDMwMzA7MjBGQzg0NThGODVFNUM4NUI5QzBCQzE2MDgxRENGRjk7N0QyNjgyMTMwN0U2M0JDODszNzM4MzMzNDM1NjEzNTMyMkQ2MjM1Mzc2NTJEM  
  zQ2NTMxMzcyRDYyNjM2MzM1MkQzNjYyMzc2NTM3MzA2NTMzMzUzNjMwMzA7+IP:8080 > hwwebscan_verify.html
  访问 http://IP:8080/hwwebscan_verify.html 确认认证文件能被访问,完成域名认证
  2. 开始扫描,在扫描信息配置处更改目标网址为
  http://IP:8080/wavsep/active/index-main.jsp
  目标网址不应填写 http://IP:8080/wavsep/ 由于此页面无任何 等网页连接爬虫无法爬取到新的页面 将扫描不到任何信息。
  3. 等待扫描结束 查看漏洞信息
  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号