yorman
Forum Replies Created
-
Hello @monachuslex
I just tested the plugin and it is working as intended [1].
It’s possible that the rules were added to the “.htaccess” file manually, in this case you’ll have to remove them manually as well. Or maybe the file permissions have changed since the last time the whitelist was modified, maybe the file is not writable anymore and that’s why the removal is not working.
You can modify the this file [2] using an (S)FTP client.
[1] https://i.imgur.com/UeGg8Ox.gif
[2]/wp-content/uploads/.htaccessI didn’t intend to start a popularity contest here
It’s not about popularity, it’s about how many websites will require an update.
I’ll subscribe to the other thread where you posted your bug report, and will wait for their comments. I personally don’t have a problem modifying Sucuri’s plugin code, but the less people we bother with an update the better.
Thank you.
Perhaps disabling the Last Successful Login feature in Sucuri settings by default
I understand your concern, but how can we consider this a problem in the Sucuri plugin and not a problem in the Members plugin?
I can certainly change the code but according to WordPress the Sucuri plugin has more than 400k+ active installations [1] while the Members plugin has 100k+ [2]. Considering this, I believe it’s better if they fix their plugin instead of us as the change will affect less people.
Did you talk with the maintainer of the “Members” plugin?
[1] https://wordpress.org/plugins/sucuri-scanner/advanced/
[2] https://wordpress.org/plugins/members/advanced/Why was the ability to block certain admin accounts […] removed from the plugin?
The option was misleading.
Many people complained to me last year about how the plugin was unable to block someone from accessing their website even though they blocked them using this option. The original idea was to reduce the number of “failed logins”, not to block the user, but people understood it differently.
I didn’t have enough time to keep maintaining that part of the code, so I took the decision to remove it all together, and my co-workers agreed with the change. This allowed me to focus more on implementing new and better features for the Sucuri Firewall.
Incidentally, the “Block” button still shows up
Thank you, I’ll remove the button in the next update.
Please don’t tell me it’s to encourage people to use Sucuri’s (paid) web application firewall service instead.
That wasn’t the intension, but now that you mention it, it does seems unnecessary to maintain two different code bases to offer the same feature. Even more when one of the implementations works several times better than the other one. For instance, Sucuri Firewall allows you to control —in a more granular way— when and how to block the malicious requests.
The good thing is, the code is still available here [1]. And since the project open-source, anyone can request the addition of the code back to the plugin, using this form [2]. However, I would prefer if the person makes the appropriate changes to remove the misleading parts from the interface.
[1] https://github.com/Sucuri/sucuri-wordpress-plugin/commit/59cb8f9
[2] https://github.com/Sucuri/sucuri-wordpress-plugin/pullsI searched online and could only find these references:
- http://ditted24.rssing.com/chan-12949233/all_p804.html
- http://ditted24.rssing.com/chan-12949233/all_p854.html
For what I can read there, the file is benign.
You can select it and “mark as fixed” using the actions available at the bottom of the “WordPress Integrity” report. The scanner will ignore this file on future scans.
If you really want to get rid of it, I recommend you to use a “file watcher” to monitor that directory to see when and how the file is created/modified/deleted. This will give you enough information to determine both its purpose and how it turns invisible when you inspect the directory via FTP or with a File Manager.
Let me know if you need more information.
The short term solution is disable Sucuri
Why not disable the redirection instead?
There’s an option in the settings page to do that, under “Alerts”.
Marking as “resolved” as there’s a solution available.
Hello @pudbat
Internal servers errors, identified by the HTTP status code “500” are very difficult to troubleshoot because they are ambiguous by nature. If you have access to the “error_log” file that PHP generates when an error occurs, please share its content.
If all your plugins are free, please send me the list of all the ones that are currently active so I can check if there are incompatibilities among them that would cause the ”Sucuri Scanner” to trigger an internal server error.
If one or more of your plugins are premium, you’ll have to run the tests in your own website. Patiently disable all of them except “Sucuri Scanner”, then enable the other plugins, one at a time, each time check if it works okay along with the “Sucuri Scanner”. Once you find the plugin with the incompatibility, let me know and I will continue the investigation.
Your website is using CloudFlare, and someone —maybe you— enabled an option that forces CloudFlare to return a “503 Service Temporarily Unavailable” error message until the user who’s visiting the website turn JavaScript on.
If you visit your website in a new browser session, you’ll notice CloudFlare shows this page [1] for a few seconds while it creates some cookies to track the user and to make sure that the browser has JavaScript enabled, among other checks that they are not disclosing.
When Sucuri is scanning your website for malware, it communicates with your website in a way that makes it impossible to enable JavaScript, this forces CloudFlare to keep returning a 503 error message. Unfortunately, we cannot change this right now, you’ll not be able to scan your website using Sucuri SiteCheck.
Marking this ticket as “won’t fix” for now.
Thank you for your understanding.
Are you talking about this — https://i.imgur.com/mji86TP.jpg ?
I went ahead and create a new website, installed both plugins, and clicking multiple public pages as well as pages inside the admin dashboard. I switched among 3 different user accounts and was unable to reproduce the error.
I searched the message “Sorry, you are not allowed to access this page” on the entire source code and could only find references to it in WordPress core files (see the list below) which means the message is not rendered by any of these plugins, but one of them may be triggering it somehow.
wp-admin/network/sites.php(line 14)wp-admin/network/sites.php(line 126)wp-admin/network/settings.php(line 17)wp-admin/network/index.php(line 17)wp-admin/network/upgrade.php(line 36)wp-admin/network/users.php(line 14)wp-admin/network/users.php(line 23)wp-admin/network/users.php(line 44)wp-admin/network/users.php(line 57)wp-admin/network/users.php(line 117)wp-admin/network/site-settings.php(line 30)wp-admin/network/user-new.php(line 34)wp-admin/network/site-info.php(line 32)wp-admin/network/site-themes.php(line 53)wp-admin/network/site-users.php(line 46)wp-admin/includes/menu.php(line 342)wp-admin/my-sites.php(line 16)
Please provide a step-by-step of how to reproduce this error.
[…] Concern remains
I’ll make sure this case is taken in consideration by a manager, but I predict that several days will pass before we can provide a definite solution knowing that it’s not entirely on our hands.
How many times does Sucuri’s malware checker ping a website (or Cloudlflare, if activated) on a daily basis?
The plugin sends, by default, one request to SiteCheck every 24 hours. This request triggers a chain of events that produces at least 14 additional HTTP requests (or more if the scanner detects more suspicious data). From these 14 requests only 2 contain the Google Bot User-Agent.
However, because SiteCheck is a public service [1] anyone in the world with an Internet connection can request a scan even if you don’t have the plugin installed. For example, you can scan my personal website [2] which doesn’t even use WordPress.
Our Sucuri Malware Scans are being performed via the iThemes Security Pro plugin, Is Sucuri affiliated or associated with them?
Aside from the fact that their plugin is using Sucuri’s public API service, I don’t know if they have a affiliated with the company. As a programmer, I tend to pay attention to the engineering side of things more than the business. If you chat with the Sucuri sales team [3] they may have a better answer.
Perhaps your conversation with them will yield better results
I hope so, I’ll update as soon as I know anything.
[1] https://sitecheck.sucuri.net/
[2] https://sitecheck.sucuri.net/results/cixtor.com
[3] https://sucuri.net/ (live chat at the bottom)Hello @jetxpert , the ticket that you linked has nothing to do this with this one.
Sucuri: Please fix this.
There is nothing to fix, the plugin is not broken, there is no bug. The author of this ticket just wants me to include extra information in the logs that the plugin is collecting when someone is trying to brute-force the WordPress user login.
That being said, I will accept the feature request and add an option to increase the data collection in your own web server, this extra data will be sent to Sucuri and used to complement the information in the logs, which is what the original poster is asking for.
It will take me a few days before I can implement this option as I have other things in my “TODO” list with more priority. I’ll update this ticket when the new feature is implemented and released.
Hello @jetxpert thank you for your message,
This is a serious bug with Sucuri […]
I don’t think this is a serious bug.
Let me give you an analogy to explain:
If your website is your house, and you hire me to check your house every day to see if it’s been infected with malware, but you don’t give me the keys to enter, the only thing I can do is knock on your door and talk with whoever is in the house to see if everything is okay.
One day, I discover that some burglars are entering houses in your neighborhood, they are doing it by using masks that allow them to pass as familiar faces to whoever is opening the door —(In this analogy, the mask is the “User-Agent” of anyone’s web browser)—. I still don’t have the keys to your house, so the only thing I can do to help is to use the same mask as the burglar to see if this trick works in your house, in which case I will consider your house as compromised.
Now, let’s say you’ve decided to put a fence around your house —(let’s call this fence CloudFlare)—. With this fence, I cannot even knock on your door, so I send you a letter saying “Sorry, I cannot check your house, my access is Forbidden”.
You see where I’m going with this?
As I explained in my previous comment, there is a type of infection that reacts to the User-Agent in the request. This allows the malware to hide itself from anyone but web crawlers like Google Bot, Bing Bot, Yandex Bot, etc. The easiest way for Sucuri to check if a website is infected with this malware is to send a request pretending to be one of these web crawlers.
As a precaution, we have blocked these IPs (used by Sucuri) and reported them publicly as “abusive.”
Actually, instead of blocking Sucuri’s IPs, you could just instruct CloudFlare to let any request coming from Sucuri in, that is if you really want the scanner to check if your website is infected with malware, otherwise you can keep them blocked.
Cloudflare is a highly reputable company. It’s not their issue. They are reporting above IPs as “Fake Google Bots.”
I agree, both Sucuri and CloudFlare are working as expected.
This ticket or request, therefore, is not solved. Please re-open it and implement a fix to eliminate this issue. Recommend contacting Google, Amazon, Cloudflare, and iThemes to find a solution.
I can mark the ticket as “not resolved” and contact CloudFlare to see if they want to work with Sucuri to implement an internal whitelist for Sucuri SiteCheck (which to me is unnecessary considering that CloudFlare customers can already whitelist an IP by themselves). Google, Amazon and iThemes have nothing to do here.
I’ll update this ticket when I get an answer from CloudFlare.
I just tested the functionality of the “Alerts Recipient” option in 4 different websites, each one with 6 different email addresses, and all of them received the messages as expected.
[…] only the primary admin account ever receives the alerts
This is good, this tells us the feature is working.
The plugin doesn’t sends the mails by itself, it passes them to WordPress using a library that it comes bundled with called PHPMailer [1], then WordPress executes some filters and sends the mails.
The plugin stores all the email addresses in the same variable, so there is only two outcomes: either the operation succeeds for all the emails or fails for all of them.
Because you are receiving the alerts in at least one inbox, we can assume that the other emails are also receiving the alert, but the message is being blocked by something outside of the scope of the plugin, maybe their corresponding mail provider, another plugin, or your own server.
Troubleshooting and Possible Solution
Take one of the alerts that you’ve received in your admin account. Inspect the source code of the email and/or the headers, here is a step-by-step on how to do it on Gmail [2]. The “To” field should contain the list of all the emails that the plugin is sending the alerts to, then…
- If you can see more than one email in the “To” field, it means the feature works but the mail provider of the other emails is blocking the message.
- If you can see only one email in the “To” field, it means the plugin didn’t save the emails that you wanted to add to the list. You can fix this by granting write permissions to this file [3].
Let me know if you need more information.
[1] https://codex.wordpress.org/Plugin_API/Action_Reference/phpmailer_init
[2] https://support.google.com/mail/answer/29436
[3]/wp-content/uploads/sucuri/sucuri-settings.phpThere is a type of spam that hides from regular HTTP requests by checking if the User-Agent and/or IP address matches certain criteria.
For example, the malware could be checking if the User-Agent is the same as the one that Google uses in their web crawler, this way, if Google is scanning your website the malware will render the malicious text, but if it’s not then it renders the normal website.
Check all the “.htaccess” files that you can find your web server (all of them, not just the one in the root). There could be malicious conditions there that could be triggering or hiding the malicious code from you. If you cannot find any suspicious conditions in the access control files, then keep scanning the source code for similar conditions, and then the database.
Here’s an article [1] that explains how to clean your website from malware.
Let me know if you need more information.
Hello @cmyla , I investigated and found this:
- The value for the “Website” is added to the mail here [1]
- Variable
$website[2] is set using functionself::getDomain()[3] - This function uses
get_site_url()[4] which is provided by WordPress - WordPress uses
is_ssl()[5] to choose either “http” or “https”
The conclusion is, either WordPress is broken or your website is mis-configured, because the HTTP protocol in the website URL is selected using WordPress‘ own logic which basically checks if the web server is setting the correct global variables via
$_SERVER, more specifically$_SERVER['HTTPS']. Please refer to the WordPress documentation to know how that function checks for the availability of TLS.If your web server is setting the correct variables, a possible explanation for this issue is that your website is not enforcing HTTPS, even though it’s configured. I suggest you to contact your hosting provider, and send them this information so they can provide you with a solution.
Because this is not an error with the plugin, I will mark this ticket as resolved. Let me know if you need more information.
[1] https://github.com/Sucuri/sucuri-wordpress-plugin/blob/ceaf0d2e4ff46c4ec32a2c069f2138643809e52e/src/mail.lib.php#L212
[2] https://github.com/Sucuri/sucuri-wordpress-plugin/blob/ceaf0d2e4ff46c4ec32a2c069f2138643809e52e/src/mail.lib.php#L173
[3] https://github.com/Sucuri/sucuri-wordpress-plugin/blob/ceaf0d2e4ff46c4ec32a2c069f2138643809e52e/src/base.lib.php#L551-L567
[4] https://developer.wordpress.org/reference/functions/get_site_url/
[5] https://developer.wordpress.org/reference/functions/is_ssl/