我是靠谱客的博主 粗犷口红,最近开发中收集的这篇文章主要介绍Windows下参数污染跨目录执行文件开始复现,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

 

意思就是当你是cmd.exe /c执行命令的时候

cmd.exe -c "ping 127.0.0.1/../../../../../../../../windows/system32/ipconfig.exe"
ping 127.0.0.1被当作一个目录。然后../到其他目录执行exe
最后就变成了cmd.exe -c "windows/system32/ipconfig.exe"
成功执行了ipconfig.exe

开始复现

服务器配置:Server2012+phpstudy2018(PHP7.2-nts+Nginx)
index.php

<?php
if(isset($_POST['host'])){
	$host=$_POST['host'];
	$command=escapeshellcmd("dir $host");
	echo system($command);
}else{
	echo "No host specified.";
}

利用escapeshellcmd函数。对所有可能产生命令注入的符号进行转义
然后执行dir 拼接

当我们输入恶意的payload。成功跳出计算器

具体执行的就是windows/system32/calc.exe
C盘下存在很多exe

system32目录下主要是

cmd.exe             会创建一个cmd进程
calc.exe              弹计算器
systeminfo.exe   systeminfo命令
ipconfig.exe       ipconfig命令


并且。他可以执行任意目录的可执行文件
windows下又有exe和com两种可执行文件。只要你知道目录。想办法把文件传上去
就可以跨目录执行exe。比如自己写的C语言程序。Msf木马等。反弹shell

最后

以上就是粗犷口红为你收集整理的Windows下参数污染跨目录执行文件开始复现的全部内容,希望文章能够帮你解决Windows下参数污染跨目录执行文件开始复现所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(34)

评论列表共有 0 条评论

立即
投稿
返回
顶部