BLOGUNUZA Yapılan tüm saldırı girisimlerini engelleyin!!!

h@cker_baba

Katılımcı Üye
18 Ara 2007
273
9
Daha önce de XSS saldırılarından nasıl korunulacağı ile ilgili yazılar yazmıştım. Fakat şimdi tanıtacağım eklenti wordpress için uyumlu hale getirilmiş. Önceki yazımda da bahsetmiştim ama üzerinde durmamıştım. Şimdi detaylıca inceleyelim. Bloğunuzda kullandığınız eklentilerde XSS açığı olsa bile
(bkz: [URL="https://tik.lat/KlYGt"] Pagenavi ve Wp-pager2 eklentilerinde XSS açığı var [url]https://tik.lat/nbmTm
) eklentiyi indirin.

/wp-content/plugins/ dizinine yükleyip eklentiyi aktifleştirin.

Eklentiler bölümüne yeni bir sekme gelecek "WPIDS" o bölüme tıklayın karşınız şöyle bir ekran gelecek.

wol_error.gif
Bu res?m kucultulmustur.Gercek boyuta donmek ?c?n t?klay?n.Orj?nal boyut 644x260
wpids.jpg


Ayarlara geçmeden önce şunu belirtmek istiyorum. "PHPIDS" her saldırıyı zararlılık derecesine ve etkisine göre numaralandırmıştır. Altta göreceğiniz "impact" yazıları bu anlama gelmektedir. Yani impact yazısının karşısında olan rakamları, yapılan saldırı sayısı olarak düşünmeyin. "impact" saldırının zararlılık derecesine verilen numaradır. Hangi kodun derecesi nedir diye merak ediyorsanız sitemin bu bölümünden [url]https://tik.lat/PXfME ) istediğiniz kodu seçip "test with PHPIDS" yazan yere tıklayın ve kodun "impact" derecesini öğrenin.

Şimdi sırayla ayarları inceleyelim.

1-Send me an Email to if the total Impact of a Bad Request is equal or bigger than:

1-Eğer toplam saldırıların etkisi 50 den büyükse veya eşitse mail ile bildir.

--------------------------------------

2-Block Bad Request if Impact was bigger than:

2-Eğer saldırının etkisi belirtilen sayıdan büyükse zararlı sorgulamaları blokla.

--------------------------------------

3-Block Bad Request IPs aswell , If yes how long in days:

3-Zararlı sorgulama yapanların IP adreslerini blokla. Eğer işaretlerseniz ne kadar süre banlı kalacak.

--------------------------------------

4-Show Latest Bad Requests

4-Yapılan son saldırılarıdan kaç tanesi listelensin.

--------------------------------------

"Last Blocked Bad Requests:" yazan yerde ise son bloklanan saldırıların listesini görebilirsiniz.

wol_error.gif
Bu res?m kucultulmustur.Gercek boyuta donmek ?c?n t?klay?n.Orj?nal boyut 641x90
lastblocks.jpg


Eklentinin nasıl çalıştığını görmek isterseniz alttaki adrese girip deneme yapabilirsiniz.

Kod:
http://www.eno7.org/?p=">**********alert(/XSS/)</script>

Eğer sitenize yapılan son saldırıları sidebar'ınızda görüntülemek isterseniz. Alttaki kodları sidebar'ınıza yapıştırın.

