помогите с PHP
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
- мл. сержант
- Сообщения: 93
- Зарегистрирован: 2008-04-07 8:59:20
Re: помогите с PHP
zg, ты написал что в последнем скрипте radiofanat две уязвимости.
будь добр, укажи где.
спасибо.
будь добр, укажи где.
спасибо.
я не баба, я - мужик...
(это чтоб никто не путал)
(это чтоб никто не путал)
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
- lexy
- сержант
- Сообщения: 288
- Зарегистрирован: 2006-07-21 9:54:44
- Откуда: Волхов, ЛО
- Контактная информация:
Re: помогите с PHP
песональный взлом, как я понимаю, это когда есть конкретный ресурс - blackbox, в котором надо найти уязвимость, найти способ ее эксплуатации и, только после этого, поиметь его. Я говорю про массовость - огромное кол-во как корпаративных, так и персональных ресурсов использует готовые OSS движки (как этот форум, phpBB, к примеру). [Кста, если не изменяет память в 2006 его компрометировали из за не вовремя обновленного движка]zg писал(а):у меня нет, проблема в том что ты путаешь тёплое с мягким - вирусы явление массовое, персональный взлом явление единичное. Тебе как удобней чтоб тебя сломали, через дыру в бесплатном скрипте, бекдор и или через "добрый" совет на форуме?
![]()
Дык вот сплойты под эти движки можно найти даж на }{акер'е

ну знаешь ты на одну функцию больше.... это тебя спасло? она делает что-то кардинально отличное от приведенного мною кода?zg писал(а):lexy писал(а):$content=join("\n",file("content/".sprintf("%08d",$id).".dat"));я канешна тупой и нифига не умею, но есть такая функция как file_get_contents()

опечатка, палюсьzg писал(а):ну, не то что бы меня это смущало, скорее так и должно быть...lexy писал(а):if(!trim($content)){
$title=$head='Страница не найдена';
.....
$title=$head='Страница не найдена';![]()

совет правильный, почитать как правильно и безопасно писать web-приложения радиофанату действительно необходимо. НО! Зная по себе, когда только начинаешь влезать в эту тему - хочется получить мгновенный и эффектный результат, почувствовать себя Властелином Колец в своем virtualhost'e. Все с этого начинали. А про уязвимости - да есть, но только условно (в секцииzg писал(а): 2 radiofannat, в твоём скрипте уже на лицо 2 уязвимости, а когда ты закончишь делать скрипт, у тебя их будет в десятки раз больше. Не побрезгуй сходи на http://ru2.php.net/manual/ru/tutorial.firstpage.php , там много чего полезного есть
Код: Выделить всё
...............
всякий код...
пофиг какой...

2 radiofannat: не сцать! в этом деле главное не сцать и курить маны (штакет за штакетом)

2 zg: хорош может уже пикировать друг друга? вижу, ты такой же упертый как и не я

-
- полковник
- Сообщения: 5845
- Зарегистрирован: 2007-12-07 13:51:33
- Откуда: Верх-Нейвинск
Re: помогите с PHP
не ты это кто? да и не я первый началlexy писал(а):2 zg: хорош может уже пикировать друг друга? вижу, ты такой же упертый как и не я



-
- полковник
- Сообщения: 5845
- Зарегистрирован: 2007-12-07 13:51:33
- Откуда: Верх-Нейвинск
Re: помогите с PHP
при register_globals on инетерсный результат будет по ссылке файл.php?incsearch=1&name=Hello, а если учесть, что Hello можно заменить на любой html, то угроза XSS налицо, если конечно на сайте будут кукиlexy писал(а):А про уязвимости - да есть, но только условно (в секцииЭто еще anySQL просто нету.Код: Выделить всё
............... всякий код... пофиг какой...

- lexy
- сержант
- Сообщения: 288
- Зарегистрирован: 2006-07-21 9:54:44
- Откуда: Волхов, ЛО
- Контактная информация:
Re: помогите с PHP
Код: Выделить всё
<?
$web = $_GET['123'];
if ($web=="search")
{
$incsearch=1;
$name = "поиск"; //ето нужно БЫЛО добавить на верх!!!!
}
...............
всякий код...
пофиг какой...
?>
<HTML>
<HEAD>
<TITLE><? echo "$name ?></TITLE>
...............
<?
if($incsearch==1)
{
include 'search.php';
}
?>
И то! переменная name инициализуется, и переменная incsearch - тоже, вероятность -> к нулю.
-2. Расскажи ка поподробней, каким боком здесь XSS?- сорри был неправ ))))
а где вторая уязвимость?
-
- полковник
- Сообщения: 5845
- Зарегистрирован: 2007-12-07 13:51:33
- Откуда: Верх-Нейвинск
Re: помогите с PHP
про регистр глобалс, долго плакал... Регистр глобалс - настройка в пхп.ини, и никаким боком не связана с $_GET, кстати пример как узнать включена она или нет, есть прямо в мануале http://ru2.php.net/manual/ru/function.ini-get.php . Глобальные массивы _GET, _POST и т.д. ввели с определённой версии пхп, по-моему с 4. Нельзя утверждать, что регистр глобалс не включены, только потому, что используется _GET массив. С уверенностью можно утверждать, что регистр глобалс выключены, только с 6 пхп, там эту настройку просто ликвидируют. Во всех остальных версиях пхп нужно проверять, включена она или нет, но большество хостеров её включают, так как многие скрипты всё ещё её используют.lexy писал(а):исходя из того, что используется $_GET тогда register_globals off ( тем более в треде обсуждалось что его надо выключить) - это уязвимость раз.
И то! переменная name инициализуется, и переменная incsearch - тоже, вероятность -> к нулю.
внедрение javascript-кода через урл даёт возможность переслать куки на любой сайт-снифер, тут это можно сделать через переменную $namelexy писал(а):2. Расскажи ка поподробней, каким боком здесь XSS?
использование необъявленной переменной $incsearch, при том, что сравнение идёт небезопасное, это вторая уязвимостьlexy писал(а):а где вторая уязвимость?
- lexy
- сержант
- Сообщения: 288
- Зарегистрирован: 2006-07-21 9:54:44
- Откуда: Волхов, ЛО
- Контактная информация:
Re: помогите с PHP
ок! ну завязали уже
про register_globals писал же в контексте треда не раз предлагалось выключить, ссылки правильные на ман, но мне уже не нужны ))))))
$incsearch в контексте приведенного кода безопасна

