تبلیغات
پشتیبانی وردپرس پشتیبانی سایت


امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
امنیت سایت با htaccess.
#1
درود

این روز ها سایت های ورد پرس به اسانی هک میشوند . 70 درصد الی 80 درصد این مشکلات مربوط میشه به عدم کنترل امنیت سایت .

ابتدا باید کارهایی برای ارتقا امنیت انجام بدید . (مدیران اگر در قسمت نامناسب تاپیک زدم انتقال بدید ) .

1-انتخاب میزبان قوی
2-دسترسی کله پوشه ها (پرمیژن) :0555
3-دسترسی کله فایل های php :444
4-دسترسی فایل کانفیگ :444
5-دسترسی فایل htaccess. : 444
خب در این تاپیک میخوام روش جلوگیری از نفوذ با htaccess بهتون یاد بدم .

1- سعی کنید نامه پوشه کانفیگ رو تغییر بدید و داخل پوشه کانفیگ رمز و پسورد های دروغین بگذارید ...

حفاظت از پوشه کانفیگ با استفاده از :

کد php:
<files wp-config.php>
order allow,deny
deny from all
</files
جای
کد php:
wp-config.php 

نام پوشه کانفیگ خود را قرار بدید .

پوشه wp-includes دارای تعداد زیادی فایل های مهم وردپرس هست که برای اجرای وردپرس استفاده میشن.این پوشه نیاز به دیده شدن ندارد. برای حفاظت از آن دستور زیر رو داخل htaccess. قرار بدید

کد php:
# Block the include-only files
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase 
/
RewriteRule ^wp-admin/includes/ - [F,L]
RewriteRule !^wp-includes/ - [S=3]
RewriteRule ^wp-includes/[^/]+.php$ - [F,L]
RewriteRule ^wp-includes/js/tinymce/langs/.+.php - [F,L]
RewriteRule ^wp-includes/theme-compat/ - [F,L]
</
IfModule

جلوگیری از نمایش محتویات فایل ها با استفاده از دستور :
دستور کوتاهیست ولی مهم هست به نظر بنده .

کد php:
Options All -Indexes 

حفاظت از htaccess :

کد php:
<Files .htaccess>
order allow,deny
deny from all
</Files

مرگ بر قطع خنده های روشن علیرضا - مرگ بر گلوله ای که خط کشید روی خاطرات آرمیتا - یک کلام ... مرگ بر آمریکا

[تصویر:  mg70af1bcgm1cg1n1b.png]

.:: راه که میروم مدام پشت سرم را نگاه میکنم... دیوانه که نیستم... خنــجر از پشت خورده ام ::.

< < < ما همیشه شاگردیم > > >
پاسخ
تبلیغات
تبلیغات ارزان تبیلغات
#2
جلوگیری از استفاده پهنای باند شما :

