1

因此,我的脚本允许人们将内容写入 .txt 文件并将其保存在服务器上。他们目前可以写任何他们想写的东西。这是我用来保存文件的方法。

<?php
$victim = $_POST['victim'];
$user = $_POST['user'];
$comment = $_POST['comment']; 
$IP = $_POST['IP']; 
$data = "$victim | $user | $comment | $IP\n";

//open the file and choose the mode
$fh = fopen($victim.".txt", "a");

fwrite($fh, $data); //close the file fclose($fh); 
print "User Submitted";
echo "URL is mysite.com/".$victim.".txt"
?>

我的问题是——他们能写出什么会破坏我的服务器工作方式的东西吗?

4

3 回答 3

1

当然。我可以将此字符串作为您的victimPOST 参数发送:

/var/www/your_website/index.php\0

你会修改index.php. 使\0PHP 忽略.txt扩展名。在user中,我可以发送一些 PHP 代码并将其附加到您的索引页面中,这非常糟糕。

于 2013-06-06T23:02:08.810 回答
0

这是一个不可能回答的问题,因为有很多可能性。我看到的一件事是有人可以上传可执行代码或脚本。如果攻击者随后可以使服务器以某种方式处理脚本,则可能导致服务器受到危害。如果文本文件曾经提供给另一个用户,那么您就有了 XSS 漏洞。

于 2013-06-06T23:02:55.287 回答
0

是的。根据您的服务器配置,例如人们可以提供一个 URL(例如http://someotherpage/somepage?)作为victim参数,从而使 PHP 打开一个 HTTP(或其他某种可能的恶意)连接。你可能不希望这种情况发生。

于 2013-06-06T23:03:35.477 回答