命令注入
什么是命令注入?
操作系统命令注入(也称为 shell 注入)是一种网络安全漏洞,允许攻击者在运行应用程序的服务器上执行任意操作系统(OS)命令,并通常完全破坏应用程序及其所有数据。
上下文
根据你的输入被注入的位置,你可能需要在命令之前终止引用的上下文(使用 " 或 ')。
命令注入/执行
限制绕过
如果你想在Linux机器上执行任意命令,你会对以下绕过方法感兴趣:Bypass Linux Restrictions
示例
参数
以下是可能容易受到代码注入和类似远程命令执行(RCE)漏洞攻击的前25个参数(来自link)
基于时间的数据泄露
逐个字符提取数据
在某些情况下,命令注入漏洞可能允许攻击者从目标系统中提取敏感数据。一种提取数据的技术是逐个字符进行,使用时间延迟来确定每个字符的值。
这种技术的思想是注入一个命令,如果满足某个条件,就会导致时间延迟。通过注入一个遍历所有可能字符并检查响应时间的命令,攻击者可以确定目标数据中每个字符的值。
以下是使用这种技术逐个字符提取数据的示例:
在这个示例中,攻击者注入了一个命令,该命令遍历所有可能的字符(小写字母、大写字母、数字和下划线)并检查响应时间。如果响应时间大于5(表示成功匹配),则将该字符添加到data变量中。
通过对目标数据中的每个字符重复此过程,攻击者可以逐步提取整个数据集。
基于DNS的数据泄露
基于https://github.com/HoLyVieR/dnsbin上的工具,也托管在dnsbin.zhack.ca上。
在线工具检查基于DNS的数据泄露:
dnsbin.zhack.ca
pingb.in
绕过过滤
Windows
Linux
Bypass LinuxBrute-Force Detection List
https://github.com/carlospolop/Auto_Wordlists/blob/main/wordlists/command_injection.txt
References
Not found
最后更新于
这有帮助吗?