Jozga
Forum Replies Created
-
I’d also like to know if this is possible
Forum: Plugins
In reply to: [BulletProof Security] W3 Total Cache – page:enhancedUnfortunately this error message doesn’t have a dismiss link, but I think so long as I enter the W3TC code in the custom code box rather than redeploying it it will be fine. Thanks for your help
Forum: Plugins
In reply to: [BulletProof Security] W3 Total Cache – page:enhancedOK so something odd is happening. I put the #begin code in the last custom code text box but then I unlock the htacess file and redeploy W3. It looks like it adds its code directly above the #begin.
I copy pasted the W3 code into the top/first custom code box and it works. That’s great and you can consider this thread closed/resolved and I’ll do it that way on my other sites.
I’m pretty sure I wasn’t making any mistakes with my usual way of redeploying W3 though, so it is a bit unusual that this occured. It has happened for every one of my sites (they are all on the same server, I always unlock then redeploy W3 rather than use the custom code box).
Forum: Plugins
In reply to: [BulletProof Security] W3 Total Cache – page:enhancedI’ve tried adding # BEGIN WordPress to the custom code box and creating a new secure htaccess, but the error persists.
If I view my htacces then # BEGIN WordPress is the last line and the W3 code is immediately above it (then above that is custom code to block xmlrpc).
If I delete my htaccess and disable bulletproof then I get no error message when I deploy W3TC, but as soon as I enable it and activate a secure htaccess it comes back.
Is this just a bug with W3?
Forum: Plugins
In reply to: [BulletProof Security] W3 Total Cache – page:enhancedHi, I did see that post, but does that apply to both error messages I am getting? I was OK dismissing the message about ‘required directives’ but the other message seems to say that disk enhanced caching isn’t working – or is that also a false alert? It can’t be dismissed but I could ignore it.
Forum: Plugins
In reply to: [BulletProof Security] XMLRPC troubleSorry, I’d been taking time over studying the results. It seems like the problem is completely resolved by using the bonus XML-RPC code but turning off BPS Logging.
OK well thanks again, glad that got sorted out. It was one of those occasions where I was pretty sure the problem was going to be a typo I had made or something.
yeah it is great, thanks a lot for your help – I’m happy with this. I appreciate the time you’ve taken and seeing as I use the tool a lot and got a fair amount of tech support I’ll upgrade to pro ASAP.
The cPanel tool seems to be happily logging 403s. The latest visitor tool shows the banned ip is still visiting 100s of times a minute but I didn’t realise that this would still show even if those visits were 403s so I guess that is all cool.
For what it’s worth it looks like another person had this exact same problem (as in, this same ip address causing slow wordpress server).
I’ve turned off BPS security logging and cpanel shows normal cpu, performance feels fine. Cpanel still shows a steady stream of visits from that IP but all seems OK.
(tried toggling the log on and off, almost immediately when on my cpu goes to 100 and 10 entry processes start).
I’m afraid I can’t disable cPanel stats on my account it seems.
ok will check
in my security log I see a constant stream of these:
>>>>>>>>>>> 403 POST Request Error Logged - August 18, 2013 - 11:45 pm <<<<<<<<<<< REMOTE_ADDR: 188.138.33.149 Host Name: loft9109.serverloft.com SERVER_PROTOCOL: HTTP/1.1 HTTP_CLIENT_IP: HTTP_FORWARDED: HTTP_X_FORWARDED_FOR: HTTP_X_CLUSTER_CLIENT_IP: REQUEST_METHOD: POST HTTP_REFERER: REQUEST_URI: /xmlrpc.php QUERY_STRING: HTTP_USER_AGENT: GoogleBot/1.0
As well as my own one.
But the thing is, I can see the performance impact immediately if I use the secure htaccess – cpanel shows 100% cpu usage, but even aside from that, my site barely loads. If I use the default with the same allow/deny code it instantly performs fine. Could it be (sorry for amateur guesswork here) that the secure htaccess causes some other logging or entry process or something that causes the cpu usage while it is denying this IP?
I can block my own IP by adding it to the next line, but according to my logs it is not blocking the ip I want it to:
The way I am testing it at the moment is by checking the latest visitor stats in cPanel – with this active I get new visitors from that IP (also my server’s cpu usage goes to 100%). It shows as this:
188.138.33.149 /xmlrpc.php 8/18/13 11:57 PM 380 GoogleBot/1.0
But if I activate default htaccess and add the same deny code to it then it blocks the ip, no more visitors and usage back to normal.
So at the moment I am blocked (also from /xmlrpc.php) but I can see I am still getting hits from 188.138.33.149.
Hi, I’ve followed these directions but it does not block the ip.
If I click the edit tab, and then the ‘your current root htaccess file’ tab, I see this code:
# BULLETPROOF .49 >>>>>>> SECURE .HTACCESS # If you edit the BULLETPROOF .49 >>>>>>> SECURE .HTACCESS text above # you will see error messages on the BPS Security Status page # BPS is reading the version number in the htaccess file to validate checks # If you would like to change what is displayed above you # will need to edit the BPS /includes/functions.php file to match your changes # If you update your WordPress Permalinks the code between BEGIN WordPress and # END WordPress is replaced by WP htaccess code. # This removes all of the BPS security code and replaces it with just the default WP htaccess code # To restore this file use BPS Restore or activate BulletProof Mode for your Root folder again. # BEGIN WordPress # IMPORTANT!!! DO NOT DELETE!!! - B E G I N WordPress above or E N D WordPress - text in this file # They are reference points for WP, BPS and other plugins to write to this htaccess file. # IMPORTANT!!! DO NOT DELETE!!! - BPSQSE BPS QUERY STRING EXPLOITS - text # BPS needs to find the - BPSQSE - text string in this file to validate that your security filters exist # TURN OFF YOUR SERVER SIGNATURE ServerSignature Off # ADD A PHP HANDLER # If you are using a PHP Handler add your web hosts PHP Handler below # DO NOT SHOW DIRECTORY LISTING # If you are getting 500 Errors when activating BPS then comment out Options -Indexes # by adding a # sign in front of it. If there is a typo anywhere in this file you will also see 500 errors. Options -Indexes # DIRECTORY INDEX FORCE INDEX.PHP # Use index.php as default directory index file # index.html will be ignored will not load. DirectoryIndex index.php index.html /index.php # BPS ERROR LOGGING AND TRACKING # BPS has premade 403 Forbidden, 400 Bad Request and 404 Not Found files that are used # to track and log 403, 400 and 404 errors that occur on your website. When a hacker attempts to # hack your website the hackers IP address, Host name, Request Method, Referering link, the file name or # requested resource, the user agent of the hacker and the query string used in the hack attempt are logged. # All BPS log files are htaccess protected so that only you can view them. # The 400.php, 403.php and 404.php files are located in /wp-content/plugins/bulletproof-security/ # The 400 and 403 Error logging files are already set up and will automatically start logging errors # after you install BPS and have activated BulletProof Mode for your Root folder. # If you would like to log 404 errors you will need to copy the logging code in the BPS 404.php file # to your Theme's 404.php template file. Simple instructions are included in the BPS 404.php file. # You can open the BPS 404.php file using the WP Plugins Editor. # NOTE: By default WordPress automatically looks in your Theme's folder for a 404.php template file. ErrorDocument 400 /wp-content/plugins/bulletproof-security/400.php ErrorDocument 401 default ErrorDocument 403 /wp-content/plugins/bulletproof-security/403.php ErrorDocument 404 /404.php # DENY ACCESS TO PROTECTED SERVER FILES - .htaccess, .htpasswd and all file names starting with dot RedirectMatch 403 /\..*$ # WP-ADMIN/INCLUDES 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] # WP REWRITE LOOP START RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] # REQUEST METHODS FILTERED # This filter is for blocking junk bots and spam bots from making a HEAD request, but may also block some # HEAD request from bots that you want to allow in certains cases. This is not a security filter and is just # a nuisance filter. This filter will not block any important bots like the google bot. If you want to allow # all bots to make a HEAD request then remove HEAD from the Request Method filter. # The TRACE, DELETE, TRACK and DEBUG request methods should never be allowed against your website. RewriteEngine On RewriteCond %{REQUEST_METHOD} ^(HEAD|TRACE|DELETE|TRACK|DEBUG) [NC] RewriteRule ^(.*)$ - [F,L] # PLUGINS AND VARIOUS EXPLOIT FILTER SKIP RULES # IMPORTANT!!! If you add or remove a skip rule you must change S= to the new skip number # Example: If RewriteRule S=5 is deleted than change S=6 to S=5, S=7 to S=6, etc. # Adminer MySQL management tool data populate RewriteCond %{REQUEST_URI} ^/wp-content/plugins/adminer/ [NC] RewriteRule . - [S=12] # Comment Spam Pack MU Plugin - CAPTCHA images not displaying RewriteCond %{REQUEST_URI} ^/wp-content/mu-plugins/custom-anti-spam/ [NC] RewriteRule . - [S=11] # Peters Custom Anti-Spam display CAPTCHA Image RewriteCond %{REQUEST_URI} ^/wp-content/plugins/peters-custom-anti-spam-image/ [NC] RewriteRule . - [S=10] # Status Updater plugin fb connect RewriteCond %{REQUEST_URI} ^/wp-content/plugins/fb-status-updater/ [NC] RewriteRule . - [S=9] # Stream Video Player - Adding FLV Videos Blocked RewriteCond %{REQUEST_URI} ^/wp-content/plugins/stream-video-player/ [NC] RewriteRule . - [S=8] # XCloner 404 or 403 error when updating settings RewriteCond %{REQUEST_URI} ^/wp-content/plugins/xcloner-backup-and-restore/ [NC] RewriteRule . - [S=7] # BuddyPress Logout Redirect RewriteCond %{QUERY_STRING} action=logout&redirect_to=http%3A%2F%2F(.*) [NC] RewriteRule . - [S=6] # redirect_to= RewriteCond %{QUERY_STRING} redirect_to=(.*) [NC] RewriteRule . - [S=5] # Login Plugins Password Reset And Redirect 1 RewriteCond %{QUERY_STRING} action=resetpass&key=(.*) [NC] RewriteRule . - [S=4] # Login Plugins Password Reset And Redirect 2 RewriteCond %{QUERY_STRING} action=rp&key=(.*) [NC] RewriteRule . - [S=3] # TIMTHUMB FORBID RFI and MISC FILE SKIP/BYPASS RULE # Only Allow Internal File Requests From Your Website # To Allow Additional Websites Access to a File Use [OR] as shown below. # RewriteCond %{HTTP_REFERER} ^.*YourWebsite.com.* [OR] # RewriteCond %{HTTP_REFERER} ^.*AnotherWebsite.com.* RewriteCond %{QUERY_STRING} ^.*(http|https|ftp)(%3A|:)(%2F|/)(%2F|/)(w){0,3}.?(blogger|picasa|blogspot|tsunami|petapolitik|photobucket|imgur|imageshack|wordpress\.com|img\.youtube|tinypic\.com|upload\.wikimedia|kkc|start-thegame).*$ [NC,OR] RewriteCond %{THE_REQUEST} ^.*(http|https|ftp)(%3A|:)(%2F|/)(%2F|/)(w){0,3}.?(blogger|picasa|blogspot|tsunami|petapolitik|photobucket|imgur|imageshack|wordpress\.com|img\.youtube|tinypic\.com|upload\.wikimedia|kkc|start-thegame).*$ [NC] RewriteRule .* index.php [F,L] RewriteCond %{REQUEST_URI} (timthumb\.php|phpthumb\.php|thumb\.php|thumbs\.php) [NC] RewriteCond %{HTTP_REFERER} ^.*paperandchain.com.* RewriteRule . - [S=1] # BPSQSE BPS QUERY STRING EXPLOITS # The libwww-perl User Agent is forbidden - Many bad bots use libwww-perl modules, but some good bots use it too. # Good sites such as W3C use it for their W3C-LinkChecker. # Add or remove user agents temporarily or permanently from the first User Agent filter below. # If you want a list of bad bots / User Agents to block then scroll to the end of this file. RewriteCond %{HTTP_USER_AGENT} (havij|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|\\r|\\n) [NC,OR] RewriteCond %{REQUEST_URI} owssvr\.dll [NC,OR] RewriteCond %{HTTP_REFERER} (%0A|%0D|%27|%3C|%3E|%00) [NC,OR] RewriteCond %{HTTP_REFERER} \.opendirviewer\. [NC,OR] RewriteCond %{HTTP_REFERER} users\.skynet\.be.* [NC,OR] RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=https:// [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=https://(.*)$ [NC,OR] RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR] RewriteCond %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR] RewriteCond %{QUERY_STRING} (\<|%3C).*embed.*(\>|%3E) [NC,OR] RewriteCond %{QUERY_STRING} (<|%3C)([^e]*e)+mbed.*(>|%3E) [NC,OR] RewriteCond %{QUERY_STRING} (\<|%3C).*object.*(\>|%3E) [NC,OR] RewriteCond %{QUERY_STRING} (<|%3C)([^o]*o)+bject.*(>|%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} ^.*(\(|\)|<|>|%3c|%3e).* [NC,OR] RewriteCond %{QUERY_STRING} ^.*(\x00|\x04|\x08|\x0d|\x1b|\x20|\x3c|\x3e|\x7f).* [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} \-[sdcr].*(allow_url_include|allow_url_fopen|safe_mode|disable_functions|auto_prepend_file) [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] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # DENY BROWSER ACCESS TO THESE FILES # wp-config.php, bb-config.php, php.ini, php5.ini, readme.html # Replace Allow from 88.77.66.55 with your current IP address and remove the # pound sign # from in front of the Allow from line of code below to access these # files directly from your browser. <FilesMatch "^(wp-config\.php|php\.ini|php5\.ini|readme\.html|bb-config\.php)"> Order allow,deny Deny from all #Allow from 88.77.66.55 </FilesMatch> # IMPORTANT!!! DO NOT DELETE!!! the END WordPress text below # END WordPress # CUSTOM CODE BOTTOM HOTLINKING/FORBID COMMENT SPAMMERS/BLOCK BOTS/BLOCK IP/REDIRECT CODE - Your Custom htaccess code will be created here with AutoMagic Order Allow,Deny Deny from 188.138.33.149 Allow from all
Which is all right isn’t it? But I am certain that the ip is not blocked. Am I missing something else?
This is what works when tacked to the end of the default:
order allow,deny
deny from 188.138.33.149
allow from allI also tried this:
<FilesMatch “^(wp-comments-post\.php|\.php|\.js)”>
Order Allow,Deny
deny from 188.138.33.149
Allow from all
</FilesMatch>Forum: Fixing WordPress
In reply to: Database/processes using 100% server cpuHi Sabinou, thanks for your response.
I took the site offline for a few days, and then tried deleting the wordpress site and uploading a clean new one, so far this seems to have worked. I’ll keep monitoring it with the error log idea and see if the problem reoccurs.
Oddly, I am pretty sure I tried the clean install thing before I posted, so it seems like the only difference is that it was offline for a few days. This makes me a bit worried it will happen again but fingers crossed.
By the way, if possible could you elaborate on your last point about hosting specs? I have a master site with a master ftp account that can modify everything, then lots of addon domains in subfolders that I think can’t affect each other.