про register_globals писал же в контексте треда не раз предлагалось выключить, ссылки правильные на ман, но мне уже не нужны ))))))
$incsearch в контексте приведенного кода безопасна
-
- полковник
- Сообщения: 5845
- Зарегистрирован: 2007-12-07 13:51:33
- Откуда: Верх-Нейвинск
Re: помогите с PHP
не принимай к сердцу, просто слезу прошиблоlexy писал(а):ок! ну завязали уже![]()
а это не столько тебе, сколько мне. Я ошибаюсь так часто, что приходится проверять и проверять.lexy писал(а):про register_globals писал же в контексте треда не раз предлагалось выключить, ссылки правильные на ман, но мне уже не нужны ))))))
неа не безопасноеlexy писал(а):$incsearch в контексте приведенного кода безопасна
вот пример безопасного использования
Код: Выделить всё
<?
// Заранее исзвестный список разделов
$razdely = array
(
'site' => 'Сайт',
'search' => 'Поиск',
);
// Раздел, который будет являтся разделом по-умолчанию
$defaultModule = 'site';
// Проверяем, есть ли в GET ссылка на страницу
$fromGet = isset($_GET['page']) ? $_GET['page'] : null;
// Если есть, И ЭТА СТРАНИЦА ЕСТЬ В РАЗДЕЛАХ
if ( $fromGet && isset($razdely[ $fromGet ]) )
{
// получаем эту страницу
$moduleId = $fromGet;
}
else
{
// иначе присваеваем модуль по-умолчанию
$moduleId = $defaultModule;
}
// выбираем имя модуля, которо однозначно объявлено в разделах сайта
$moduleName = $razdely[ $moduleId ];
?>
<html>
<title><?=$moduleName?></title>
<body>
<?
if ( !@include($moduleId .'.php') )
{
echo 'Файл раздела не удалось подключить.... :(';
}
?>
</body>

