Skip to content

测试设计

安全测试设计

DVWA 在线安全测试

命令注入

什么是命令注入

命令注入(Command Injection)是一种常见的网络安全漏洞,它允许攻击者在受影响的应用程序中执行恶意命令。命令注入通常发生在用户输入的数据未经充分验证或过滤,直接传递给应用程序的命令执行函数时。

攻击者利用命令注入漏洞可以通过输入特定的恶意命令或命令片段来执行非法操作。这些命令可以包括系统命令、操作系统脚本、数据库查询语句等。一旦攻击成功,攻击者可以执行任意命令,可能导致以下风险:

  1. 执行任意系统命令。
  2. 获取敏感信息。
  3. 系统崩溃。
命令注入演示
  • 正常的使用流程:

  • 进入命令注入界面:https://dvwa.ceshiren.com/vulnerabilities/exec/

  • 在输入框输入宠物商店的域名,点击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注入漏洞可以执行未经授权的数据库操作,如查询、插入、修改或删除数据。这可能导致以下风险:

  1. 数据泄露。
  2. 数据库破坏。
  3. 绕过认证。
SQL 注入演示
  • 正常的使用流程:

  • 输入要查询的UserID,比如1。

  • 即可获取到对应的user信息。

  • SQL 注入的操作流程:

  • 输入SQL注入的命令: ?id=a' UNION SELECT "text1","text2";-- -&Submit=Submit

  • 可以看到注入的SQL命令生效。