经典赛题-Web渗透测试记录

本文介绍了渗透测试的基本概念、类型以及主要阶段,包括信息收集、枚举、漏洞评估与分析、漏洞利用和报告。详细阐述了白盒、黑盒和灰盒测试的区别,并列举了常用工具如Nmap、w3af、sqlmap等。此外,通过一系列具体操作,如使用w3af进行审计、漏洞利用和SQL注入测试,展示了Web渗透测试的过程。
摘要由CSDN通过智能技术生成

经典赛题-Web渗透测试

一、什么是渗透测试
渗透测试(penetration testing)是对计算机系统的一种授权攻击,旨在评估系统/网络的安全性,执行测试以识别漏洞及其带来的风险。一般而言,渗透测试过程分为五个阶段:包括识别目标系统、检测存在的漏洞以及每个漏洞的可利用性。渗透测试的目标是找到尽可能多的漏洞,并交付客户可以接受的通用格式报告。

二、渗透测试类型
白盒(white box):在白盒测试中,被测试者一般会提供给测试方目标系统、网络、应用等全部细节(包括账号、密码、SSH/Telnet登录信息、架构、网络结构、源代码… …等等)。

黑盒(black box):模拟攻击者场景的测试。充当真实的攻击者视角,没有目标系统的相关信息(白盒测试描述),该测试最大特点是测试者会更加注重于渗透测试的第一阶段——信息收集。收集到的信息越多,后期测试的效果就越好。

灰盒(gray box):介于黑白盒测试之间,在典型的灰盒测试中,测试员会提前得知相关的目标系统、应用程序、网络信息… …等等。这种测试通常适用于有时限要求的组织,被测者提供有效信息,测试者可以集中于风险更大的系统上,节省前期的信息收集时间。

三、渗透测试阶段
根据Harpreet Singh、Himanshu Sharma等人的专业描述,渗透过程可以分为以下各个阶段:

阶段1: 信息收集与侦查

阶段2:枚举

阶段3:漏洞评估与分析

阶段4:漏洞利用(包括再渗透)

阶段5:报告

1. 信息收集与侦查
这是黑盒测试最关键的阶段,渗透测试人员将尝试识别相关系统或应用程序,并尽可能多地收集信息。常用的Web渗透测试工具:

类型    工具
端口扫描    Amap 、Nmap
DNS/子域名识别    dnsenum、dnsmap、dnswalk、Fierce、dnscan、Sublist3r
技术识别    BlindElephant、Wappalyzer、WhatWeb
内容管理系统识别    WPScan、Joomscan、CMScan、Drupscan
ps:后期会出一期详细工具使用教程,敬请期待。

2. 枚举
测试人员将扫描在上一阶段中识别的每个应用、系统或网络,以查找不同的攻击面。在该阶段中,重点枚举出web应用的文件、目录、网络设备、端口以及服务等等,进而帮助测试人员识别可能的攻击切入点(攻击媒介)。这些切入点通常是测试人员获取目标系统的访问权限、入侵系统路径的重要方法。常有的媒介有:钓鱼邮件、尚未修补的漏洞等等。手工枚举过程繁琐,所以常借助一些工具来完成。

类型    工具名称
文件/目录    Dirsearch、dirb、dirbuster、Metasploit框架、BurpSuite、gobuster
HTTP协议    Nmap、BurpSuite、Metasploit框架(MSF)、wfuzz
ps:后期会出一期详细工具使用教程,敬请期待。

3. 漏洞评估与分析
在确定攻击媒介之后,接下来就是漏洞扫描,对web漏洞进行分析与评估,常用的扫描分析工具有:

类型    名称
系统与网络    Nexpose、Nessus、OpenVAS
web应用    AppSpider、Nikto、Acunetix、BurpSuite、Nessus
ps:后期会出一期详细工具使用教程,敬请期待。

4. 漏洞利用
该阶段主要是为了证明前一步骤发现的漏洞是否能被真正利用,通常可以借助Metasploit Framework和Canvas自动进行漏洞利用。

5. 报告
该步骤将汇总在目标中发现的每个漏洞。进一步地,根据通用漏洞评分系统CVSS定义的严重性级别列出。(CVSS是一个用于漏洞评估的开放的标准)



 

第一步,打开网络拓扑,启动实验虚拟机,分别查看虚拟机IP地址:

Kali Linux

Linux

1.通过渗透机Kali Linux对靶机Linux进行Web渗透测试(使用工具w3af的对目标Web服务器进行审计),在w3af的命令行界面下,使用命令列出所有用于审计的插件,将该操作使用的命令作为Flag值提交;

进入Kali Linux命令控制台中使用命令w3af_console进入w3af命令行模式,通过输入命令“plugins”对插件进行配置,再使用命令list audit即可列出所有审计模块

Flag:list audit

2.通过渗透机Kali Linux对靶机Linux进行Web渗透测试,使用工具w3af对Web服务器进行审计,在w3af的命令行界面下加载爬行模块来搜集phpinfo信息及蜘蛛爬行数据,将该操作使用的命令作为Flag值提交;

使用命令crawl phpinfo web_spider加载爬行模块

Flag:crawl phpinfo web_spider

3.通过渗透机Kali Linux对靶机Linux进行Web渗透测试,使用工具w3af对Web服务器进行审计,在w3af的命令行界面下启用审计插件:sql盲注、命令注入及sql注入来测试服务器网站的安全性,并将该操作使用的命令作为Flag值提交;

使用命令audit blind_sqli os_commanding sqli调用sql盲注、命令注入及sql注入模块

Flag:audit blind_sqli os_commanding sqli

4.通过渗透机Kali Linux对靶机Linux进行Web渗透测试,使用工具w3af对Web服务器进行审计,在w3af的命令行界面下设置目标服务器地址启动扫描,将该操作使用命令中固定不变的字符串作为Flag值提交;

使用命令“back”回到初始菜单,然后使用命令target进入目标ip配置界面,设置目标ip

Flag:set target

5.在渗透机Kali Linux中对审计结果进行查看,将审计结果中含有漏洞的URL地址作为Flag值(提交答案时IP用192.168.80.1代替,例如http://192.168.80.1/login.php)提交;

返回w3af控制台初始菜单,使用命令start开始检测

根据回显结果,发现http://172.16.1.200/checklogin.php页面存在SQL 注入漏洞

Flag:http://192.168.80.1/checklogin.php

6.在第5题的基础上,进入exploit模式,加载sqlmap模块对网站进行SQL注入测试,将载入sqlmap模块对网站进行SQL注入测试需要使用的命令作为Flag值提交;

使用命令exploit进入利用模块,然后调用sqlmap模块对网站注入

Flag:exploit sqlmap

7.通过渗透机Kali Linux对靶机Linux进行SQL注入测试,将数据库最后一个库的库名作为Flag值提交;

根据回显结果,使用命令“interace 0”激活shell会话

输入命令dbs导出目标靶机数据库中的所有库名

Flag:mysql

8.通过渗透机Kali Linux对靶机Linux进行SQL注入测试,将数据库表单中root用户的密码作为Flag值提交。

输入命令dump导出目标靶机数据库中的表单内容

Flag:v5a4r8e2w5u9

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

旺仔Sec

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值