ЗЫ в коде возможны опечатки, так как код не проверялся...
- lexy
- сержант
- Сообщения: 288
- Зарегистрирован: 2006-07-21 9:54:44
- Откуда: Волхов, ЛО
- Контактная информация:
Re: помогите с PHP
дык это совсем другая техника )))))
но я бы еще инкапсулировал в классы, чтоб с global scope вообще не пересекаться (как ты меня и запалил в одном из кусков кода
)
но я бы еще инкапсулировал в классы, чтоб с global scope вообще не пересекаться (как ты меня и запалил в одном из кусков кода

с suhosin - вполнеlexy писал(а):
$incsearch в контексте приведенного кода безопасна
неа не безопасное
-
- полковник
- Сообщения: 5845
- Зарегистрирован: 2007-12-07 13:51:33
- Откуда: Верх-Нейвинск
Re: помогите с PHP
если руки кривые, то не надо использовать классы, имхо. Чтобы уметь проектировать классы, надо сначало потренироваться в C++, написать пару-тройку скриптов на классах, а только потом придёт понимание механизма ООП. Вопрос на засыпку - знаешь чем отличается php4 от php5? и C от C++?lexy писал(а):дык это совсем другая техника )))))
но я бы еще инкапсулировал в классы, чтоб с global scope вообще не пересекаться (как ты меня и запалил в одном из кусков кода)

http://www.zend.com/en/services/certification/
http://www.hardened-php.net/suhosin/how ... grade.html ухты шняга какаяlexy писал(а):с suhosin - вполнеlexy писал(а):
$incsearch в контексте приведенного кода безопасна
неа не безопасное

- lexy
- сержант
- Сообщения: 288
- Зарегистрирован: 2006-07-21 9:54:44
- Откуда: Волхов, ЛО
- Контактная информация:
Re: помогите с PHP
НУ и флейм! заткните нас уже кто нить!
про suhosin:
если не в курсе, из портов во фряхе он ставится автоматом с установкой PHP
про твои высказывания про классы, различия php4 и 5 и С++ я тебе уже высказал, за что и был награжден предупреждением от модератора.
если ты в инсте прошел курс по ООП, поочитал цитируемые ресурсы и т.п. но не знаешь толком собеседника, его знаний и квалификации не стоит высказываться оскорбительно, ИМХО это моветон. Сам то ZCE имеешь? ссылочку на профайл в Zend's Yellow Pages можно?

если не в курсе, из портов во фряхе он ставится автоматом с установкой PHP
про твои высказывания про классы, различия php4 и 5 и С++ я тебе уже высказал, за что и был награжден предупреждением от модератора.
если ты в инсте прошел курс по ООП, поочитал цитируемые ресурсы и т.п. но не знаешь толком собеседника, его знаний и квалификации не стоит высказываться оскорбительно, ИМХО это моветон. Сам то ZCE имеешь? ссылочку на профайл в Zend's Yellow Pages можно?
-
- лейтенант
- Сообщения: 680
- Зарегистрирован: 2007-02-20 8:30:03
- Контактная информация:
-
- лейтенант
- Сообщения: 680
- Зарегистрирован: 2007-02-20 8:30:03
- Контактная информация:
Re: помогите с PHP
а так да... ставиться видимо автоматом:
If you are running Gentoo Linux or FreeBSD Suhosin is already within your ports system.
truth is out there...
- lexy
- сержант
- Сообщения: 288
- Зарегистрирован: 2006-07-21 9:54:44
- Откуда: Волхов, ЛО
- Контактная информация:
Re: помогите с PHP
вкратце - здесь http://forum.antichat.ru/showpost.php?p ... ostcount=4kmb писал(а):а что этот патч делает? сухокин всмысле...
первоисточник тута http://www.suhosin.org/
Последний раз редактировалось lexy 2008-04-22 7:16:13, всего редактировалось 1 раз.
-
- полковник
- Сообщения: 5845
- Зарегистрирован: 2007-12-07 13:51:33
- Откуда: Верх-Нейвинск
Re: помогите с PHP
http://www.zend.com/store/education/cer ... =220260157 чего и тебе желаюlexy писал(а):Сам то ZCE имеешь? ссылочку на профайл в Zend's Yellow Pages можно?
- Alex Keda
- стреляли...
- Сообщения: 35439
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
Re: помогите с PHP
назначить чтоли обоих модераторами в этот форум...
чтоб как у нас с райвеном - ареа51 за три часа раз шесть переименовывалась
))
чтоб как у нас с райвеном - ареа51 за три часа раз шесть переименовывалась

Убей их всех! Бог потом рассортирует...
-
- полковник
- Сообщения: 5845
- Зарегистрирован: 2007-12-07 13:51:33
- Откуда: Верх-Нейвинск
Re: помогите с PHP
лучше только его, мне модераторство даром не надоlissyara писал(а):назначить чтоли обоих модераторами в этот форум...
- lexy
- сержант
- Сообщения: 288
- Зарегистрирован: 2006-07-21 9:54:44
- Откуда: Волхов, ЛО
- Контактная информация:
Re: помогите с PHP
чего и требовалось доказать. Старина Фрейд был правzg писал(а):http://www.zend.com/store/education/cer ... =220260157 чего и тебе желаюlexy писал(а):Сам то ZCE имеешь? ссылочку на профайл в Zend's Yellow Pages можно?


