10 Adımda WP Güvenliği


1 - Statik ip kullanın ve wp-admin'de aktif olacak user için bu ipi atayın.

.htaccess içine.

order deny,allow
allow from sizinipadresiniz. # 
deny from all
eklemeniz yeter.


2 - Hotlinki Disable edin


htaccesse ekleyin.

#disable hotlinking of images with forbidden or custom image option
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?siten.com/.*$ [NC]
#RewriteRule \.(gif|jpg)$ – [F]
RewriteRule \.(gif|jpg)$ http://www.siten.com/karsitaraftagorunmesinistediginresim.gif [R,L]

3- Spam kasan botları engelleyelim.

.htaccesse

RewriteEngine On
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{REQUEST_URI} .wp-comments-post\.php*
RewriteCond %{HTTP_REFERER} !.*siten.com.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^$
RewriteRule (.*) ^http://%{REMOTE_ADDR}/$ [R=301,L]
eklememiz yeter.

4- Wp-config dosyamızı güvenli hale getirelim.


htaccesse ekleyelim.

# protect wpconfig.php
<Files wp-config.php>
order allow,deny
deny from all
</Files>

5- Dizin gösterimini engelleme

htaccesse

# disable directory browsing
Options All -Indexes
eklememiz yeter.

6 - htaccess dosyamızın kontrolü ve güvenliği için de

htaccess içine

<Files ~ “^.*\.([Hh][Tt][Aa])”>
order allow,deny
deny from all
satisfy all
</Files>
eklemeniz yeterli olacaktır.

7 - HTTP Trace Method Disable edelim böylelikle xss xst gibi kötü faktörlerden kurtulalım.


htaccesse
RewriteEngine On
RewriteCond %{REQUEST_METHOD} ^TRACE
RewriteRule .* - [F]
eklelemiz yeter.

8 - Tema fonksiyon dosyamızdaki çıkış öğelerini silelim

İlgili temamızdaki functions.php içine giriş


remove_action('wp_head', 'index_rel_link');
remove_action('wp_head', 'feed_links', 2);
remove_action('wp_head', 'feed_links_extra', 3);
remove_action('wp_head', 'rsd_link');
remove_action('wp_head', 'wlwmanifest_link');
remove_action('wp_head', 'parent_post_rel_link', 10, 0);
remove_action('wp_head', 'start_post_rel_link', 10, 0);
remove_action('wp_head', 'adjacent_posts_rel_link_wp_head', 10, 0);
remove_action('wp_head', 'wp_generator');
remove_action('wp_head', 'wp_shortlink_wp_head', 10, 0);
remove_action('wp_head', 'noindex', 1);
ekleyelim.

9 - Spam yorum kasan ve bunu proxy ile gerçekleştiren program türlerini engellemek için htaccesse

Alıntı
RewriteCond %{REQUEST_METHOD} =POST
RewriteCond %{HTTP:VIA}%{HTTP:FORWARDED}%{HTTP:USERAGENT_VIA}% {HTTP:X_FORWARDED_FOR}%{HTTP:PROXY_CONNECTION} !^$ [OR]
RewriteCond %{HTTP:XPROXY_CONNECTION}%{HTTP:HTTP_PC_REMOTE_ADD R}%{HTTP:HTTP_CLIENT_IP} !^$
RewriteCond %{REQUEST_URI} !^/(wp-login.php|wp-admin/|wp-content/plugins/|wp-includes/).* [NC]
RewriteRule .* - [F,NS,L]
eklemeniz yeter.

10 - Uzaktan sisteme erişilmesini bir nebze engellemek için .htaccessimize

# QUERY STRING EXPLOITS
<IfModule mod_rewrite.c>
RewriteCond %{QUERY_STRING} ../   [NC,OR]
RewriteCond %{QUERY_STRING} boot.ini [NC,OR]
RewriteCond %{QUERY_STRING} tag= [NC,OR]
RewriteCond %{QUERY_STRING} ftp: [NC,OR]
RewriteCond %{QUERY_STRING} http: [NC,OR]
RewriteCond %{QUERY_STRING} https:   [NC,OR]
RewriteCond %{QUERY_STRING} mosConfig [NC,OR]
RewriteCond %{QUERY_STRING} ^.*([|]|(|)|<|>|'|"|;|?|*).* [NC,OR]
RewriteCond %{QUERY_STRING} ^.*(%22|%27|%3C|%3E|%5C|%7B|%7C).* [NC,OR]
RewriteCond %{QUERY_STRING} ^.*(%0|%A|%B|%C|%D|%E|%F|127.0).* [NC,OR]
RewriteCond %{QUERY_STRING} ^.*(globals|encode|config|localhost|loopback).* [NC,OR]
RewriteCond %{QUERY_STRING} ^.*(request|select|insert|union|declare|drop).* [NC]
RewriteRule ^(.*)$ - [F,L]
</IfModule>
eklememiz yeterli.



* Wordpress sürümümüzü güncel tutmaya.
* Shared hostlarda barınıyorsak en azından wp-config dosyamızın encode edilmesine.
* Wp-config password bilgilerimiz ile ftp ve benzeri şifrelerimizin aynı olmamasına
* Mevcut sunucumuzun güvenlik yapılandırılması ile ilgili güncellemelerini takip ettiğine ( özellikle php sürüm )
* Kullandığımız eklentilerin güncel olmasına , eğer update zamanları hiç güncel değilse bu eklentiler ile ilgili public bir açık olmasının kontrolü için
google üzerinde eklenti adı boşluk exploit benzeri ifadeler yapıp aranmasını
* Periyodik olarak yedeklerimizin alınmasına
* Periyodik olarak kullanılan yonetim scripti üzerinden (cpanel , plesk neyse ) logların incelenmesine ( çünkü herhangi bir şekilde listpatch vs atılmış ise
sunucuya bunun nerede olduğunu hangi dizinden ne tür işlemler yaptıklarını görebilir ve anında müdahele edebilirsiniz )
* Wp admin'e login olduktan sonra işimiz bitmeden harici sitelerde dolaşmamaya özellikle tanımadığımız kimselerin size attığı linklere tıklamamaya ( csrf kullanılarak
istem dışı sizlere panelinizde işlem yaptırılabilir )


Dikkat edersek bir nebzede olsun kendimizi güvenli hissedebiliriz.

Benzer işlemleri otomatik olarak farklı şekillerde yapmak için wp pluginleri de kullanabilirsiniz ,


(WordPress Website Security Protection. Website security protection against: XSS, RFI, CRLF, CSRF, Base64, Code Injection and SQL Injection hacking... )

http://downloads.wordpress.org/plugi...ity.0.47.4.zip



( The easiest, most effective way to secure WordPress. Improve the security of any WordPress site in seconds. )

http://downloads.wordpress.org/plugi...rity.3.4.4.zip


JUSTRULZ