Merhaba,
bir
PHP sistemi uzerinde calisiyorum.
PHP konusunda biraz yeni sayilirim. Bu yuzden bu konuda bilgi ve tecrube sahibi kisilerden bir yardim istiyorum. Simdi konuyu soyle ozetleyim;
makinemde /home/kullanici/ dizininde asd.txt adinda bir dosyam var. Bunu asagidaki kodlar ile acip gerektiginde degisiklip yapip save tusuna basinca kaydetmesi gerekiyor. Bunu asagidaki kodlar ile cok guzel bir sekilde yapiyorum. Fakat isin guvenlik boyutu sıfır. Yani bu kodu calistirdigimda ekrana gelen textarea da asd.txt nin icerigini goruyorum. Degisiklik yaparken en son satıra
</textarea> <? falan filan kod ?> seklinde yada <marquee>asdad</marquee> yazdıgımda bunları kodların icindeymis gibi calistiriyor. Buda cok ciddi bir guvenlik tehtidi olusturuyor. Bunu nasil engelleyebilirim. Bu koda kucuk bir ekleme yapabilirseniz yada bana bir kaynak, fikir verebilirseniz cok sevinirim. Simdiden cok tesekkur ederim.
Saygılar..
Bahsi gecen kod:
Kod:
<HTML>
<body>
<?PHP
$dosya = "/home/kullanici/asd.txt";
$form = $_POST["form"];
$degisiklik = $_POST["degisiklik"];
$yazilar = @implode('',file($dosya));
?>
<center>
<?PHP if ($form == "SAVE") {
$kaynak = fopen($dosya,"w+");
fwrite($kaynak, stripslashes($degisiklik));
fclose($kaynak);
echo "<b>Ayarlar Kaydedildi.</b>";
}
echo '<form action="dzn.PHP" method="post">
<textarea name="degisiklik">'; echo stripslashes($yazilar); echo '</textarea>
<br><input type="hidden" value="'; echo $dosya; echo '" name="dosya">
<input type="submit" value="SAVE" name="form"></form>';
?>
</center>
</body>
</HTML>