{"id":395178,"date":"2026-11-02T11:42:31","date_gmt":"2026-11-02T11:42:31","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/icesecurity\/"},"modified":"2026-11-02T11:41:59","modified_gmt":"2026-11-02T11:41:59","slug":"icecodero-security-scanner","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/icecodero-security-scanner\/","author":23249862,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.26.11.1","stable_tag":"1.26.11.1","tested":"7.1.4","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"ice Scanner Security","header_author":"iceCode","header_description":"Read-only security scanner: checks WordPress core and plugins against the official WordPress.org checksums, finds new or changed files, PHP code where it does not belong, risky settings, new administrators and injected scripts. It never changes anything on your site.","assets_banners_color":"601317","last_updated":"2026-11-02 11:41:59","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/icecode.ro\/module-wordpress\/","header_author_uri":"https:\/\/icecode.ro","rating":0,"author_block_rating":0,"active_installs":0,"downloads":163,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.26.11.1":{"tag":"1.26.11.1","author":"icecodero","date":"2026-11-02 11:41:59","revision":3779680}},"upgrade_notice":{"1.26.11.1":"<p>First public release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3779680,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3779680,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3779680,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3779680,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.26.11.1"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3779680,"resolution":"1","location":"assets","locale":"","width":1280,"height":820},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3779680,"resolution":"2","location":"assets","locale":"","width":1280,"height":720},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3779680,"resolution":"3","location":"assets","locale":"","width":1280,"height":760}},"screenshots":{"1":"The report: findings grouped by level, with the file and line.","2":"Viewing the code around a finding.","3":"Settings: automatic scan, what is checked, skipped folders and limits."}},"plugin_section":[],"plugin_tags":[153575,168808,1180,55021,600],"plugin_category":[54],"plugin_contributors":[290282],"plugin_business_model":[],"class_list":["post-395178","plugin","type-plugin","status-publish","hentry","plugin_tags-checksums","plugin_tags-file-integrity","plugin_tags-hack","plugin_tags-malware-scanner","plugin_tags-security","plugin_category-security-and-spam-protection","plugin_contributors-icecodero","plugin_committers-icecodero"],"banners":{"banner":"https:\/\/ps.w.org\/icecodero-security-scanner\/assets\/banner-772x250.png?rev=3779680","banner_2x":"https:\/\/ps.w.org\/icecodero-security-scanner\/assets\/banner-1544x500.png?rev=3779680","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/icecodero-security-scanner\/assets\/icon-128x128.png?rev=3779680","icon_2x":"https:\/\/ps.w.org\/icecodero-security-scanner\/assets\/icon-256x256.png?rev=3779680","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/icecodero-security-scanner\/assets\/screenshot-1.png?rev=3779680","caption":"The report: findings grouped by level, with the file and line."},{"src":"https:\/\/ps.w.org\/icecodero-security-scanner\/assets\/screenshot-2.png?rev=3779680","caption":"Viewing the code around a finding."},{"src":"https:\/\/ps.w.org\/icecodero-security-scanner\/assets\/screenshot-3.png?rev=3779680","caption":"Settings: automatic scan, what is checked, skipped folders and limits."}],"raw_content":"<!--section=description-->\n<p>ice Scanner Security checks your whole WordPress site and shows you, in plain words, what looks wrong and where. It <strong>only reads<\/strong>: it never changes, moves or deletes anything, so it is safe to run on a live site.<\/p>\n\n<p><strong>What it checks<\/strong><\/p>\n\n<ul>\n<li><strong>WordPress core<\/strong> \u2013 every core file is compared with the official WordPress.org checksums for your version and language. Modified files and unknown PHP files inside wp-admin and wp-includes are reported.<\/li>\n<li><strong>Plugins<\/strong> \u2013 plugins hosted on WordPress.org are compared with their official checksums. Premium or custom plugins are checked with code heuristics.<\/li>\n<li><strong>Themes<\/strong> \u2013 theme files are checked with code heuristics; inactive themes are listed so you can remove them.<\/li>\n<li><strong>Hidden code<\/strong> \u2013 code executed from encoded or user-supplied data, chained decoding, very long encoded strings, PHP code hidden in images or .ico files, code that creates administrators.<\/li>\n<li><strong>Uploads folder<\/strong> \u2013 PHP or other executable files, images containing PHP, SVG files with scripts, and whether running PHP from uploads is blocked.<\/li>\n<li><strong>Outside WordPress<\/strong> \u2013 unknown folders, public archives, database dumps and logs that anyone could download, leftover installers.<\/li>\n<li><strong>Configuration<\/strong> \u2013 .htaccess, .user.ini and php.ini rules that load PHP on every request, run images as PHP or redirect search engine visitors; drop-ins, must-use plugins, the file editor and WP_DEBUG.<\/li>\n<li><strong>Database<\/strong> \u2013 administrators (new ones are highlighted), open registration with a high default role, scripts or iframes saved in options and posts.<\/li>\n<li><strong>Changes<\/strong> \u2013 new or changed files since the previous scan.<\/li>\n<\/ul>\n\n<p><strong>Built for shared hosting<\/strong><\/p>\n\n<p>Large steps run in short slices, so a scan never hits the hosting time limit, even on big sites. You can set the time per slice, the largest file read and the folders to skip.<\/p>\n\n<p><strong>Easy to act on<\/strong><\/p>\n\n<ul>\n<li>Results are grouped as Critical, Warning and Info.<\/li>\n<li>Every finding shows the file and, for code, the line \u2013 click \"View\" to see the code around it.<\/li>\n<li>\"Ignore\" findings you have checked; they stay ignored in future scans.<\/li>\n<li>Download the report as a text file.<\/li>\n<li>Optional automatic scan (twice a day, daily or weekly) with an email only when new problems appear.<\/li>\n<\/ul>\n\n<p><strong>Translations<\/strong><\/p>\n\n<p>The plugin is ready for translation through translate.wordpress.org.<\/p>\n\n<p><strong>Developed by<\/strong> Poienariu Alin \u2013 <a href=\"https:\/\/icecode.ro\">iceCode<\/a>.<\/p>\n\n<h3>External services<\/h3>\n\n<p>To check the integrity of your files, the plugin downloads the official checksums from WordPress.org:<\/p>\n\n<ul>\n<li><code>api.wordpress.org\/core\/checksums\/<\/code> \u2013 checksums of the WordPress core files, for your WordPress version and language (through the WordPress function get_core_checksums()).<\/li>\n<li><code>downloads.wordpress.org\/plugin-checksums\/<\/code> \u2013 checksums of each installed plugin, for the installed version.<\/li>\n<\/ul>\n\n<p>Only the WordPress version, the site language and the plugin slugs and versions are sent \u2013 the same information WordPress itself sends when it checks for updates. No data about your site content, users or visitors is sent anywhere. These requests happen only when a scan runs (started by you or by the optional automatic scan).<\/p>\n\n<p>WordPress.org <a href=\"https:\/\/wordpress.org\/about\/privacy\/\">Privacy Policy<\/a>.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install the plugin from Plugins \u2192 Add New (search for \"ice Scanner Security\"), or upload the folder to <code>\/wp-content\/plugins\/<\/code>.<\/li>\n<li>Activate it.<\/li>\n<li>Go to <strong>ice Scanner Security<\/strong> in the dashboard menu and click <strong>Start a full scan<\/strong>.<\/li>\n<li>Optional: enable the automatic scan in the settings below the report.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20the%20scanner%20change%20or%20delete%20files%3F\"><h3>Does the scanner change or delete files?<\/h3><\/dt>\n<dd><p>No. Every check only reads files and the database. Fixing a problem is always your decision.<\/p><\/dd>\n<dt id=\"what%20does%20%22critical%22%2C%20%22warning%22%20and%20%22info%22%20mean%3F\"><h3>What does \"Critical\", \"Warning\" and \"Info\" mean?<\/h3><\/dt>\n<dd><p>Critical: very likely a hack or a dangerous setting, check it now. Warning: suspicious, worth checking. Info: useful to know (for example, the list of administrators).<\/p><\/dd>\n<dt id=\"a%20finding%20is%20a%20false%20positive.%20what%20can%20i%20do%3F\"><h3>A finding is a false positive. What can I do?<\/h3><\/dt>\n<dd><p>Click \"Ignore\" next to it. It will stay ignored in future scans; you can restore it from the \"Ignored\" filter.<\/p><\/dd>\n<dt id=\"my%20hosting%20antivirus%20removed%20the%20plugin%20files.%20why%3F\"><h3>My hosting antivirus removed the plugin files. Why?<\/h3><\/dt>\n<dd><p>A security scanner contains the code patterns it searches for, so some hosting antivirus tools (for example Imunify360 or cPGuard) may flag it. Add the folder <code>wp-content\/plugins\/icecodero-security-scanner<\/code> to the antivirus exceptions (allowlist) in your hosting control panel:<\/p>\n\n<ul>\n<li>cPGuard: cPanel \u2192 Security \u2192 cPGuard \u2192 Settings \u2192 Virus Scanner \u2192 Whitelist Files.<\/li>\n<li>Imunify360: the detected files are listed in cPanel \u2192 Imunify360; ask your hosting provider to add the folder to the Imunify360 ignore list.<\/li>\n<\/ul>\n\n<p>Then upload the plugin again.<\/p><\/dd>\n<dt id=\"the%20scan%20stops%20on%20a%20large%20site.\"><h3>The scan stops on a large site.<\/h3><\/dt>\n<dd><p>Lower \"Work time per step\" in the settings (for example to 10 seconds) if your hosting has a short time limit, and add large folders that do not need checking (backups, caches) to \"Skipped folders\".<\/p><\/dd>\n<dt id=\"does%20it%20slow%20down%20my%20site%3F\"><h3>Does it slow down my site?<\/h3><\/dt>\n<dd><p>No. The scanner runs only when you start it or when the optional automatic scan runs. It adds nothing to the pages your visitors see.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.26.11.1<\/h4>\n\n<ul>\n<li>First public release on WordPress.org.<\/li>\n<li>Versions use the format MAJOR.YY.MM.N (year, month and the number of the release in that month).<\/li>\n<\/ul>","raw_excerpt":"Read-only security scanner: checks core and plugins against the official checksums and finds hidden code, risky settings and new admins.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/395178","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=395178"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/icecodero"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=395178"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=395178"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=395178"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=395178"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=395178"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=395178"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}