Site Güvenliği İçin URL Kaydetme (Sorunsalı)
-
Evet arkadaşlar işimiz düşmedikçe yazmıyoruz. Biraz bencilce oluyor. Ama kaliteli konu olmasa açmak istemiyorum. Neyse Konuya dönelim daha doğrusu yardım istememe.
elimde bir site var, gerçekten çok beğendiğim bir script wareze düştü mutlaka açıkları vardır. fakat ben php kodu ile gelen url'lerin hepsini bir db ye kaydetsem ve her gece gmail'ime mail atıp tabloları sıfırlasam. Güncel olarak takip etmiş olurum.
Şimdi detaylandıralım.
-----------------------------------------------------
Önce Database Tabloları.
ID|tarihSaat|ip|URL
diyelimki sabah açtı biri siteyi.
direk db'ye kayıt olacak
1|21.01.2012-12:13|127.0.0.1|index.php
..
..
..
Kötü Hacker Geldi.
327|21.01.2012-03:00|88.12.12.0|acikvar.php?id=-1%20A=A
Şimdi temel olarak yapmak istediğim bu. Algoritmada problem yok PHP kod bilgim az. onda yardımcı olmanızı istiyorum.
Girilen tüm urlleri alacak kodlama nasıl olur. :) bunu soruyorum sadece
----------------------------------------------------------------------
-
function guvenlik(){
$urele="http://".$_SERVER['SERVER_NAME']."".$_SERVER['REQUEST_URI']."";
$ip = $_SERVER['REMOTE_ADDR'];
$zaman = time();
//ID|tarihSaat|ip|URL
$k = mysql_query("insert into tablename (`tarihSaat`,`ip`,`URL`) values ( '".$zaman."', '".$ip."', '".$urele."' )");
if($k){
echo "veritabanına kaydedildi";
}else{
echo "Hata !!! Veritabanına kaydedilemedi";
}
}
Bu yukarıdaki fonskiyonu ayar.php gibi yada fonkisyonlar.php gibi her sayfaya include edilen bi yere ekle sonra
Her sayfandayada kullanmak istediğin sayfada fonksiyonu çağar eklesin db ye
Bununla beraber işte şu anda üyeler ne yapıyor bölümüde yapabilirsin geliştirebilirsin
guvenlik();
-----------------------------------------------------------------------
sonra tarihi ekrana bastırıkende admin panelinde
$tarih = sqlden gelen tarih;
echo date("d.m.Y",$tarih); // istediğin gibi çıktı verdirebilirsin.
bu fonksiyonu kullan.
------------------------------------------------------------------
Her gün bana mail atsın diyorsanda
mail(); fonksiyonunu araştır biraz.
Benim sana tavsiyem yazı dosyasına eklet bunları :)
Cronjob ilede günde bir kez bir php dosyası kodla yazı dsoyası içeriğini açsın sana mail atsın sonra içini boşaltsın.
Daha verimli .çalışır
-
Çok teşekkürler, deniyorum. hemen
-
sadece ameleliktir. düşük hitli sitelerde sorunu anlıyamazsın ama hit yükseldikçe performans düşer.
-
bunun farkındayım. amacım siteye gelen saldırıları görmeye çalışmak. zaten on off ayarı yapacam. uyarın için sağol
-
server zaten log tutuyor ne gerek var ki
-
o loglara nerden ulaşılıyor peki