کد php:
# Prevent image hotlinking script. Replace last URL with any image link you want.
RewriteEngine on
RewriteCond 
%{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourwebsite.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourotherwebsite.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ http://i.imgur.com/MlQAH71.jpg [NC,R,L] 

با دستور Htaccess. زیر میتونید از حملات SQL injection , XSS , RFI جلوگیری کنید البته تا حدی :


کد php:
ServerSignature Off
 Options 
-Indexes
 

 
# Enable rewrite engine
 
RewriteEngine On
 

 
# Block suspicious request methods
 
RewriteCond %{REQUEST_METHOD} ^(HEAD|TRACE|DELETE|TRACK|DEBUG) [NC]
 
RewriteRule ^(.*)$ - [F,L]
 

 
# Block WP timthumb hack
 
RewriteCond %{REQUEST_URI} (timthumb\.php|phpthumb\.php|thumb\.php|thumbs\.php) [NC]
 
RewriteRule . - [S=1]
 

 
# Block suspicious user agents and requests
 
RewriteCond %{HTTP_USER_AGENT} (libwww-perl|wget|python|nikto|curl|scan|java|winhttp|clshttp|loader) [NC,OR]
 
RewriteCond %{HTTP_USER_AGENT} (<|>|'|%0A|%0D|%27|%3C|%3E|%00) [NC,OR]
 RewriteCond  %{HTTP_USER_AGENT}  (;|<|>|'
|"|\)|\(|%0A|%0D|%22|%27|%28|%3C|%3E|%00).*(libwww-perl|wget|python|nikto|curl|scan|java|winhttp|HTTrack|clshttp|archiver|loader|email|harvest|extract|grab|miner)  [NC,OR]
 RewriteCond %{THE_REQUEST} \?\ HTTP/ [NC,OR]
 RewriteCond %{THE_REQUEST} \/\*\ HTTP/ [NC,OR]
 RewriteCond %{THE_REQUEST} etc/passwd [NC,OR]
 RewriteCond %{THE_REQUEST} cgi-bin [NC,OR]
 RewriteCond %{THE_REQUEST} (%0A|%0D) [NC,OR]
 

 # Block MySQL injections, RFI, base64, etc.
 RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=http:// [OR]
 RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=(\.\.//?)+ [OR]
 RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=/([a-z0-9_.]//?)+ [NC,OR]
 RewriteCond %{QUERY_STRING} \=PHP[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12} [NC,OR]
 RewriteCond %{QUERY_STRING} (\.\./|\.\.) [OR]
 RewriteCond %{QUERY_STRING} ftp\: [NC,OR]
 RewriteCond %{QUERY_STRING} http\: [NC,OR]
 RewriteCond %{QUERY_STRING} https\: [NC,OR]
 RewriteCond %{QUERY_STRING} \=\|w\| [NC,OR]
 RewriteCond %{QUERY_STRING} ^(.*)/self/(.*)$ [NC,OR]
 RewriteCond %{QUERY_STRING} ^(.*)cPath=http://(.*)$ [NC,OR]
 RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
 RewriteCond %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR]
 RewriteCond %{QUERY_STRING} (\<|%3C).*iframe.*(\>|%3E) [NC,OR]
 RewriteCond %{QUERY_STRING} (<|%3C)([^i]*i)+frame.*(>|%3E) [NC,OR]
 RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [NC,OR]
 RewriteCond %{QUERY_STRING} base64_(en|de)code[^(]*\([^)]*\) [NC,OR]
 RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
 RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2}) [OR]
 RewriteCond %{QUERY_STRING} ^.*(\[|\]|\(|\)|<|>).* [NC,OR]
 RewriteCond %{QUERY_STRING} (NULL|OUTFILE|LOAD_FILE) [OR]
 RewriteCond %{QUERY_STRING} (\./|\../|\.../)+(motd|etc|bin) [NC,OR]
 RewriteCond %{QUERY_STRING} (localhost|loopback|127\.0\.0\.1) [NC,OR]
 RewriteCond %{QUERY_STRING} (<|>|'|%0A|%0D|%27|%3C|%3E|%00) [NC,OR]
 RewriteCond %{QUERY_STRING} concat[^\(]*\( [NC,OR]
 RewriteCond %{QUERY_STRING} union([^s]*s)+elect [NC,OR]
 RewriteCond %{QUERY_STRING} union([^a]*a)+ll([^s]*s)+elect [NC,OR]
 RewriteCond  %{QUERY_STRING}  (;|<|>|'|"
|\)|%0A|%0D|%22|%27|%3C|%3E|%00).*(/\*|union|select|insert|drop|delete|update|cast|create|char|convert|alter|declare|order|script|set|md5|benchmark|encode)  [NC,OR]
 
RewriteCond %{QUERY_STRING} (sp_executesql) [NC]
 
RewriteRule ^(.*)$ - [F,L

مرگ بر قطع خنده های روشن علیرضا - مرگ بر گلوله ای که خط کشید روی خاطرات آرمیتا - یک کلام ... مرگ بر آمریکا

[تصویر:  mg70af1bcgm1cg1n1b.png]

.:: راه که میروم مدام پشت سرم را نگاه میکنم... دیوانه که نیستم... خنــجر از پشت خورده ام ::.

< < < ما همیشه شاگردیم > > >
پاسخ
#3
جلوگیری از حملات xss با دو دستور زیر :
این دو دوستور مقابل حملاتی نظیر Cross Site Scripting و data injection سایت شمارا ایمن میکند
کد php:
# Turn on IE8-IE9 XSS prevention tools
Header set X-XSS-Protection "1; mode=block" 

کد php:
# Only allow JavaScript from the same domain to be run.
# Don't allow inline JavaScript to run.
Header set X-Content-Security-Policy "allow 'self';" 

کد زیر جلوی کاراکترهای غیر استاندارد را خواهد گرفت و این عمل میتواند شما در مقابل حملاتی که با درخواست HTTP نفوذ پذیری را ممکن میکند ایمن کند.
کد php:
# Prevent use of specified methods in HTTP Request 
RewriteCond %{REQUEST_METHOD} ^(HEAD|TRACE|DELETE|TRACK) [NC,OR] 
# Block out use of illegal or unsafe characters in the HTTP Request 
RewriteCond %{THE_REQUEST} ^.*(\\r|\\n|%0A|%0D).* [NC,OR] 
# Block out use of illegal or unsafe characters in the Referer Variable of the HTTP Request 
RewriteCond %{HTTP_REFERER} ^(.*)(<|>|'|%0A|%0D|%27|%3C|%3E|%00).* [NC,OR] 
# Block out use of illegal or unsafe characters in any cookie associated with the HTTP Request 
RewriteCond %{HTTP_COOKIE} ^.*(<|>|'
|%0A|%0D|%27|%3C|%3E|%00).* [NC,OR] 
# Block out use of illegal characters in URI or use of malformed URI 
RewriteCond %{REQUEST_URI} ^/(,|;|:|<|>|">|"<|/|\\\.\.\\).{0,9999}.* [NC,OR] 
# Block out  use of empty User Agent Strings
# NOTE - disable this rule if your site is integrated with Payment Gateways such as PayPal 
RewriteCond %{HTTP_USER_AGENT} ^$ [OR] 
# Block out  use of illegal or unsafe characters in the User Agent variable 
RewriteCond %{HTTP_USER_AGENT} ^.*(<|>|'|%0A|%0D|%27|%3C|%3E|%00).* [NC,OR] 
# Measures to block out  SQL injection attacks 
RewriteCond %{QUERY_STRING} ^.*(;|<|>|'
|"|\)|%0A|%0D|%22|%27|%3C|%3E|%00).*(/\*|union|select|insert|cast|set|declare|drop|update|md5|benchmark).* [NC,OR] 
# Block out  reference to localhost/loopback/127.0.0.1 in the Query String 
RewriteCond %{QUERY_STRING} ^.*(localhost|loopback|127\.0\.0\.1).* [NC,OR] 
# Block out  use of illegal or unsafe characters in the Query String variable 
RewriteCond %{QUERY_STRING} ^.*(<|>|'|%0A|%0D|%27|%3C|%3E|%00).* [NC] 

مرگ بر قطع خنده های روشن علیرضا - مرگ بر گلوله ای که خط کشید روی خاطرات آرمیتا - یک کلام ... مرگ بر آمریکا

[تصویر:  mg70af1bcgm1cg1n1b.png]

.:: راه که میروم مدام پشت سرم را نگاه میکنم... دیوانه که نیستم... خنــجر از پشت خورده ام ::.

< < < ما همیشه شاگردیم > > >
پاسخ
#4
جلوگیری از اجرای php :
پیشنهاد میشود در پوشه های اپلود و عکس استفاده شود .
کد php:
Files *.php>
deny from all
</Files

برای گذاشتن رمز بر روی پنل مدیریت فایلی به نام .htpasswds بسازید و کدی که ساخته اید را داخل آن قرار دهید. سپس یک فایل .htaccess جدید هم بسازید و آن را باز کرده و کد زیر را به آن اضافه کنید:

کد php:
AuthName "Admins Only"
AuthUserFile /home/yourdirectory/.htpasswds/public_html/wp-admin/passwd
AuthGroupFile 
/dev/null
AuthType basic
require user putyourusernamehere
<Files admin-ajax.php>
Order allow,deny
Allow from all
Satisfy any 
</Files

مرگ بر قطع خنده های روشن علیرضا - مرگ بر گلوله ای که خط کشید روی خاطرات آرمیتا - یک کلام ... مرگ بر آمریکا

[تصویر:  mg70af1bcgm1cg1n1b.png]

.:: راه که میروم مدام پشت سرم را نگاه میکنم... دیوانه که نیستم... خنــجر از پشت خورده ام ::.

< < < ما همیشه شاگردیم > > >
پاسخ
#5
بستن دسترسی به php.ini

کد php:
<FilesMatch "^php5?\.(ini|cgi)$">
Order Deny,Allow 
Deny from All 
Allow from env
=REDIRECT_STATUS 
</FilesMatch

میتونید با غیر مجاز کاراکتر های غیر معتبر بلوکه امنیت سایت خود را افزایش دهید. برای اینکار کدهای زیر را در فایل htaccess وارد نمایید:

کد php:
RewriteEngine On 
RewriteBase 

RewriteCond %{THE_REQUEST} !^[A-Z]{3,9}\ [a-zA-Z0-9\.\+_/\-\?\=\&]+\ HTTP/ [NC
RewriteRule .* - [F,NS,L

مرگ بر قطع خنده های روشن علیرضا - مرگ بر گلوله ای که خط کشید روی خاطرات آرمیتا - یک کلام ... مرگ بر آمریکا

[تصویر:  mg70af1bcgm1cg1n1b.png]

.:: راه که میروم مدام پشت سرم را نگاه میکنم... دیوانه که نیستم... خنــجر از پشت خورده ام ::.

< < < ما همیشه شاگردیم > > >
پاسخ
#6
درود .
همیشه نمیشه جلو حملات گرفت ولی خب کمکی هم میکنه و بودنش ضرری ندارد .
جدیدا مد شده یک سری الاف وی پی اس میخرن و شروع به دیداس میکنند البته دیداس بستگی به سایت شما هم دارد مثلا به یک سایت تفریحی حملات زیادی نمیشد (نسبت به سایت امنیتی و ... ) و میتوان با دستور زیر جلو حملات رو گرفت یا مانع داون شدن سایت شد ...

کد php:
# drop Range header when more than 5 ranges.
# CVE-2011-3192
SetEnvIf Range (,.*?){5,} bad-range=1
RequestHeader 
unset Range env=bad-range
# optional logging.
#CustomLog insert-path-and-name-of-log common env=bad-range   

اکثر هکر با استفاده از خطا های
php
اطلاعات زیادی کسب کرده و شروع به حمله میکنند که با کد زیر مانع نمایش خطا ها میشود

کد php:
 #supress php errors php_flag display_startup_errors off php_flag display_errors off php_flag html_errors off php_value docref_root 0 php_value docref_ext 0   
کد بالا رو در روت در اخر اچ تی اکسس قرار بدید .

توجه : در سرور هایی که کد بالا اجرا نشود ممکن هست ارور بدهد .

مرگ بر قطع خنده های روشن علیرضا - مرگ بر گلوله ای که خط کشید روی خاطرات آرمیتا - یک کلام ... مرگ بر آمریکا

[تصویر:  mg70af1bcgm1cg1n1b.png]

.:: راه که میروم مدام پشت سرم را نگاه میکنم... دیوانه که نیستم... خنــجر از پشت خورده ام ::.

< < < ما همیشه شاگردیم > > >
پاسخ
#7
جلوگیری از اسکن سایت با اسکنر های :
dirbuster - sqlmap - nessus - WAppEx - Havij - Albaloo Web vulnerability Scanner - whatweb - webshag و ...

کد php:
RewriteEngine On
<IfModule mod_rewrite.c>
RewriteCond %{HTTP_USER_AGENT} ^w3af.sourceforge.net [NC,OR]
RewriteCond %{HTTP_USER_AGENTdirbuster [NC,OR]
RewriteCond %{HTTP_USER_AGENTnikto [NC,OR]
RewriteCond %{HTTP_USER_AGENTSF [OR]
RewriteCond %{HTTP_USER_AGENTsqlmap [NC,OR]
RewriteCond %{HTTP_USER_AGENTfimap [NC,OR]
RewriteCond %{HTTP_USER_AGENTnessus [NC,OR]
RewriteCond %{HTTP_USER_AGENTWAppEx [NC,OR]
RewriteCond %{HTTP_USER_AGENTHavij [NC,OR]
RewriteCond %{HTTP_USER_AGENTAlbaloo Web vulnerability Scanner [NC,OR]
RewriteCond %{HTTP_USER_AGENTAcunetix [NC,OR]
RewriteCond %{HTTP_USER_AGENTwhatweb [NC,OR]
RewriteCond %{HTTP_USER_AGENTOpenvas [NC,OR]
RewriteCond %{HTTP_USER_AGENTjbrofuzz [NC,OR]
RewriteCond %{HTTP_USER_AGENTlibwhisker [NC,OR]
RewriteCond %{HTTP_USER_AGENTwebshag [NC,OR]
RewriteCond %{HTTP:Acunetix-Product} ^WVS
RewriteRule 
^.* http://127.0.0.1/ [R=301,L]
</IfModule

مرگ بر قطع خنده های روشن علیرضا - مرگ بر گلوله ای که خط کشید روی خاطرات آرمیتا - یک کلام ... مرگ بر آمریکا

[تصویر:  mg70af1bcgm1cg1n1b.png]

.:: راه که میروم مدام پشت سرم را نگاه میکنم... دیوانه که نیستم... خنــجر از پشت خورده ام ::.

< < < ما همیشه شاگردیم > > >
پاسخ


پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان