目录
应用场景说明¶
安全测试是指在计算机系统、网络、应用程序或其他信息系统中,对其安全性进行评估和验证的过程。它的主要目的是识别系统中的潜在漏洞和弱点,以及评估系统的防御能力。
安全测试有以下常用的几种工具:
- Burp Suite:Burp Suite是一款专业的Web应用程序安全测试工具。它具有功能强大的代理服务器,可以拦截、修改和重放HTTP请求。此外,它还提供了一系列的扫描器和漏洞利用工具,帮助发现和利用Web应用程序中的漏洞。
- Wireshark:Wireshark是一款流行的网络协议分析工具,用于捕获和分析网络流量。它可以解析各种协议,如HTTP、TCP、UDP等,并提供详细的数据包信息。安全测试人员可以使用Wireshark来检查网络通信中的潜在安全问题,如明文传输的敏感数据或异常的网络行为。
- OWASP Zap:OWASP Zap是一款开源的Web应用程序安全测试工具,用于发现和修复Web应用程序中的安全问题。它具有拦截和修改HTTP请求的功能,支持自动化的漏洞扫描,包括跨站脚本攻击、SQL注入、安全配置错误等。
- DVWA(Damn Vulnerable Web Application)是一个用于安全测试和漏洞挖掘的开源Web应用程序。它旨在提供一个模拟真实世界应用中常见漏洞的环境,以帮助安全专业人员学习和熟悉各种Web应用漏洞。
接下来将主要以 OWASP Zap 工具为主,进行安全测试的实战练习。
环境准备¶
DVWA 在线演练环境¶
- 在线演练环境地址:https://dvwa.ceshiren.com/login.php
- 用户名:admin
- 密码:password
安全测试设计¶
DVWA 在线安全测试¶
命令注入¶
什么是命令注入¶
命令注入(Command Injection)是一种常见的网络安全漏洞,它允许攻击者在受影响的应用程序中执行恶意命令。命令注入通常发生在用户输入的数据未经充分验证或过滤,直接传递给应用程序的命令执行函数时。
攻击者利用命令注入漏洞可以通过输入特定的恶意命令或命令片段来执行非法操作。这些命令可以包括系统命令、操作系统脚本、数据库查询语句等。一旦攻击成功,攻击者可以执行任意命令,可能导致以下风险:
- 执行任意系统命令。
- 获取敏感信息。
- 系统崩溃。
命令注入演示¶
-
正常的使用流程:
- 在输入框输入宠物商店的域名,点击submit:spring-petclinic-angular.poc.ceshiren.com。

-
可以从上图看到展示结果为已Ping通该域名。
-
命令注入操作:
-
在输入框输入
-c 1 ceshiren.com; cat index.php。 - 即可看到结果展示出来了DVWA网站的文件信息:

SQL 注入¶
什么是 SQL 注入¶
SQL注入(SQL Injection)是一种常见的网络安全漏洞,攻击者通过在应用程序的输入字段中注入恶意的SQL代码来利用该漏洞。SQL注入漏洞通常出现在未正确验证、过滤或转义用户输入的数据,并将其直接嵌入到SQL查询语句中的情况下。
攻击者利用SQL注入漏洞可以执行未经授权的数据库操作,如查询、插入、修改或删除数据。这可能导致以下风险:
- 数据泄露。
- 数据库破坏。
- 绕过认证。
SQL 注入演示¶
-
正常的使用流程:
-
输入要查询的UserID,比如1。
- 即可获取到对应的user信息。

-
SQL 注入的操作流程:
-
输入SQL注入的命令:
?id=a' UNION SELECT "text1","text2";-- -&Submit=Submit。 - 可以看到注入的SQL命令生效。