-
- полковник
- Сообщения: 5845
- Зарегистрирован: 2007-12-07 13:51:33
- Откуда: Верх-Нейвинск
Re: помогите с PHP
lexy писал(а):чего и требовалось доказать. Старина Фрейд был правТолько это не дает тебе право обвинять в криворукости других



Кстати, молодые люди, которые увлекаются чтением и цитированием фрейда, как правило, имеют большие комплексы по поводу одного места

Вместо того, чтобы мне тут чё-то доказывать лучше пройди сертификацию, много нового и полезного узнаешь

- lexy
- сержант
- Сообщения: 288
- Зарегистрирован: 2006-07-21 9:54:44
- Откуда: Волхов, ЛО
- Контактная информация:
Re: помогите с PHP
мля! да заткните вы уже нас!!!!!
на основании чего ты сделал вывод о моем возрасте?
я злюсь не на твои знания и профессионализм, т.к. не имею о них ни малейшего представления, (обрывки кода не в счет), а о твоей манере подачи информации в стиле боянистого анекдота, про графа Монте-Кристо и всех остальных
что и подтверждают (субъективно И для меня) прочитанные мной твои посты на этом форуме.
ЗЫ Вот и помогли с PHP

на основании чего ты сделал вывод о моем возрасте?

я злюсь не на твои знания и профессионализм, т.к. не имею о них ни малейшего представления, (обрывки кода не в счет), а о твоей манере подачи информации в стиле боянистого анекдота, про графа Монте-Кристо и всех остальных

ЗЫ Вот и помогли с PHP

-
- полковник
- Сообщения: 5845
- Зарегистрирован: 2007-12-07 13:51:33
- Откуда: Верх-Нейвинск
Re: помогите с PHP
я тебя люблю, ты такой милыйlexy писал(а): что и подтверждают (субъективно И для меня) прочитанные мной твои посты на этом форуме

-
- полковник
- Сообщения: 5845
- Зарегистрирован: 2007-12-07 13:51:33
- Откуда: Верх-Нейвинск
Re: помогите с PHP
jeehadina писал(а):zg, ты написал что в последнем скрипте radiofanat две уязвимости.
будь добр, укажи где.
спасибо.
Код: Выделить всё
<?
// Разбор граблей
// 1. Ты жёстко привязываешься к массиву _GET, но не проверяешь, а установлена ли эта переменная.
$web = $_GET['123'];
// Надо всегда делать проверку и присваевать дефолтное значение
$web = isset($_GET['123']) ? $_GET['123'] : null;
/* 2. Ты используешь нестрогое равенство, допускающее приведение типов, однако заведемо знаешь, что тут будет использоваться только тип "строка", поэтому нужно использовать строгое равестно ===, иначе будут проблемы, если web будет содержать целочисленное значение */
if ($web=="search")
{
$incsearch=1;
$name = "поиск"; //ето нужно БЫЛО добавить на верх!!!!
}
// 3. А если $web не равно search, то что будет в name и incsearch? ....
...............
всякий код...
пофиг какой...
?>
<HTML>
<HEAD>
<TITLE><? echo "$name ?></TITLE>
...............
<?
// 4. Опять нестрогое равенство, да ещё использование переменной, которая не была однозначно объявлена
if($incsearch==1)
{
include 'search.php';
}
// В пхп есть тип boolean, который отличается от всех остальных типов, лучше использовать его, а не int, если значения только 0 и 1
?>
- Alex Keda
- стреляли...
- Сообщения: 35439
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
Re: помогите с PHP
вы бы лучше оба проставили день рождения в профиле - тогда бы не возникало наездов на возраст.
или они обоснованные бы были...
или они обоснованные бы были...
Убей их всех! Бог потом рассортирует...
- lexy
- сержант
- Сообщения: 288
- Зарегистрирован: 2006-07-21 9:54:44
- Откуда: Волхов, ЛО
- Контактная информация:
Re: помогите с PHP
в профайле моей аськи все есть
Ищущий да обряще

Ищущий да обряще
-
- полковник
- Сообщения: 5845
- Зарегистрирован: 2007-12-07 13:51:33
- Откуда: Верх-Нейвинск
Re: помогите с PHP
да ну ))) тогда не интересно будет, а так интригаlissyara писал(а):вы бы лучше оба проставили день рождения в профиле - тогда бы не возникало наездов на возраст
