.htaccess Güvenlik Önemleri (Kodları)
.htaccess wordpress sitelerinde bulunmaz bir velinimettir. Dosyanın orjinalini değiştirerek biraz daha güvenlik önlemi almanızı sağlayacağız. Ftp ana dizinine gelip .htaccess dosyasını düzenle diyelim ve aşağıdaki kodları tek tek yazalım.Diğer siteler içinde geçerli.
Order Allow,Deny
Deny from all
</Files>
Order Deny,Allow
Deny from all
</Files>
order allow,deny
deny from all
</files>
Options -ExecCGI
deny from all
RewriteCond% {QUERY_STRING}!^Ptrxcz.* $
RewriteRule (.*) - [F]
Order allow,deny
Deny from all
</Files>
deny from all
</Files>
Order deny,allow
Deny from all
</FilesMatch>
ErrorDocument 403 /wp-content/themes/temanız/404.php
ErrorDocument 500 /wp-content/themes/temanız/404.php
<IfModule mod_rewrite.c>
RewriteCond %{HTTP_USER_AGENT} Acunetix [NC,OR] RewriteCond %{HTTP_USER_AGENT} dirbuster [NC,OR] RewriteCond %{HTTP_USER_AGENT} jbrofuzz [NC,OR] RewriteCond %{HTTP_USER_AGENT} webshag [NC,OR] RewriteCond %{HTTP_USER_AGENT} nikto [NC,OR] RewriteCond %{HTTP_USER_AGENT} SF [OR] RewriteCond %{HTTP_USER_AGENT} sqlmap [NC,OR] RewriteCond %{HTTP_USER_AGENT} fimap [NC,OR] RewriteCond %{HTTP_USER_AGENT} nessus [NC,OR] RewriteCond %{HTTP_USER_AGENT} whatweb [NC,OR] RewriteCond %{HTTP_USER_AGENT} Openvas [NC,OR] RewriteCond %{HTTP:Acunetix-Product} ^WVS
RewriteRule ^.* http://127.0.0.1/ [R=301,L] </IfModule>
RewriteCond %{REQUEST_METHOD} ^(HEAD|TRACE|DELETE|TRACK) [NC,OR] RewriteCond %{HTTP_REFERER} ^(.*)(<|>|’|%0A|%0D|’|<|>|%00).* [NC,OR] RewriteCond %{REQUEST_URI} ^/(,|;|<|>|/{2,999}).* [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^(java|curl|wget).* [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^.*(winhttp|HTTrack|clshttp|archiver|loader|email| harvest|extract|grab|miner).* [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^.*(libwww|curl|wget|python|scan).* [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^.*(<|>|’|%0A|%0D|’|<|>|%00).* [NC,OR] RewriteCond %{HTTP_COOKIE} ^.*(<|>|’|%0A|%0D|’|<|>|%00).* [NC,OR] RewriteCond %{QUERY_STRING} ^.*(localhost|loopback|127\\.0\\.0\\.1).* [NC,OR] RewriteCond %{QUERY_STRING} ^.*(<|>|’|%0A|%0D|’|<|>|%00).* [NC,OR] RewriteCond %{QUERY_STRING} [^a-z](|order|union|declare|char|set|cast|convert|delete |drop|exec|insert|met*|script|select|truncate|upda te)[^a-z] [NC] RewriteRule (.*) - [F]
RewriteCond %{QUERY_STRING} base64_encode.*\\(.*\\) [OR] RewriteCond %{QUERY_STRING} (\\<|<).*script.*(\\>|>) [NC,OR] RewriteCond %{QUERY_STRING} GLOBALS(=|\\[|\\%[0-9A-Z]{0,2}) [OR] RewriteCond %{QUERY_STRING} _REQUEST(=|\\[|\\%[0-9A-Z]{0,2})
RewriteRule ^(.*)$ index.php|404.php| [F,L]
Dosya isimlerini daha fazla yazarak çoğaltabilirsiniz.
RewriteCond %{REQUEST_URI} !^/sitemap.xml
RewriteCond %{REQUEST_URI} .*((php|my)?shell|remview.*|phpremoteview.*|sshphp.*|pcom|nstview.*|c99|r57|webadmin.*|phpget.*|phpwriter.*|fileditor.*|locus7.*|storm7.*)\.(p?s?x?htm?l?|txt|aspx?|cfml?|cgi|pl|php[3-9]{0,1}|jsp?|sql|xml) [NC,OR] RewriteCond %{REQUEST_METHOD} (GET|POST) [NC] RewriteCond %{QUERY_STRING} ^(.*)=/home(.+)?/loginftp/(.*)$ [OR] RewriteCond %{QUERY_STRING} ^work_dir=.*$ [OR] RewriteCond %{QUERY_STRING} ^command=.*&output.*$ [OR] RewriteCond %{QUERY_STRING} ^nts_[a-z0-9_]{0,10}=.*$ [OR] RewriteCond %{QUERY_STRING} ^(.*)cmd=.*$ [OR] ## BU KURALA DIKKAT EDIN SITENIZIN CALISMASINI ENGELLEYEBILIR##
RewriteCond %{QUERY_STRING} ^c=(t|setup|codes)$ [OR] RewriteCond %{QUERY_STRING} ^act=((about|cmd|selfremove|chbd|trojan|backc|massbrowsersploit|exploits|grablogins|upload.*)|((chmod|f)&f=.*))$ [OR] RewriteCond %{QUERY_STRING} ^act=(ls|search|fsbuff|encoder|tools|processes|ftpquickbrute|security|sql|eval|update|feedback|cmd|gofile|mkfile)&d=.*$ [OR] RewriteCond %{QUERY_STRING} ^&?c=(l?v?i?&d=|v&fnot=|setup&ref=|l&r=|d&d=|tree&d|t&d=|e&d=|i&d=|codes|md5crack).*$ [OR] RewriteCond %{QUERY_STRING} ^(.*)([-_a-z]{1,15})=(ls|cd|cat|rm|mv|vim|chmod|chdir|mkdir|rmdir|pwd|clear|whoami|uname|tar|zip|unzip|tar|gzip|gunzip|grep|more|ln|umask|telnet|ssh|ftp|head|tail|which|mkmode|touch|logname|edit_file|search_text|find_text|php_eval|download_file|ftp_file_down|ftp_file_up|ftp_brute|mail_file|mysql|mysql_dump|db_query)([^a-zA-Z0-9].+)*$ [OR] RewriteCond %{QUERY_STRING} ^(.*)(wget|shell_exec|passthru|system|exec|popen|proc_open)(.*)$
En çok bilinen .htaccess dosyası güvenliklerini sizler için bir araya getirdik. Kodlarda değişiklik yaparak daha fazla geliştirebilirsiniz.
Kaynak: codlio
.htaccess wordpress sitelerinde bulunmaz bir velinimettir. Dosyanın orjinalini değiştirerek biraz daha güvenlik önlemi almanızı sağlayacağız. Ftp ana dizinine gelip .htaccess dosyasını düzenle diyelim ve aşağıdaki kodları tek tek yazalım.Diğer siteler içinde geçerli.
1- .htaccess dosyasına doğrudan erişimi engellemek
<Files .htaccess>Order Allow,Deny
Deny from all
</Files>
2- wp-config dosyasına erişimi engellemek
<Files wp-config.php>Order Deny,Allow
Deny from all
</Files>
3- wp-load dosyasına erişimi engellemek
<files wp-load.php>order allow,deny
deny from all
</files>
4- Klasörde dosya listelemeyi engellemek
Options All -Indexes5- Sunucuda dışarıdan dosya yükleyip Script çalıştırmayı engellemek
AddHandler cgi-script .php .pl .py .jsp .asp .htm .shtml .sh .cgiOptions -ExecCGI
6- Sunucu imzasını kaldırmak
ServerSignature Off7- Klasörlere erişimi engellemek
#deny all accessdeny from all
8- Yönlendirmeli Ddos saldırılarını engellemek
RewriteCond %{QUERY_STRING} ^([0-9]+)$ [NC,OR] RewriteCond %{QUERY_STRING} ^(.*)\?([0-9]+)(.*)$ [NC,OR] RewriteCond %{QUERY_STRING} ^([0-9]+\.[0-9])(.*)$ [NC,OR] RewriteCond %{QUERY_STRING} ^(.*)\?([0-9]+\.[0-9])(.*)$ [NC] RewriteRule ^(.*)$ %{HTTP_REFERER} [L] RewriteCond %{QUERY_STRING} ^ptrxcz.*$RewriteCond% {QUERY_STRING}!^Ptrxcz.* $
RewriteRule (.*) - [F]
9- Xmlrpc güvenliğini almak
RewriteRule ^xmlrpc\.php$ "http\:\/\/0\.0\.0\.0\/" [R=301,L]10- Xmlrpc erişimi engellermek
<Files xmlrpc.php>Order allow,deny
Deny from all
</Files>
11- Php dosya çalıştırmayı engellemek
<Files *.php>deny from all
</Files>
12- Error.log dosyasına erişimi engellemek
<FilesMatch "(\error.log)">Order deny,allow
Deny from all
</FilesMatch>
13-Hata sayfalarını sabitlemek
ErrorDocument 404 /wp-content/themes/temanız/404.phpErrorDocument 403 /wp-content/themes/temanız/404.php
ErrorDocument 500 /wp-content/themes/temanız/404.php
14- Web Scanner programlarından korunmak
RewriteEngine On<IfModule mod_rewrite.c>
RewriteCond %{HTTP_USER_AGENT} Acunetix [NC,OR] RewriteCond %{HTTP_USER_AGENT} dirbuster [NC,OR] RewriteCond %{HTTP_USER_AGENT} jbrofuzz [NC,OR] RewriteCond %{HTTP_USER_AGENT} webshag [NC,OR] RewriteCond %{HTTP_USER_AGENT} nikto [NC,OR] RewriteCond %{HTTP_USER_AGENT} SF [OR] RewriteCond %{HTTP_USER_AGENT} sqlmap [NC,OR] RewriteCond %{HTTP_USER_AGENT} fimap [NC,OR] RewriteCond %{HTTP_USER_AGENT} nessus [NC,OR] RewriteCond %{HTTP_USER_AGENT} whatweb [NC,OR] RewriteCond %{HTTP_USER_AGENT} Openvas [NC,OR] RewriteCond %{HTTP:Acunetix-Product} ^WVS
RewriteRule ^.* http://127.0.0.1/ [R=301,L] </IfModule>
14- SQL injection engellemek
RewriteEngine OnRewriteCond %{REQUEST_METHOD} ^(HEAD|TRACE|DELETE|TRACK) [NC,OR] RewriteCond %{HTTP_REFERER} ^(.*)(<|>|’|%0A|%0D|’|<|>|%00).* [NC,OR] RewriteCond %{REQUEST_URI} ^/(,|;|<|>|/{2,999}).* [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^(java|curl|wget).* [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^.*(winhttp|HTTrack|clshttp|archiver|loader|email| harvest|extract|grab|miner).* [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^.*(libwww|curl|wget|python|scan).* [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^.*(<|>|’|%0A|%0D|’|<|>|%00).* [NC,OR] RewriteCond %{HTTP_COOKIE} ^.*(<|>|’|%0A|%0D|’|<|>|%00).* [NC,OR] RewriteCond %{QUERY_STRING} ^.*(localhost|loopback|127\\.0\\.0\\.1).* [NC,OR] RewriteCond %{QUERY_STRING} ^.*(<|>|’|%0A|%0D|’|<|>|%00).* [NC,OR] RewriteCond %{QUERY_STRING} [^a-z](|order|union|declare|char|set|cast|convert|delete |drop|exec|insert|met*|script|select|truncate|upda te)[^a-z] [NC] RewriteRule (.*) - [F]
15- Xss engellemek
RewriteEngine OnRewriteCond %{QUERY_STRING} base64_encode.*\\(.*\\) [OR] RewriteCond %{QUERY_STRING} (\\<|<).*script.*(\\>|>) [NC,OR] RewriteCond %{QUERY_STRING} GLOBALS(=|\\[|\\%[0-9A-Z]{0,2}) [OR] RewriteCond %{QUERY_STRING} _REQUEST(=|\\[|\\%[0-9A-Z]{0,2})
RewriteRule ^(.*)$ index.php|404.php| [F,L]
Dosya isimlerini daha fazla yazarak çoğaltabilirsiniz.
16- Proxy girişlerini engellemek
Kod:
Proxy girişlerini engellemek
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP:VIA} !^$ [OR] RewriteCond %{HTTP:FORWARDED} !^$ [OR] RewriteCond %{HTTP:USERAGENT_VIA} !^$ [OR] RewriteCond %{HTTP:X_FORWARDED_FOR} !^$ [OR] RewriteCond %{HTTP:PROXY_CONNECTION} !^$ [OR] RewriteCond %{HTTP:XPROXY_CONNECTION} !^$ [OR] RewriteCond %{HTTP:HTTP_PC_REMOTE_ADDR} !^$ [OR] RewriteCond %{HTTP:XROXY_CONNECTION} !^$ [OR] RewriteCond %{HTTP:X-FORWARDED-FOR} !^$ [OR] RewriteCond %{HTTP:HTTP_CLIENT_IP} !^$ [OR] RewriteCond %{HTTP:FORWARDED-FOR} !^$ [OR] RewriteCond %{HTTP:X-FORWARDED} !^$
RewriteRule ^(.*)$ – [F] </IfModule>
17-Zararlı örümceklerin ulaşabileceği dosyaları belirlemek
RewriteCond %{REQUEST_URI} !^/robots.txtRewriteCond %{REQUEST_URI} !^/sitemap.xml
18-Zararlı örümcekleri engellemek
RewriteCond %{HTTP_USER_AGENT} ^-?$ [OR] RewriteCond %{HTTP_USER_AGENT} ^[bcdfghjklmnpqrstvwxz\ ]{8,}|^[0-9a-z]{15,}|^[0-9A-Za-z]{19,} [OR] RewriteCond %{HTTP_USER_AGENT} Extractor|almaden|anonymous|autoemailspider|blogsearchbot-martin|CherryPicker|Digger|DirectUpdate|Download\ Accelerator|echo\ extense|Collector|EmailWolf|flashget|frontpage|Go!Zilla|grub\ crawler|HTTPConnect|httplib|HttpProxy|HTTP\ agent|HTTrack|Indy\ Library|Jakarta\ Commons|libWeb|libwww|Microsoft\ Data|Microsoft\ URL|MJ12bot|Movable\ Type|NICErsPRO|NutchCVS|Nutscrape/|OmniExplorer|psycheclone|PussyCat|PycURL|python|QuepasaCreep|SiteMapper|Download|sucker|SurveyBot|Teleport\ Pro|Telesoft|TrackBack|Turing|TurnitinBot|vobsub|webbandit|WebCapture|webcollage|WebCopier|WebDAV|WebEmailExtractor|WebReaper|WEBsaver|WebStripper|WebZIP|widows|Wysigot|Zeus|Zeus.*Webster [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^19- Php ile derlenmiş shellerin çalışmasını engellemek
RewriteEngine OnRewriteCond %{REQUEST_URI} .*((php|my)?shell|remview.*|phpremoteview.*|sshphp.*|pcom|nstview.*|c99|r57|webadmin.*|phpget.*|phpwriter.*|fileditor.*|locus7.*|storm7.*)\.(p?s?x?htm?l?|txt|aspx?|cfml?|cgi|pl|php[3-9]{0,1}|jsp?|sql|xml) [NC,OR] RewriteCond %{REQUEST_METHOD} (GET|POST) [NC] RewriteCond %{QUERY_STRING} ^(.*)=/home(.+)?/loginftp/(.*)$ [OR] RewriteCond %{QUERY_STRING} ^work_dir=.*$ [OR] RewriteCond %{QUERY_STRING} ^command=.*&output.*$ [OR] RewriteCond %{QUERY_STRING} ^nts_[a-z0-9_]{0,10}=.*$ [OR] RewriteCond %{QUERY_STRING} ^(.*)cmd=.*$ [OR] ## BU KURALA DIKKAT EDIN SITENIZIN CALISMASINI ENGELLEYEBILIR##
RewriteCond %{QUERY_STRING} ^c=(t|setup|codes)$ [OR] RewriteCond %{QUERY_STRING} ^act=((about|cmd|selfremove|chbd|trojan|backc|massbrowsersploit|exploits|grablogins|upload.*)|((chmod|f)&f=.*))$ [OR] RewriteCond %{QUERY_STRING} ^act=(ls|search|fsbuff|encoder|tools|processes|ftpquickbrute|security|sql|eval|update|feedback|cmd|gofile|mkfile)&d=.*$ [OR] RewriteCond %{QUERY_STRING} ^&?c=(l?v?i?&d=|v&fnot=|setup&ref=|l&r=|d&d=|tree&d|t&d=|e&d=|i&d=|codes|md5crack).*$ [OR] RewriteCond %{QUERY_STRING} ^(.*)([-_a-z]{1,15})=(ls|cd|cat|rm|mv|vim|chmod|chdir|mkdir|rmdir|pwd|clear|whoami|uname|tar|zip|unzip|tar|gzip|gunzip|grep|more|ln|umask|telnet|ssh|ftp|head|tail|which|mkmode|touch|logname|edit_file|search_text|find_text|php_eval|download_file|ftp_file_down|ftp_file_up|ftp_brute|mail_file|mysql|mysql_dump|db_query)([^a-zA-Z0-9].+)*$ [OR] RewriteCond %{QUERY_STRING} ^(.*)(wget|shell_exec|passthru|system|exec|popen|proc_open)(.*)$
En çok bilinen .htaccess dosyası güvenliklerini sizler için bir araya getirdik. Kodlarda değişiklik yaparak daha fazla geliştirebilirsiniz.
Kaynak: codlio
Son düzenleme: