在我previous question on this topic,就會影響是什麼,如果我刪除了動態變量,而是用一個靜態像你見下文取代它......如何安全(硬化)是這個腳本(部分2)
$source = 'http://mycentralserver.com/protected/myupdater.zip';
我已經包括下面爲了方便代碼...
<?php
// TEST.PHP
$source = 'http://mycentralserver.com/protected/myupdater.zip';
$target = '.';
$out_file = fopen(basename($source), 'w');
$in_file = fopen($source, 'r');
while ($chunk = fgets($in_file)) {
fputs($out_file, $chunk);
}
fclose($in_file);
fclose($out_file);
$zip = new ZipArchive();
$result = $zip->open(basename($source));
if ($result) {
$zip->extractTo($target);
$zip->close();
}
?>
正如Micheal Brooks在回覆您的上一篇文章中所述,您應該使用'curl'而不是'fopen'來抓取遠程文件。 – 2010-02-24 22:39:08
謝謝,我將執行邁克爾的所有建議(至少那些不涉及動態獲取的建議,因爲我廢除了) – 2010-02-24 22:40:51
您仍然容易受到DNS劫持的影響。就像MadCoder指出的最好的gpg更新和驗證簽名(使用存儲在此服務器上的密鑰)。誰可以執行此更新腳本? – mar 2010-02-25 00:27:09