OWASP ModSecurity CRS testing, troubleshooting, solutions and pending redesign work for the BPS and BPS Pro Plugins:
Major Redesign|ModSecurity CRS Proofing: The OWASP ModSecurity Core Rule Set installed on cPanel breaks numerous Forms/Features/Pages and other things in the BPS and BPS Pro plugins: A list of broken/fixed/pending Forms/Features/Pages is below. In order to speed up the process of getting new BPS and BPS Pro versions released as quickly as possible we are fixing the most critical broken Forms/Features/Pages first and will be releasing several BPS and BPS Pro version releases in stages until all BPS and BPS Pro Forms/Features/Pages are no longer being broken by the OWASP Mod Security CRS Ruleset installed on cPanel.
Solution Methods used:
New: ModSecurity CRS falsely sees legitimate htaccess code Form data as a threat. JavaScript Encryption|Decryption and PHP openssl_encrypt|openssl_decrypt to encrypt and decrypt htaccess code submitted in various BPS Forms that save and submit htaccess code. Form data is encrypted in POST Form submission to evade/bypass ModSecurity CRS detection and decrypted in the Form processing code.
New: ModSecurity CRS falsely sees some log file data as a threat. View Log buttons added to BPS Plugin pages with log files to allow BPS Plugin Page loading instead of loading Log files in an open state when loading BPS Plugin pages that contain log files. Pending additional log file data encryption|decryption redesign work for some BPS Plugin log file pages.
Pending: ModSecurity CRS falsely sees BPS Plugin page Body Response/Source Code as a threat. BPS Plugin page Body Response design for various BPS Plugin pages due to ModSecurity CRS detecting help text and BPS Plugin option setting names in the page Body/Source Code as malicious and blocking BPS Plugin pages from loading. Limiting the amount of false positives that ModSecurity CRS Anomaly Scoring sees in the Body Response/Source Code by breaking up BPS Plugin pages so that limited Response Body data/Source Code is outputted should allow the broken BPS Plugin pages to load by falling under the ModSecurity CRS Anomaly Scoring threshold number that blocks BPS Plugin pages from loading.
Security Modes Page:
Root Folder BulletProof Mode (RBM) Activate Form: ModSecurity CRS Proofed – Encryption|Decryption completed
Root Folder BulletProof Mode (RBM) Deactivate Form: ModSecurity CRS Proofed – Encryption|Decryption completed
wp-admin Folder BulletProof Mode (WBM) Activate Form: ModSecurity CRS Proofed – Encryption|Decryption completed
Plugin Firewall BulletProof Mode (PFW) Activate Form (BPS Pro): ModSecurity CRS Proofed – Encryption|Decryption completed
Uploads Anti-Exploit Guard BulletProof Mode (UAEG) Form (BPS Pro): ModSecurity CRS Proofed – Encryption|Decryption completed
Details: These Forms now decrypt encrypted htaccess code in the WP Database before processing file writing.
Custom Code Page:
Root Custom Code Form: ModSecurity CRS Proofed – Encryption|Decryption completed
Wp-admin Custom Code Form: ModSecurity CRS Proofed – Encryption|Decryption completed
UAEG Custom Code Form (BPS Pro): ModSecurity CRS Proofed – Encryption|Decryption completed
Custom Code Export Form: ModSecurity CRS Proofed – Encryption|Decryption completed
Details: ModSecurity CRS falsely sees legitimate htaccess code as malicous. BPS now uses encryption and decryption in these Forms to evade/bypass ModSecurity CRS detection.
htaccess File Editor Page:
secure.htaccess Form: ModSecurity CRS Proofed – Encryption|Decryption completed
default.htaccess Form: ModSecurity CRS Proofed – Encryption|Decryption completed
wpadmin-secure.htaccess Form: ModSecurity CRS Proofed – Encryption|Decryption completed
Your Current Plugins htaccess File Form (BPS Pro): ModSecurity CRS Proofed – Encryption|Decryption completed
Your Current Uploads htaccess File Form (BPS Pro): ModSecurity CRS Proofed – Encryption|Decryption completed
Your Current Root htaccess File Form: ModSecurity CRS Proofed – Encryption|Decryption completed
Your Current wp-admin htaccess File Form: ModSecurity CRS Proofed – Encryption|Decryption completed
Details: ModSecurity CRS falsely sees legitimate htaccess code as malicous. BPS now uses encryption and decryption in these Forms to evade/bypass ModSecurity CRS detection.
My Notes Page:
My Notes Form: ModSecurity CRS Proofed – Encryption|Decryption completed
Details: ModSecurity CRS falsely sees legitimate htaccess code as malicous. BPS now uses encryption and decryption in these Forms to evade/bypass ModSecurity CRS detection.
Security Log Page:
Security Log Form: Partially ModSecurity CRS Proofed – View Log button added to allow the Security Log page to load. Pending further Log file data encryption|decryption redesign work.
Details: ModSecurity CRS sees legitimate Security Log errors logged in the Security Log as malicious. The Security Log now has a View Log button to allow the Security Log page to load. Pending additional redesign work to ecrypt and decrypt log file data to allow viewing the Security Log file data. Pending further Log file data encryption|decryption redesign work.
Quarantine Page (BPS Pro):
View File Form: Pending additional redesign work
Restore File Form: Pending additional redesign work
Delete File Form: Pending additional redesign work
Details: ModSecurity CRS falsely sees legitimate file names and legitimate code in files in Quarantine as malicious when trying to view, restore or delete particular files in Quarantine. Pending additional redesign work.
System Info Page:
System Info Page Data Ouput: Pending additional redesign work
Details: The BPS System page is inaccessible due to ModSecurity CRS falsely seeing legitimate data output as malicious. Pending additional redesign work.
PHP Error Log Page (BPS Pro):
PHP Error Log Form: Partially ModSecurity CRS Proofed – View Log button added to allow the PHP Error Log page to load. Pending further Log file data encryption|decryption redesign work.
PHP Error Log Page: Pending additional redesign work
Details: ModSecurity CRS sees legitimate PHP errors logged in the PHP Error Log as malicious. The PHP Error Log now has a View Log button to allow the PHP Error Log page to load. Pending additional redesign work to ecrypt and decrypt log file data to allow viewing PHP Error log file data. ModSecurity CRS also looks at the Response Body ouput/Source Code of the PHP Error Log page itself and is falsely seeing BPS option setting names and help text as malicious. Pending further Log file data encryption|decryption redesign work. Pending additional Response Body/Page redesign work.