好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

php网页病毒清除办法 - php类库

php网页病毒清除办法

你的网页是不是经常被无故的在php,asp,html,js 等文件后台加上一些木马地址呢?我以前有个站就是这样,所以一恨之下写了这段代码,文章虽然有一点浪费资源了,但是总比我们手动清除要好吧,下面我为讲讲程序的清除病毒的原理吧.

首先们要读取 $checkFile 文件这个文章是判断一个文章 是否被感染了,如果是就会执行$savafile变量里面的txt文件路径的所有文件,进行按你infecFile病毒列表清除一次.

<?php   Class clear_virus{     //public $content;      public   $infectFile  = 'virus.txt' ; //病毒文件列表文件      public   $savefile     = "save.txt" ; //所在查看病毒的文件列表      public   $timep   = 'time.txt' ; //些记录清除病毒时间      public   $checkFile  = 'e.php' ; //这里是设置      public   $run    =0;     public   $virus_type ;     public   $replace   ;     public   $filepath  ;      public   $tag          =0;           function  open_file(){      $this ->read_virus();         $this ->check_File();      if ( $this ->run){        $this ->update_time();        $this ->read_file() ;           foreach ( $this ->filepath  as   $tmppath ){        if ( file_exists ( $tmppath )){         $tmp_file  = file_get_contents ( $tmppath );         print_r(  $this ->virus_type);                 for (  $i =0; $i <sizeof( $this ->virus_type); $i ++ ){            if (  strrpos ( $tmp_file , $this ->virus_type[ $i ])!== false){             $tmp_file  = str_replace ( $this ->virus_type[ $i ], '' , $tmp_file );             $this ->tag =1;                     }                   }           if (  $this ->tag ){            $handle  = fopen ( $tmppath , 'w' );           fwrite( $handle , $tmp_file );           fclose( $handle );           unset( $tmp_file );           }                    } else {        ;       }            }      }    }         function  check_File(){      if ( file_exists ( $this ->checkFile) ){       $temp  = file_get_contents ( $this ->checkFile) ;       echo   $temp ;        foreach (  $this ->virus_type  as   $v_tmp  ){         if (  strrpos ( $temp , $v_tmp )!== false ){          $this ->run =1;          break ;        }       }        echo   $this ->run;       unset( $temp );         } else {       $this ->show_error(5);     }    }         function  update_time(){      if ( file_exists ( $this ->timep) ){       $tmp_time  = date ( "Y-m-d H:i:s" ). chr (13). '|' ;       $tmp_fp   = fopen ( $this ->timep, 'a+' );      fwrite( $tmp_fp , $tmp_time );      fclose( $tmp_fp );         }         }             function  read_File(){        if ( file_exists ( $this ->savefile) ){          $this ->content =file( $this ->savefile);           if ( is_array ( $this ->content)){            $this ->filepath = $this ->content;           } else {        $this ->show_error(3);      }     } else {       $this ->show_error(4);     }     }             function  read_virus(){        if ( file_exists ( $this ->infectFile) ){          $this ->replace =file( $this ->infectFile);           if ( is_array ( $this ->replace)){            $this ->virus_type= $this ->replace;           } else {        $this ->show_error(1);      }     } else {       $this ->show_error(2);     }     }             function  show_error( $number ){      $array  =  array (       '1' => '病毒文件未不能读取!' ,       '2' => '病毒文件列表不存在!' ,       '3' => '文件列表不存了' ,       '4' => '查杀的文件不存' ,       '5' => $this -> $checkFile . '不存在了,请设置病毒感染文件'      ); //开源代码phpfensi测试数据       echo   $array [ $number ];    }         }    $virus  = new  clear_virus;    $virus ->open_file();  ?> 

查看更多关于php网页病毒清除办法 - php类库的详细内容...

  阅读:50次