Kod:
<?php
echo ("<li id=wpids><h2>Son Saldırılar:</h2><ul>");
$attackfields = array("GET","POST","REQUEST","SERVER REQUEST_URI","SERVER USER_AGENT","SERVER REFERER","COOKIE");
$records = $wpdb->get_results("SELECT `attacked`, `ip`, `tag`, `value` FROM $GLOBALS[table_prefix]ids_intrusions ORDER BY id DESC LIMIT

10",ARRAY_A);
foreach ($records as $record)
{
echo ("<li title=\"".htmlspecialchars($record['value'])."\"><strong><a href=\"http://www.ip2********.com/$record[ip]\">".ereg_replace("[^[:digit:].]", "",

$record[ip]).[/url]</strong><br />");
if ($record['tag']=='')
{
echo($attackfields[$record['attacked']]."=".htmlspecialchars(substr($record['value'],0,20)."...")."</li>");
}else
{
echo($record['tag']."=".htmlspecialchars(substr($record['value'],0,20)."...")."</li>");
}
}
echo ("</ul></li>");?>

Dipnot: Bu eklenti "php5" ile çalışır eğer "php4" kullanıyorsanız "Parse Error" hatası alabilirsiniz. Ayrıca bloğunuza yeni bir yazı eklemeye çalıştığınızda bunu da saldırı gibi anlayıp engelleyebilir. Şu anda bu genel bir problem, eklentinin sonraki versiyonlarında bu eylemi whitelist'e alacaklar eğer bu sorunla karşılaşırsanız yeni yazı ekleyeceğiniz zaman eklentiyi devre dışı bırakmalısınız.


Dipnot'da belirttiğim gibi bu eklenti php4'de çalışmıyor php5 olması lazım wordpress için. Önce bende de "Parse Error" hatasını verdi ama daha sonra ".htaccess" dosyama alttaki kodları ekleyerek sorunu çözdüm.

Kod:
AddHandler x-httpd-php5 .php
AddHandler x-httpd-php .php4

[SIZE=+1]Eklentiyi üstteki gibi kurduktan sonra, sitenize yazı eklerken bunu bir saldırı zannedip engellediyse alttaki yöntemi deneyebilirsiniz.[/SIZE]

Eklenti bende hata vermişti yeni yazı eklerken bu girişimi saldırı olarak algılayıp engelliyordu ve sidebarda sitemize yapılan saldırılardan başka "referrer", "user agent" gibi diğer bilgileri de gösteriyordu. Sitemin sidebar'ına bakarsanız sadece yapılan saldırıları gösteriyor ve siteye yazı eklerken artık bu girişimi engellemiyor.

Öncelikle alttaki değişiklik yaptığım "phpids" eklentisini indirin.

Eklentiyi İndir [url]https://tik.lat/EPL0B )

Eklentiyi aktifleştirdikten sonra eklentiler bölümünden WPIDS yazan yere gelin ve orada 60 yazan yeri "1" yapın ve "save settings" diyerek ayarları kaydedin.

wpids2.jpg


Eğer sidebar'ınızda benimkisi gibi sadece yapılan saldırıları görüntülemek istiyorsanız alttaki kodları sıdebar'ınıza yapıştırın.

Kod:
<h2>Son Saldırılar:</h2>
<?php
echo ("");
$attackfields = array("DETECT");
$records = $wpdb->get_results("SELECT `attacked`, `ip`, `page` FROM $GLOBALS[table_prefix]ids_intrusions ORDER BY id DESC LIMIT 10",ARRAY_A);
foreach ($records as $record)
{
echo ("<li title=\"".htmlspecialchars($record['page'])."\"><strong><a target= _blank href=\"http://www.ip2********.com/$record[ip]\">".ereg_replace("[^[:digit:].]", "", $record[ip]).[/url]</strong><br />");
if ($record['']=='')
{
echo($attackfields[$record['attacked']]."=".htmlspecialchars(substr($record['page'],0,15)."...")."</li>");
}else
{
echo($record['']."=".htmlspecialchars(substr($record['value'],0,20)."...")."</li>");
}
}
echo ("");?>

Eğer yine istediğiniz gibi olmadıysa bu sefer üstte değişiklik yaptığım "phpids" eklentisinin içindeki "wp-ids.php" dosyasını bir metin belgesiyle açın ve 94. satırdaki

Kod:
$request = array ($_SERVER['REQUEST_URI']);

yazan yeri

Kod:
$request = array ($_GET);

ile değiştirin.

Eklentinin resmi sitesinde filtre kütüphanesine yeni zararlı kodlar eklenerek sürekli güncelleniyor. Eğer eklentinizin filtre kütüphanesini güncel tutmak isterseniz eklentinin sitesine gidip "default_filter.xml" adındaki dosyayı indirerek, eski "default_filter.xml" dosyanızla değiştirmek. Bu dosya sitenizde bu bölümde bulunuyor "/wp-content/wp-ids/IDS/default_filter.xml"

Güncel "default_filter.xml" dosyası genelde bu adreste [url]https://tik.lat/bmMQJ ) oluyor, aynı zamanda ana sayfadan da [url]https://tik.lat/g2Lkq ) ulaşmak mümkün. Siteye girip "default_filter.xml" dosyasına farklı kaydet diyip indirebilirsiniz.

[SIZE=+1]Bloğunuza Yorum Formlarından Yapılacak Olan Saldırılarıda Engellemek İsteyebilirsiniz.[/SIZE]

Size tanıtacağım eklenti sadece zararlı kodları pasifize etmekle kalmıyor, bilinen tüm XSS kodlarını zararsız hale getiriyor. Sitenize her türlü yapılacak XSS saldırılarına karşı tam güvenlik almanızı sağlıyor. Aslında wordpress’de bu konuda filtreleme sağlıyor fakat bu bizi daha iyi bir güvenlik almamamız için bir neden olamaz. Bu eklenti tam ve eksiksiz bir koruma sağlayacak. Şimdi KSES (wordpress’in default filtrelemesi) ile bu eklentiyi yani “HTML Purified” karşılaştıralım. Detaylı karşılaştırmaya buradan da bakabilirsiniz. Comparison
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.