Re[6]: Этот ваш PHP ****
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 15.03.10 12:37
Оценка: +1 :))) :))) :)
Здравствуйте, Mamut, Вы писали:

KV>>А о каком языке все знают, что он хороший? (это чтобы тема не загнулась)

M>Ну эта, C++ же. И только в рамках Qt!!

Не, это уже пройденный этап. Недавно случилось страшное и Шеридана потянуло в веб-технологии. Теперь он всем объясняет
Автор: Sheridan
Дата: 13.03.10
какими должны быть веб-стандарты
... << RSDN@Home 1.2.0 alpha 4 rev. 1437>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re: Этот ваш PHP ****
От: Anton Batenev Россия https://github.com/abbat
Дата: 15.03.10 01:07
Оценка: +1 :))) :)))
Здравствуйте, kochetkov.vladimir, Вы писали:

k> Буду краток, ибо из-за сабжа уже падаю с ног, завтра расскажу подробнее. Писал сегодня скрипт генерации баннеров для участников проекта Nemerle (Бейджи участников
Автор: kochetkov.vladimir
Дата: 10.03.10
): http://nemerle.rsdn.ru/banners/?t=PHP%20sucks%20outside!


И вообще, бэйджики для Nemerle, а виноват почему-то PHP — и делали бы на нем же
avalon 1.0rc3 rev 318, zlib 1.2.3
Этот ваш PHP ****
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 14.03.10 23:11
Оценка: -1 :))) :)
Буду краток, ибо из-за сабжа уже падаю с ног, завтра расскажу подробнее. Писал сегодня скрипт генерации баннеров для участников проекта Nemerle (Бейджи участников
Автор: kochetkov.vladimir
Дата: 10.03.10
): http://nemerle.rsdn.ru/banners/?t=PHP%20sucks%20outside!

Я в очередной раз не знаю, смеяться мне или плакать, от того, что есть язык, в котором такой код будет являться правильным:

<?php
$variable1 = variable2;
$variable3 = $variable1;
$variable3 += 10;
echo variable1."\n\r".$variable2."\n\r".$variable3;
?>


того, какой ответ выдает этот код и того, что этот язык еще и один из самых популярных

P.S: Да, вы правильно подумали. Я случайно пропустил знак доллара в паре мест и потом долго вдуплял, а с какого хрена у меня начали появляться строковые переменные в самых неожиданных местах и пропадать кусочки результатов вычислений
... << RSDN@Home 1.2.0 alpha 4 rev. 1437>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[4]: Этот ваш PHP ****
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 15.03.10 09:27
Оценка: :)))
Здравствуйте, Sheridan, Вы писали:

S>Приветствую, anton_t, вы писали:


a>> Язык, который позволяет делать такие глупые (и главное неизбежные) ошибки — плохой язык. Хотя ты, конечно, можешь сказать, что любишь гулять по граблям

S>Да, плохой язык. Об этом все знают.

А о каком языке все знают, что он хороший? (это чтобы тема не загнулась)
... << RSDN@Home 1.2.0 alpha 4 rev. 1437>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[5]: Этот ваш PHP ****
От: neFormal Россия  
Дата: 15.03.10 10:02
Оценка: +1 :))
Здравствуйте, kochetkov.vladimir, Вы писали:

S>>Да, плохой язык. Об этом все знают.

KV>А о каком языке все знают, что он хороший? (это чтобы тема не загнулась)

Python же..
...coding for chaos...
Re[6]: Этот ваш PHP ****
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 15.03.10 16:20
Оценка: :)))
Здравствуйте, LaptevVV, Вы писали:

LVV>Здравствуйте, kochetkov.vladimir, Вы писали:


a>>>> Язык, который позволяет делать такие глупые (и главное неизбежные) ошибки — плохой язык. Хотя ты, конечно, можешь сказать, что любишь гулять по граблям

S>>>Да, плохой язык. Об этом все знают.
KV>>А о каком языке все знают, что он хороший? (это чтобы тема не загнулась)
LVV>Дык компонентный же паскаль!!!

/me с благодарностью смотрит на небо за то, что оно не заставило его делать бейджики на компонентном паскале...
... << RSDN@Home 1.2.0 alpha 4 rev. 1446>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[10]: Этот ваш PHP ****
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 18.03.10 23:46
Оценка: 5 (2)
Здравствуйте, Sheridan, Вы писали:

S>Приветствую, kochetkov.vladimir, вы писали:


k>> Угу. Тебе уязвимости (XSS, доступ к исходникам скриптов, возможно LFI, возможно HTTP Response splitting) — сюда кидать или в личку?


S>Я в курсе, ибо никаких защит не делал

S>Давай сюда, и я поумнею, и другим интересно будет.

Ну, как знаешь...

XSS — на самом деле, можно взять любой параметр GET-запроса, который попадает на выход

Доступ к исходникам — нужно либо делать все, что содержит код, с расширением .php, либо запрещать доступ к этим файлам или размещать их выше корня хоста.

Расщепление HTTP-заголовка — появится, как только отключишь warning'и. Из варнингов также понятно, что id передается в file_get_contents file_put_contents проходя только экранирование magic_quotes'ами (либо чем-то аналогичным). Только благодаря тому, что там к этой строке еще добавляется '/names' у тебя сейчас нет LFI (local file include) и доступа к произвольному файлу ФС с правами веб-сервера.

Еще обратил внимание (но не проверял) на недостаточный контроль данных из кук (style). Скорее всего, там тот же самый набор уязвимостей.
... << RSDN@Home 1.2.0 alpha 4 rev. 1446>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[7]: Этот ваш PHP ****
От: Кодт Россия  
Дата: 16.03.10 14:13
Оценка: :))
Здравствуйте, Anton Batenev, Вы писали:

AB>Да, действительно:


Как там Шеридан говорил — "так *** PHP или руки?"
Перекуём баги на фичи!
Re[2]: Этот ваш PHP ****
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 15.03.10 09:27
Оценка: 2 (1)
Здравствуйте, Anton Batenev, Вы писали:

AB>Здравствуйте, kochetkov.vladimir, Вы писали:


k>> Буду краток, ибо из-за сабжа уже падаю с ног, завтра расскажу подробнее. Писал сегодня скрипт генерации баннеров для участников проекта Nemerle (Бейджи участников
Автор: kochetkov.vladimir
Дата: 10.03.10
): http://nemerle.rsdn.ru/banners/?t=PHP%20sucks%20outside!


AB>И вообще, бэйджики для Nemerle, а виноват почему-то PHP — и делали бы на нем же


Ну согласись, что под инфраструктурой Apache-MySQL-PHP (на которой крутится nemerle.org) сам nemerle выглядел бы несколько экстравагантно Вот переведем его на IIS/ASP.net, тогда беджики будет генерить код на nemerle, обещаю. Даже для сравнения их сюда могу запостить
... << RSDN@Home 1.2.0 alpha 4 rev. 1437>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[2]: Этот ваш PHP ****
От: Anton Batenev Россия https://github.com/abbat
Дата: 15.03.10 12:22
Оценка: 1 (1)
Здравствуйте, Mamut, Вы писали:

M> Обычно это ловится на девелопмент-сервере, где стоит вывод ошибок в E_ALL. Вылетит warning nипа undefined constant variable2 assumed variable $variable2 или типа того.


Не вылетает даже с E_STRICT (PHP 5.2.11) — похоже, это допустимое поведение.
avalon 1.0rc3 rev 318, zlib 1.2.3
Re[12]: Этот ваш PHP ****
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 19.03.10 16:29
Оценка: 1 (1)
Здравствуйте, Sheridan, Вы писали:

k>> Еще обратил внимание (но не проверял) на недостаточный контроль данных из кук (style). Скорее всего, там тот же самый набор уязвимостей.

S>Жду

$_COOKIE['style'] попадает в HTML без какой-либо предварительной обработки. По сути, это — перечисление, поэтому стоит проверять его значение на допустимые варианты, и, в случае, если оно содержит недопустимое, использовать default-стиль. В принципе, само по себе, оно не является серьезной уязвимостью, т.к. эксплуатировать его нереально. Однако, если (используя другую XSS на твоем сайте, например) атакующему удасться установить эту куку в что-то типа '>"><script>alert(0);</script> , то мы получим уже не отраженную XSS, а вполне себе активную, т.к. злонамеренный javascript будет исполняться каждый раз, когда жертва будет заходить на твой сайт, даже по нормальным ссылкам. Поэтому лучше это закрыть.

Начал прогонять сканером, но он, также как и я ничего больше не нашел. Пока

P.S: Зачем тебе 53-ий порт снаружи?
... << RSDN@Home 1.2.0 alpha 4 rev. 1446>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re: Этот ваш PHP ****
От: Sheridan Россия  
Дата: 14.03.10 23:59
Оценка: :)
Приветствую, kochetkov.vladimir, вы писали:

k> P.S: Да, вы правильно подумали. Я случайно пропустил знак доллара в паре мест и потом долго вдуплял, а с какого хрена у меня начали появляться строковые переменные в самых неожиданных местах и пропадать кусочки результатов вычислений


Ага, прямо по стопам Мамута. У того кронтаб виноват, а у тебя пхп
avalon 1.0rc3 rev 306, zlib 1.2.3 (17.12.2009 01:06:14 MSK +03:00)(Qt 4.6.0)
Matrix has you...
Re: Этот ваш PHP ****
От: Mamut Швеция http://dmitriid.com
Дата: 15.03.10 09:14
Оценка: +1
KV>Буду краток, ибо из-за сабжа уже падаю с ног, завтра расскажу подробнее. Писал сегодня скрипт генерации баннеров для участников проекта Nemerle (Бейджи участников
Автор: kochetkov.vladimir
Дата: 10.03.10
): http://nemerle.rsdn.ru/banners/?t=PHP%20sucks%20outside!


KV>Я в очередной раз не знаю, смеяться мне или плакать, от того, что есть язык, в котором такой код будет являться правильным:


KV>
KV><?php
KV>$variable1 = variable2;
KV>$variable3 = $variable1;
KV>$variable3 += 10;
KV>echo variable1."\n\r".$variable2."\n\r".$variable3;
KV>?>
KV>


KV>того, какой ответ выдает этот код и того, что этот язык еще и один из самых популярных


KV>P.S: Да, вы правильно подумали. Я случайно пропустил знак доллара в паре мест и потом долго вдуплял, а с какого хрена у меня начали появляться строковые переменные в самых неожиданных местах и пропадать кусочки результатов вычислений


Обычно это ловится на девелопмент-сервере, где стоит вывод ошибок в E_ALL. Вылетит warning nипа undefined constant variable2 assumed variable $variable2 или типа того.

Но согласен, что это должно быть не варнингом, а ошибкой.


dmitriid.comGitHubLinkedIn
Re[4]: Этот ваш PHP ****
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 15.03.10 11:46
Оценка: +1
Здравствуйте, Anton Batenev, Вы писали:

AB>Здравствуйте, kochetkov.vladimir, Вы писали:


k>> AB>PHPUnit_TextUI_TestRunner::run($sute);

k>> Угу. Для скрипта в три десятка строчек, чтобы поймать то, что должен ловить интерпритатор.

AB>А ты уверен, что он должен ловить и что это не является частью языка? Я вот не уверен (впрочем, я не большой знаток).


Дык в том-то и засада, что это является частью языка. Хотя кроме того, что это прямой путь к граблям, оно ничего полезного в язык не вносит, IMHO.
... << RSDN@Home 1.2.0 alpha 4 rev. 1437>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[5]: Этот ваш PHP ****
От: Mamut Швеция http://dmitriid.com
Дата: 15.03.10 11:49
Оценка: :)
a>>> Язык, который позволяет делать такие глупые (и главное неизбежные) ошибки — плохой язык. Хотя ты, конечно, можешь сказать, что любишь гулять по граблям
S>>Да, плохой язык. Об этом все знают.

KV>А о каком языке все знают, что он хороший? (это чтобы тема не загнулась)


Ну эта, C++ же. И только в рамках Qt!!


dmitriid.comGitHubLinkedIn
Re[2]: Этот ваш PHP ****
От: Eugeny__ Украина  
Дата: 15.03.10 14:28
Оценка: +1
Здравствуйте, elmal, Вы писали:


KV>>того, какой ответ выдает этот код и того, что этот язык еще и один из самых популярных

E>Ну дык это ... хочешь в языках с динамической типизацией уверенности что все хорошо — пиши тесты со 100 процентным покрытием . Еще префиксы помогают. На PHP писать — это тебе не на С++, на PHP все гораздо сложнее, на компилятор надеяться нельзя .

Ага. Учитывая, что пхп вообще интерпритируемый язык, на компилятор вообще странно надеяться.
Новости очень смешные. Зря вы не смотрите. Как будто за наркоманами подсматриваешь. Только тетка с погодой в завязке.
There is no such thing as a winnable war.
Re[5]: Этот ваш PHP ****
От: LaptevVV Россия  
Дата: 15.03.10 16:05
Оценка: :)
Здравствуйте, kochetkov.vladimir, Вы писали:

a>>> Язык, который позволяет делать такие глупые (и главное неизбежные) ошибки — плохой язык. Хотя ты, конечно, можешь сказать, что любишь гулять по граблям

S>>Да, плохой язык. Об этом все знают.
KV>А о каком языке все знают, что он хороший? (это чтобы тема не загнулась)
Дык компонентный же паскаль!!!
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[7]: Этот ваш PHP ****
От: Кодт Россия  
Дата: 16.03.10 14:12
Оценка: :)
Здравствуйте, Anton Batenev, Вы писали:

AB>Да, нашел — неправильно задал error_reporting. Вместо "E_ALL | E_STRICT" написал "E_ALL & E_STRICT".


Фрейдопятка! "сообщать обо всех ошибках И во всех подробностях".
Старый добрый когнитивный диссонанс между естественным и математическим выражением мыслей.
Перекуём баги на фичи!
Re[2]: Этот ваш PHP ****
От: Sheridan Россия  
Дата: 18.03.10 20:44
Оценка: :)
Приветствую, LaptevVV, вы писали:

LVV> Одной звездочки в названии явно не хватает!

LVV> php ***!
LVV> php ****!!
LVV> php ***** !!!
LVV>

За маты тут банят, а у тебя так в каждом предложении
avalon 1.0rc3 rev 306, zlib 1.2.3 (17.12.2009 01:06:14 MSK +03:00)(Qt 4.6.0)
Matrix has you...
Re[2]: Этот ваш PHP ****
От: IT Россия linq2db.com
Дата: 19.03.10 00:55
Оценка: +1
Здравствуйте, elmal, Вы писали:

E>Ну дык это ... хочешь в языках с динамической типизацией уверенности что все хорошо — пиши тесты со 100 процентным покрытием .


Чем в данном случае помогло бы 100%-е покрытие?
Если нам не помогут, то мы тоже никого не пощадим.
Re[2]: Этот ваш PHP ****
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 19.03.10 15:40
Оценка: +1
Здравствуйте, Calc, Вы писали:

C>Профессионалы, **** вашу мать...


Спасибо.

C>И читайте доки. PHP устойчив к "идиотским ошибкам", идиотские ошибки в нем не рушат работу всей системы


Спасибо еще раз.

C>и не забудьте xdebug поставить на сервер.


Да незачем уже. В скором времени, LAMP на этом сервере прекратит свое существование.

C>Не будете делать таких глупых ошибок.


Глупую ошибку я совершил ровно одну: поленился настраивать рерайтинг урлов, чтобы завернуть /banners на IIS и собирать банеры на нормальном языке. Уже исправился и, как только решится вопрос с графикой, банеры будет собирать код на Nemerle. Ибо, возможно это будет откровением, но есть языки, в которых "правильность и чистота написания кода" ложится на компилятор/интерпретатор настолько, что забываешь о том, что нужно что-то помнить, знать, держать в голове и т.п. Да бог с ним с Nemerle'ом, в том же Python'e такие грабли невозможны в принципе, безо всяких конфигураций, уровней ошибок, отладчиков и т.п.

А поводу "профессионалов"... Мне можно, т.к. я ни разу не программист, у меня несколько иная предметная область
Автор: kochetkov.vladimir
Дата: 19.03.10
. И в этой области как раз-таки программисты зачастую совершают такие ошибки, что становится страшно за будущее всей отрасли. Но при этом, я не вспоминаю их матерей, не называю идиотами, а стараюсь как можно более корректно сообщать им об их ошибках. Советую подумать над этим.
... << RSDN@Home 1.2.0 alpha 4 rev. 1446>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[3]: Этот ваш PHP ****
От: Sheridan Россия  
Дата: 19.03.10 16:16
Оценка: :)
Приветствую, kochetkov.vladimir, вы писали:

k> Да незачем уже. В скором времени, LAMP на этом сервере прекратит свое существование.


Неужели LAPP поднимешь?
avalon 1.0rc3 rev 306, zlib 1.2.3 (17.12.2009 01:06:14 MSK +03:00)(Qt 4.6.0)
Matrix has you...
Re[4]: Этот ваш PHP ****
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 19.03.10 16:34
Оценка: :)
Здравствуйте, Sheridan, Вы писали:

S>Приветствую, kochetkov.vladimir, вы писали:


k>> Да незачем уже. В скором времени, LAMP на этом сервере прекратит свое существование.


S>Неужели LAPP поднимешь?


Смешно, ага. Нет, пусть остается NIM[C|N]
... << RSDN@Home 1.2.0 alpha 4 rev. 1446>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[5]: Этот ваш PHP ****
От: Calc Россия  
Дата: 19.03.10 22:35
Оценка: +1
Здравствуйте, kochetkov.vladimir, Вы писали:

KV>Здравствуйте, Calc, Вы писали:


C>>Советую задуматься над вашими *** в названии темы, после этого сделать выводы о стилистике поста


KV>Это был пин-код моей кредитки. А вы что подумали?

А у меня номер паспорта родителей
Re: Этот ваш PHP ****
От: 0K Ниоткуда  
Дата: 15.03.10 00:12
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

KV>того, какой ответ выдает этот код и того, что этот язык еще и один из самых популярных


А что ПХП еще кто-то использует (кроме школьников)?
Re[2]: Этот ваш PHP ****
От: Antikrot  
Дата: 15.03.10 00:16
Оценка:
Здравствуйте, 0K, Вы писали:

KV>>того, какой ответ выдает этот код и того, что этот язык еще и один из самых популярных

0K>А что ПХП еще кто-то использует (кроме школьников)?
студенты еще используют вроде
Re: Этот ваш PHP ****
От: Anton Batenev Россия https://github.com/abbat
Дата: 15.03.10 00:41
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

k> того, какой ответ выдает этот код и того, что этот язык еще и один из самых популярных


<?php

// correct
echo hiImAString;

// correct
echo hello . world . _6789;

// correct
thisisastandalonestring;

// correct, outputs 0
echo string + anotherstring - yetanotherstring;

// correct, outputs 1concatenated
echo true . false . concatenated;

// incorrect, syntax error
echo cantdothis . 1234567890;

// incorrect, syntax error, use of PHP keywords
echo try . and . do . this . if . you . can . else . break;

?>




k> P.S: Да, вы правильно подумали. Я случайно пропустил знак доллара в паре мест и потом долго вдуплял, а с какого хрена у меня начали появляться строковые переменные в самых неожиданных местах и пропадать кусочки результатов вычислений


<?php

include_once('PHPUnit/Framework.php');
include_once('PHPUnit/TextUI/TestRunner.php');

$sute = new PHPUnit_Framework_TestSuite("cleardzen.ru");

// <...>

PHPUnit_TextUI_TestRunner::run($sute);

?>
avalon 1.0rc3 rev 318, zlib 1.2.3
Re[2]: Этот ваш PHP ****
От: anton_t Россия  
Дата: 15.03.10 05:03
Оценка:
Здравствуйте, Sheridan, Вы писали:

S>Приветствую, kochetkov.vladimir, вы писали:


k>> P.S: Да, вы правильно подумали. Я случайно пропустил знак доллара в паре мест и потом долго вдуплял, а с какого хрена у меня начали появляться строковые переменные в самых неожиданных местах и пропадать кусочки результатов вычислений


S>Ага, прямо по стопам Мамута. У того кронтаб виноват, а у тебя пхп


Язык, который позволяет делать такие глупые (и главное неизбежные) ошибки — плохой язык. Хотя ты, конечно, можешь сказать, что любишь гулять по граблям
Re[3]: Этот ваш PHP ****
От: Sheridan Россия  
Дата: 15.03.10 05:55
Оценка:
Приветствую, anton_t, вы писали:

a> Язык, который позволяет делать такие глупые (и главное неизбежные) ошибки — плохой язык. Хотя ты, конечно, можешь сказать, что любишь гулять по граблям

Да, плохой язык. Об этом все знают.
avalon 1.0rc3 rev 315, zlib 1.2.3
build date: 15.02.2010 00:26:03 MSK +03:00
Qt 4.6.1
Matrix has you...
Re[2]: Этот ваш PHP ****
От: Mamut Швеция http://dmitriid.com
Дата: 15.03.10 09:13
Оценка:
KV>>того, какой ответ выдает этот код и того, что этот язык еще и один из самых популярных

0K>А что ПХП еще кто-то использует (кроме школьников)?


Facebook, например. Wikipedia, например.


dmitriid.comGitHubLinkedIn
Re[2]: Этот ваш PHP ****
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 15.03.10 09:27
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

AB>PHPUnit_TextUI_TestRunner::run($sute);


Угу. Для скрипта в три десятка строчек, чтобы поймать то, что должен ловить интерпритатор.
... << RSDN@Home 1.2.0 alpha 4 rev. 1437>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[5]: Семён Семёныч! Что же вы?
От: Erop Россия  
Дата: 15.03.10 10:05
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

KV>А о каком языке все знают, что он хороший? (это чтобы тема не загнулась)


Про Немерле же -- ясен пень!!!
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[3]: Этот ваш PHP ****
От: Anton Batenev Россия https://github.com/abbat
Дата: 15.03.10 10:06
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

k> AB>PHPUnit_TextUI_TestRunner::run($sute);

k> Угу. Для скрипта в три десятка строчек, чтобы поймать то, что должен ловить интерпритатор.

А ты уверен, что он должен ловить и что это не является частью языка? Я вот не уверен (впрочем, я не большой знаток).
avalon 1.0rc3 rev 318, zlib 1.2.3
Re: Этот ваш PHP ****
От: neFormal Россия  
Дата: 15.03.10 10:10
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

KV>Я в очередной раз не знаю, смеяться мне или плакать, от того, что есть язык, в котором такой код будет являться правильным:


не знаю как ты, а я уже плачу.. на меня свалили 2 метра стрёмных древних исходников на этом уродстве и отобрали python+django..
как же я всех ненавижу сейчас..
...coding for chaos...
Re: Этот ваш PHP ****
От: elmal  
Дата: 15.03.10 10:12
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

KV>того, какой ответ выдает этот код и того, что этот язык еще и один из самых популярных

Ну дык это ... хочешь в языках с динамической типизацией уверенности что все хорошо — пиши тесты со 100 процентным покрытием . Еще префиксы помогают. На PHP писать — это тебе не на С++, на PHP все гораздо сложнее, на компилятор надеяться нельзя .
Re[5]: Этот ваш PHP ****
От: Sheridan Россия  
Дата: 15.03.10 10:25
Оценка:
Приветствую, kochetkov.vladimir, вы писали:

k> А о каком языке все знают, что он хороший? (это чтобы тема не загнулась)

Ассемблер
avalon 1.0rc3 rev 315, zlib 1.2.3
build date: 15.02.2010 00:26:03 MSK +03:00
Qt 4.6.1
Matrix has you...
Re[6]: Этот ваш PHP ****
От: anton_t Россия  
Дата: 15.03.10 10:27
Оценка:
Здравствуйте, neFormal, Вы писали:

F>Здравствуйте, kochetkov.vladimir, Вы писали:


S>>>Да, плохой язык. Об этом все знают.

KV>>А о каком языке все знают, что он хороший? (это чтобы тема не загнулась)

F>Python же..


Что бы тема не умерла: динамику — в топку.
Re[7]: Этот ваш PHP ****
От: neFormal Россия  
Дата: 15.03.10 10:43
Оценка:
Здравствуйте, anton_t, Вы писали:

_>Что бы тема не умерла: динамику — в топку.


а я неожиданно соглашусь.. да, надо доделать Reia до совсем питоновского синтаксиса и со спокойной душой перейти на ФП..
...coding for chaos...
Re[6]: Семён Семёныч! Что же вы?
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 15.03.10 11:42
Оценка:
Здравствуйте, Erop, Вы писали:

E>Здравствуйте, kochetkov.vladimir, Вы писали:


KV>>А о каком языке все знают, что он хороший? (это чтобы тема не загнулась)


E>Про Немерле же -- ясен пень!!!


Я вообще-то имел в виду динамические языки, "но ход ваших мыслей мне нравится"
... << RSDN@Home 1.2.0 alpha 4 rev. 1437>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[2]: Этот ваш PHP ****
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 15.03.10 11:46
Оценка:
Здравствуйте, neFormal, Вы писали:

F>Здравствуйте, kochetkov.vladimir, Вы писали:


KV>>Я в очередной раз не знаю, смеяться мне или плакать, от того, что есть язык, в котором такой код будет являться правильным:


F>не знаю как ты, а я уже плачу.. на меня свалили 2 метра стрёмных древних исходников на этом уродстве и отобрали python+django..

F>как же я всех ненавижу сейчас..

Держись, мы мысленно будем с тобой в этот тягостный час

Говорят jetbrain'овская IDE для PHP дает лучшую (по сравнению с остальными) навигацию по коду и ловит множество граблей. Сам не проверял, хз, но вдруг поможет.
... << RSDN@Home 1.2.0 alpha 4 rev. 1437>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[2]: Этот ваш PHP ****
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 15.03.10 11:48
Оценка:
Здравствуйте, elmal, Вы писали:

E>Здравствуйте, kochetkov.vladimir, Вы писали:


KV>>того, какой ответ выдает этот код и того, что этот язык еще и один из самых популярных

E>Ну дык это ... хочешь в языках с динамической типизацией уверенности что все хорошо — пиши тесты со 100 процентным покрытием . Еще префиксы помогают. На PHP писать — это тебе не на С++, на PHP все гораздо сложнее, на компилятор надеяться нельзя .

До этого год писал на питоне без каких-либо особых осложнений и таких вот граблей
... << RSDN@Home 1.2.0 alpha 4 rev. 1437>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[5]: Этот ваш PHP ****
От: Anton Batenev Россия https://github.com/abbat
Дата: 15.03.10 12:15
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

k> Дык в том-то и засада, что это является частью языка. Хотя кроме того, что это прямой путь к граблям, оно ничего полезного в язык не вносит, IMHO.


BTW. "Любим мы одних, а женимся на других" Что наглядно пока что и наблюдаем
avalon 1.0rc3 rev 318, zlib 1.2.3
Re: Этот ваш PHP ****
От: Vamp Россия  
Дата: 15.03.10 12:31
Оценка:
KV>P.S: Да, вы правильно подумали. Я случайно пропустил знак доллара в паре мест и потом долго вдуплял, а с какого хрена у меня начали появляться строковые переменные в самых неожиданных местах и пропадать кусочки результатов вычислений
А аналога use strict в PHP нету?
Да здравствует мыло душистое и веревка пушистая.
Re[3]: Этот ваш PHP ****
От: neFormal Россия  
Дата: 15.03.10 12:49
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

KV>Держись, мы мысленно будем с тобой в этот тягостный час


спасибо, растроган.. :'-)

KV>Говорят jetbrain'овская IDE для PHP дает лучшую (по сравнению с остальными) навигацию по коду и ловит множество граблей. Сам не проверял, хз, но вдруг поможет.


да я в phpeclipse всё делаю.. в принципе, годится для большинства моих задач..

а меня спасёт только тотальный рефакторинг.. пока принёс с собой немножко джанговского стиля..
$user = Model::get(User, array('id' => $uid));


кстати, в php нельзя передавать классы в качестве параметра.. поэтому оно User превращает в строку(!)..
...coding for chaos...
Re[4]: Этот ваш PHP ****
От: Anton Batenev Россия https://github.com/abbat
Дата: 15.03.10 13:15
Оценка:
Здравствуйте, neFormal, Вы писали:

F> кстати, в php нельзя передавать классы в качестве параметра.. поэтому оно User превращает в строку(!)..


ЧЕГО?!
avalon 1.0rc3 rev 318, zlib 1.2.3
Re[3]: Этот ваш PHP ****
От: Mamut Швеция http://dmitriid.com
Дата: 15.03.10 15:04
Оценка:
KV>>>того, какой ответ выдает этот код и того, что этот язык еще и один из самых популярных
E>>Ну дык это ... хочешь в языках с динамической типизацией уверенности что все хорошо — пиши тесты со 100 процентным покрытием . Еще префиксы помогают. На PHP писать — это тебе не на С++, на PHP все гораздо сложнее, на компилятор надеяться нельзя .

E__>Ага. Учитывая, что пхп вообще интерпритируемый язык, на компилятор вообще странно надеяться.


Ну, вообще-то РНР все же компилируется в байткод, который выполняется потом VM. Правда, компилируется он каждый раз заново, но есть возможность оставить его в байткоде (чем, собственно, и занимаются его акселераторы)


dmitriid.comGitHubLinkedIn
Re[3]: Этот ваш PHP ****
От: squid  
Дата: 15.03.10 15:14
Оценка:
Здравствуйте, Mamut, Вы писали:

а кто это вообще?

З.Ы.
Joomla и много других CMS

M>Facebook, например. Wikipedia, например.
Re: Этот ваш PHP ****
От: Ночной Смотрящий Россия  
Дата: 15.03.10 15:36
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

KV>Буду краток, ибо из-за сабжа уже падаю с ног, завтра расскажу подробнее. Писал сегодня скрипт генерации баннеров для участников проекта Nemerle (Бейджи участников
Автор: kochetkov.vladimir
Дата: 10.03.10
): http://nemerle.rsdn.ru/banners/?t=PHP%20sucks%20outside!


О да, только PHP на сайте rsdn и не хватало.
Re[2]: Этот ваш PHP ****
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 15.03.10 15:49
Оценка:
Здравствуйте, Ночной Смотрящий, Вы писали:

НС>Здравствуйте, kochetkov.vladimir, Вы писали:


KV>>Буду краток, ибо из-за сабжа уже падаю с ног, завтра расскажу подробнее. Писал сегодня скрипт генерации баннеров для участников проекта Nemerle (Бейджи участников
Автор: kochetkov.vladimir
Дата: 10.03.10
): http://nemerle.rsdn.ru/banners/?t=PHP%20sucks%20outside!


НС>О да, только PHP на сайте rsdn и не хватало.


Я тоже не в восторге от этого.
... << RSDN@Home 1.2.0 alpha 4 rev. 1446>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[5]: Этот ваш PHP ****
От: neFormal Россия  
Дата: 15.03.10 16:01
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

F>> кстати, в php нельзя передавать классы в качестве параметра.. поэтому оно User превращает в строку(!)..

AB>ЧЕГО?!

типичная запись в логах:

PHP Notice: Use of undefined constant User — assumed 'User' in blablabla.php on line 123


я ошибаюсь в своих догадках?.
...coding for chaos...
Re: Этот ваш PHP ****
От: LaptevVV Россия  
Дата: 15.03.10 16:06
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

Одной звездочки в названии явно не хватает!
php ***!
php ****!!
php ***** !!!
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[6]: Этот ваш PHP ****
От: Anton Batenev Россия https://github.com/abbat
Дата: 15.03.10 16:13
Оценка:
Здравствуйте, neFormal, Вы писали:

F> я ошибаюсь в своих догадках?.


А, так ты хочешь reflection? Тогда тебе сюда — передаешь имя класса и получаешь из него всю требуемую метаинформацию. Я просто сначала подумал, что у тебя не получается передать экземпляр класса в метод.
avalon 1.0rc3 rev 318, zlib 1.2.3
Re[7]: Этот ваш PHP ****
От: neFormal Россия  
Дата: 15.03.10 16:16
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

F>> я ошибаюсь в своих догадках?.

AB>А, так ты хочешь reflection? Тогда тебе сюда — передаешь имя класса и получаешь из него всю требуемую метаинформацию. Я просто сначала подумал, что у тебя не получается передать экземпляр класса в метод.

ага.. вот как и топикстартер, ты не заметил отсутствия $
а мне от "рефлекшна" нужно только get_class_vars и get_class_methods.. усё..
...coding for chaos...
Re[7]: Этот ваш PHP ****
От: LaptevVV Россия  
Дата: 15.03.10 16:34
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

LVV>>Дык компонентный же паскаль!!!

KV>/me с благодарностью смотрит на небо за то, что оно не заставило его делать бейджики на компонентном паскале...

Дык язык-то — хороший!... Только для бейджиков не подходит...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[8]: Этот ваш PHP ****
От: Anton Batenev Россия https://github.com/abbat
Дата: 15.03.10 16:54
Оценка:
Здравствуйте, neFormal, Вы писали:

F> ага.. вот как и топикстартер, ты не заметил отсутствия $


Ну я же не в vim его смотрел

F> а мне от "рефлекшна" нужно только get_class_vars и get_class_methods.. усё..


Если код предполагается под нагрузку, то будет тормозить.
avalon 1.0rc3 rev 318, zlib 1.2.3
Re[9]: Этот ваш PHP ****
От: neFormal Россия  
Дата: 15.03.10 19:52
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

F>> а мне от "рефлекшна" нужно только get_class_vars и get_class_methods.. усё..

AB>Если код предполагается под нагрузку, то будет тормозить.

сильно?.
кстати, а что тормозит больше: вышеуказанные функции get_class_* или Reflection ?.
...coding for chaos...
Re[10]: Этот ваш PHP ****
От: Anton Batenev Россия https://github.com/abbat
Дата: 15.03.10 21:46
Оценка:
Здравствуйте, neFormal, Вы писали:

F> AB>Если код предполагается под нагрузку, то будет тормозить.

F> сильно?.

Преждевременная оптимизация зло — что-то я "в пылу сражения" ляпнул не подумав.

Я так понимаю, что ты пытаешься сделать некоторое подобие ORM и дальше начнешь генерить в рантайме SQL запросы? Вот в этом месте я бы написал пару-тройку тестов на производительность — PHP с MySQL требует некоторой осторожности. А так, если просто reflection и ничего с ним не делать, то он достаточно быстр — т.е. вызов функции дешев.
avalon 1.0rc3 rev 317, zlib 1.2.3
Re[11]: Этот ваш PHP ****
От: neFormal Россия  
Дата: 15.03.10 22:01
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

AB>Я так понимаю, что ты пытаешься сделать некоторое подобие ORM и дальше начнешь генерить в рантайме SQL запросы?


на данный момент с помощью ф-ций get_class_* определяется содержимое "моделей" и метаинформация для конкретной "модели"..
SQL запросы, можно сказать, генерятся.. сейчас простые SELECT/INSERT/UPDATE..

AB>Вот в этом месте я бы написал пару-тройку тестов на производительность — PHP с MySQL требует некоторой осторожности.


да, надо будет, если буду это внедрять..
пока это написано и лежит чуть ли не для красоты..
...coding for chaos...
Re[11]: Этот ваш PHP ****
От: skeptik_  
Дата: 15.03.10 23:55
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

AB>Здравствуйте, neFormal, Вы писали:


F>> AB>Если код предполагается под нагрузку, то будет тормозить.

F>> сильно?.

AB>Преждевременная оптимизация зло — что-то я "в пылу сражения" ляпнул не подумав.


AB>Я так понимаю, что ты пытаешься сделать некоторое подобие ORM и дальше начнешь генерить в рантайме SQL запросы? Вот в этом месте я бы написал пару-тройку тестов на производительность — PHP с MySQL требует некоторой осторожности. А так, если просто reflection и ничего с ним не делать, то он достаточно быстр — т.е. вызов функции дешев.


Тут вообще классы на лету генерятся, и даже не тормозит особо. Хотя я предпочитаю Doctrine.
Re[7]: Этот ваш PHP ****
От: Bigger Российская Империя  
Дата: 16.03.10 10:01
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

KV>Здравствуйте, LaptevVV, Вы писали:


LVV>>Здравствуйте, kochetkov.vladimir, Вы писали:


a>>>>> Язык, который позволяет делать такие глупые (и главное неизбежные) ошибки — плохой язык. Хотя ты, конечно, можешь сказать, что любишь гулять по граблям

S>>>>Да, плохой язык. Об этом все знают.
KV>>>А о каком языке все знают, что он хороший? (это чтобы тема не загнулась)
LVV>>Дык компонентный же паскаль!!!

KV>/me с благодарностью смотрит на небо за то, что оно не заставило его делать бейджики на компонентном паскале...


Тогда Clipper5.0.1

Программист — это шаман..., подарите бубен!
Re[3]: Этот ваш PHP ****
От: Кодт Россия  
Дата: 16.03.10 10:23
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

AB>Не вылетает даже с E_STRICT (PHP 5.2.11) — похоже, это допустимое поведение.


Может, где-то в недрах (php.ini, .htaccess, в коде) этот уровень сбрасывается? Или где-то в коде включили обработчик ошибок, который тупо жрёт всё подряд?
Курить функции error_get_last(), error_reporting() и set_error_handler().
Попробовать сделать нарочитую ошибку и вывести её последствия на страницу.
Перекуём баги на фичи!
Re[4]: Этот ваш PHP ****
От: Anton Batenev Россия https://github.com/abbat
Дата: 16.03.10 10:32
Оценка:
Здравствуйте, Кодт, Вы писали:

К> AB>Не вылетает даже с E_STRICT (PHP 5.2.11) — похоже, это допустимое поведение.

К> Может, где-то в недрах (php.ini, .htaccess, в коде) этот уровень сбрасывается? Или где-то в коде включили обработчик ошибок, который тупо жрёт всё подряд?

Нет — я брал начальный пример
Автор: kochetkov.vladimir
Дата: 15.03.10
— там нет ни .htaccess ни переназначения ошибок.
avalon 1.0rc3 rev 318, zlib 1.2.3
Re[5]: Этот ваш PHP ****
От: Кодт Россия  
Дата: 16.03.10 11:16
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

AB>Нет — я брал начальный пример
Автор: kochetkov.vladimir
Дата: 15.03.10
— там нет ни .htaccess ни переназначения ошибок.

Ну, в твоём примере про .htaccess и конфиги php и apache ничего не говорилось.

Денвер на этот пример ругается и подвёрстывает код с подробными разъяснениями.
Возможно, что твой веб-сервер так настроен, что сообщение об ошибке было сделано незаметно.
Попробуй phpinfo() сделать...
Перекуём баги на фичи!
Re[6]: Этот ваш PHP ****
От: Anton Batenev Россия https://github.com/abbat
Дата: 16.03.10 11:58
Оценка:
Здравствуйте, Кодт, Вы писали:

К> Попробуй phpinfo() сделать...


Да, нашел — неправильно задал error_reporting. Вместо "E_ALL | E_STRICT" написал "E_ALL & E_STRICT".
Да, действительно:

PHP Notice:  Use of undefined constant variable2 - assumed 'variable2' in /home/abbat/123.php on line 2

Notice: Use of undefined constant variable2 - assumed 'variable2' in /home/abbat/123.php on line 2
PHP Notice:  Use of undefined constant variable1 - assumed 'variable1' in /home/abbat/123.php on line 5

Notice: Use of undefined constant variable1 - assumed 'variable1' in /home/abbat/123.php on line 5
PHP Notice:  Undefined variable: variable2 in /home/abbat/123.php on line 5

Notice: Undefined variable: variable2 in /home/abbat/123.php on line 5
variable1

10
avalon 1.0rc3 rev 318, zlib 1.2.3
Re[8]: Этот ваш PHP ****
От: Anton Batenev Россия https://github.com/abbat
Дата: 16.03.10 14:30
Оценка:
Здравствуйте, Кодт, Вы писали:

К> AB>Да, действительно:

К> Как там Шеридан говорил — "так *** PHP или руки?"

Ну да, протупил с битовыми операциями — не так часто в PHP с ними сталкиваюсь и vim тут уже не подсветит ошибку как было бы у топикстартера.
avalon 1.0rc3 rev 318, zlib 1.2.3
Re[8]: Этот ваш PHP ****
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 17.03.10 09:14
Оценка:
Здравствуйте, Кодт, Вы писали:

К>Здравствуйте, Anton Batenev, Вы писали:


AB>>Да, действительно:


К>Как там Шеридан говорил — "так *** PHP или руки?"


Раз Шеридан говорил, то точно PHP

А еще я понял, почему он всех призывает тотально изучать администрирование. Он даже в разработке использует те технологии, в которых, не обладая навыками админа, можно отхватить такие грабли, что поневоле админить начинаешь
... << RSDN@Home 1.2.0 alpha 4 rev. 1446>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[9]: Этот ваш PHP ****
От: Sheridan Россия  
Дата: 17.03.10 10:49
Оценка:
Приветствую, kochetkov.vladimir, вы писали:

k> А еще я понял, почему он всех призывает тотально изучать администрирование. Он даже в разработке использует те технологии, в которых, не обладая навыками админа, можно отхватить такие грабли, что поневоле админить начинаешь


Это которые? Просто интересно.
avalon 1.0rc3 rev 315, zlib 1.2.3
build date: 15.02.2010 00:26:03 MSK +03:00
Qt 4.6.1
Matrix has you...
Re[10]: Этот ваш PHP ****
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 18.03.10 13:43
Оценка:
Здравствуйте, Sheridan, Вы писали:

S>Приветствую, kochetkov.vladimir, вы писали:


k>> А еще я понял, почему он всех призывает тотально изучать администрирование. Он даже в разработке использует те технологии, в которых, не обладая навыками админа, можно отхватить такие грабли, что поневоле админить начинаешь


S>Это которые? Просто интересно.


Там в сообщении аж два смайлика на этот счет стоит (третий).
... << RSDN@Home 1.2.0 alpha 4 rev. 1446>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[11]: Этот ваш PHP ****
От: Sheridan Россия  
Дата: 18.03.10 16:04
Оценка:
Приветствую, kochetkov.vladimir, вы писали:

k> k>> А еще я понял, почему он всех призывает тотально изучать администрирование. Он даже в разработке использует те технологии, в которых, не обладая навыками админа, можно отхватить такие грабли, что поневоле админить начинаешь

k> S>Это которые? Просто интересно.
k> Там в сообщении аж два смайлика на этот счет стоит (третий).

Ну я придерживаючь правила "в каждой шутке есть доля шутки..."
Итак, что тебя заставило так сказать?
avalon 1.0rc3 rev 306, zlib 1.2.3 (17.12.2009 01:06:14 MSK +03:00)(Qt 4.6.0)
Matrix has you...
Re[12]: Этот ваш PHP ****
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 18.03.10 16:24
Оценка:
Здравствуйте, Sheridan, Вы писали:

S>Ну я придерживаючь правила "в каждой шутке есть доля шутки..."

S>Итак, что тебя заставило так сказать?

Это были размышления вслух о причинах существования твоего мнении о том, что программеры должны владеть навыками администрирования. Как одна из возможных причин, предподнесенная в виде не очень удачной шутки.
... << RSDN@Home 1.2.0 alpha 4 rev. 1446>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[7]: Этот ваш PHP ****
От: Sheridan Россия  
Дата: 18.03.10 20:44
Оценка:
Приветствую, kochetkov.vladimir, вы писали:

k> Не, это уже пройденный этап. Недавно случилось страшное и Шеридана потянуло в веб-технологии. Теперь он всем объясняет
Автор: Sheridan
Дата: 13.03.10
какими должны быть веб-стандарты


Не, это я стараюсь не терять навыки, да и заодно набросал себе хранилище для флеш-игрушек
avalon 1.0rc3 rev 306, zlib 1.2.3 (17.12.2009 01:06:14 MSK +03:00)(Qt 4.6.0)
Matrix has you...
Re[8]: Этот ваш PHP ****
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 18.03.10 22:27
Оценка:
Здравствуйте, Sheridan, Вы писали:

S>Не, это я стараюсь не терять навыки, да и заодно набросал себе хранилище для флеш-игрушек


Угу. Тебе уязвимости (XSS, доступ к исходникам скриптов, возможно LFI, возможно HTTP Response splitting) — сюда кидать или в личку?
... << RSDN@Home 1.2.0 alpha 4 rev. 1446>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[9]: Этот ваш PHP ****
От: Sheridan Россия  
Дата: 18.03.10 22:28
Оценка:
Приветствую, kochetkov.vladimir, вы писали:

k> Угу. Тебе уязвимости (XSS, доступ к исходникам скриптов, возможно LFI, возможно HTTP Response splitting) — сюда кидать или в личку?


Я в курсе, ибо никаких защит не делал
Давай сюда, и я поумнею, и другим интересно будет.
avalon 1.0rc3 rev 306, zlib 1.2.3 (17.12.2009 01:06:14 MSK +03:00)(Qt 4.6.0)
Matrix has you...
Re[9]: Этот ваш PHP ****
От: Anton Batenev Россия https://github.com/abbat
Дата: 18.03.10 22:48
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

k> Угу. Тебе уязвимости (XSS, доступ к исходникам скриптов, возможно LFI, возможно HTTP Response splitting) — сюда кидать или в личку?


Чем прогоняешь?
avalon 1.0rc3 rev 317, zlib 1.2.3
Re[10]: Этот ваш PHP ****
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 18.03.10 23:46
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

AB>Здравствуйте, kochetkov.vladimir, Вы писали:


k>> Угу. Тебе уязвимости (XSS, доступ к исходникам скриптов, возможно LFI, возможно HTTP Response splitting) — сюда кидать или в личку?


AB>Чем прогоняешь?


Когда вот так вот — навскидку, то руками. Ну + FF, обвязанный правильными расширениями (не сканерами). Когда по серьезному, то руками + основные юзкейсы сайта через ratproxy + с оглядкой на фон, где accunetix сканит на предмет xss, а xspider на все остальное. Последний — только если на работе и наши собственные сайты ибо ограничение лицензии.

Это если мы говорим исключительно о веб-приложениях и их пентестах.
... << RSDN@Home 1.2.0 alpha 4 rev. 1446>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[11]: Этот ваш PHP ****
От: Sheridan Россия  
Дата: 19.03.10 00:19
Оценка:
Приветствую, kochetkov.vladimir, вы писали:

k> XSS — на самом деле, можно взять любой параметр GET-запроса, который попадает на выход

fixed

k> Доступ к исходникам — нужно либо делать все, что содержит код, с расширением .php, либо запрещать доступ к этим файлам или размещать их выше корня хоста.

fixed

k> Расщепление HTTP-заголовка — появится, как только отключишь warning'и. Из варнингов также понятно, что id передается в file_get_contents file_put_contents проходя только экранирование magic_quotes'ами (либо чем-то аналогичным). Только благодаря тому, что там к этой строке еще добавляется '/names' у тебя сейчас нет LFI (local file include) и доступа к произвольному файлу ФС с правами веб-сервера.

походу тоже fixed

k> Еще обратил внимание (но не проверял) на недостаточный контроль данных из кук (style). Скорее всего, там тот же самый набор уязвимостей.

Жду
avalon 1.0rc3 rev 306, zlib 1.2.3 (17.12.2009 01:06:14 MSK +03:00)(Qt 4.6.0)
Matrix has you...
Re[11]: Этот ваш PHP ****
От: Sheridan Россия  
Дата: 19.03.10 00:35
Оценка:
Приветствую, kochetkov.vladimir, вы писали:

k> Из варнингов также понятно, что id передается в file_get_contents file_put_contents проходя только экранирование magic_quotes'ами (либо чем-то аналогичным).

0_0 — это директория 0 с поддиректорией 0, 0_12 соответственно o/12/
list($a,$b) = split('/_/', $id);
$dir = "$server_root/games/a/b/";
avalon 1.0rc3 rev 306, zlib 1.2.3 (17.12.2009 01:06:14 MSK +03:00)(Qt 4.6.0)
Matrix has you...
Re[11]: Этот ваш PHP ****
От: Anton Batenev Россия https://github.com/abbat
Дата: 19.03.10 01:24
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

k> Когда вот так вот — навскидку, то руками. Ну + FF, обвязанный правильными расширениями (не сканерами).


И что, на такой простой странице можно было допустить столько ошибок? Или они лишь потенциальные и реально ими воспользоваться еще очень постараться придется?
avalon 1.0rc3 rev 318, zlib 1.2.3
Re[12]: Этот ваш PHP ****
От: Anton Batenev Россия https://github.com/abbat
Дата: 19.03.10 01:28
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

AB> И что, на такой простой странице можно было допустить столько ошибок? Или они лишь потенциальные и реально ими воспользоваться еще очень постараться придется?


У... вижу. Мне бы такого security officer на opensvn...
avalon 1.0rc3 rev 318, zlib 1.2.3
Re[12]: Этот ваш PHP ****
От: Трурль  
Дата: 19.03.10 06:17
Оценка:
Здравствуйте, Sheridan, Вы писали:

k>> Доступ к исходникам — нужно либо делать все, что содержит код, с расширением .php, либо запрещать доступ к этим файлам или размещать их выше корня хоста.

S>fixed
А как же опенсорс?
Re[12]: Этот ваш PHP ****
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 19.03.10 08:21
Оценка:
Здравствуйте, Sheridan, Вы писали:

k>> Еще обратил внимание (но не проверял) на недостаточный контроль данных из кук (style). Скорее всего, там тот же самый набор уязвимостей.

S>Жду

Вечером гляну.
... << RSDN@Home 1.2.0 alpha 4 rev. 1446>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[13]: Этот ваш PHP ****
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 19.03.10 08:21
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

AB>Здравствуйте, Anton Batenev, Вы писали:


AB>> И что, на такой простой странице можно было допустить столько ошибок? Или они лишь потенциальные и реально ими воспользоваться еще очень постараться придется?


AB>У... вижу. Мне бы такого security officer на opensvn...


Для Avalon'а? Так я его и так тестировать буду (security@rsdn чуть подзабросил из-за нехватки времени, каюсь. Но планирую вернутся к нему в апреле, если что). Или ты про другие проекты? Пиши в личку или сюда, если что — не вижу причин не помочь, по мере возможности, интересному открытому проекту
... << RSDN@Home 1.2.0 alpha 4 rev. 1446>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re: Этот ваш PHP ****
От: Calc Россия  
Дата: 19.03.10 08:29
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

<?php
header("Content-Type: text/html; charset=utf-8");
ini_set('display_errors',1);
ini_set('register_globals','Off');

$variable1 = variable2;
$variable3 = $variable1;
$variable3 += 10;
echo variable1."\n\r".$variable2."\n\r".$variable3;
?>

Профессионалы, **** вашу мать...
и .htaccess
php_flag register_globals off

Там же ставьте всё....

Notice: Use of undefined constant variable2 - assumed 'variable2' in D:\work\EasyPHP5.3.0\www\monopoly\www.php on line 8

Notice: Use of undefined constant variable1 - assumed 'variable1' in D:\work\EasyPHP5.3.0\www\monopoly\www.php on line 11

Notice: Undefined variable: variable2 in D:\work\EasyPHP5.3.0\www\monopoly\www.php on line 11
variable1 10



И читайте доки. PHP устойчив к "идиотским ошибкам", идиотские ошибки в нем не рушат работу всей системы
А вот правильность и чистота написания кода зависит от вас + пользуйтесь проверкой синтаксиса, например NetBeans выдаст предупреждение о том, что переменная не инициализирована.

Поддержка таких Notice очень полезна для работы группы разных разработчиков за маленькие деньги. Если разные модули пишут разные люди, то выход из строя одного модуля не рушит всю систему целиком. Не нужно тратить время на написание обработки ошибок.
Re[2]: Этот ваш PHP ****
От: Calc Россия  
Дата: 19.03.10 08:32
Оценка:
Здравствуйте, Calc, Вы писали:

C>Здравствуйте, kochetkov.vladimir, Вы писали:


и не забудьте xdebug поставить на сервер. Не будете делать таких глупых ошибок.
Re[11]: Этот ваш PHP ****
От: Calc Россия  
Дата: 19.03.10 08:44
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

AB>Здравствуйте, neFormal, Вы писали:


F>> AB>Если код предполагается под нагрузку, то будет тормозить.

F>> сильно?.

AB>Преждевременная оптимизация зло — что-то я "в пылу сражения" ляпнул не подумав.


AB>Я так понимаю, что ты пытаешься сделать некоторое подобие ORM и дальше начнешь генерить в рантайме SQL запросы? Вот в этом месте я бы написал пару-тройку тестов на производительность — PHP с MySQL требует некоторой осторожности. А так, если просто reflection и ничего с ним не делать, то он достаточно быстр — т.е. вызов функции дешев.


на обычном железе арифметические операции, операции поиска в тексте, конкатенция и т.д. занимает 0.00x секунд на всю страницу при работе с mysql 0.0x если есть сортировка и временные таблицы, так же нужно учесть количество записей и бредовость запросов

Пример с одного сайта. Там косяк с индексами, но не хватает квалификации для их перепеси.
Порт с loomilы, которая дохла после 1000 записей в основной базе и работала дольше 30 секунд.
Сейчас там явно больше 12000 фильмов, я не говорю о количестве записей в таблице и о том, что машина на Linuxe уже 3 раза умерала (железо) + 1 раз был уронен блок питания на процессор Сейчас стоит на каком то страшном железе где порядка 30 сайтов + система диагностики сети (база более 300Гб уже, логи).
Время выполнения: 1.8658950328827 секунд (25 запросов, 1.8423883914948 сек)
select count(*) from jos_jmovies where published=1; (0.0031259059906006) sec
select c.id,c.title,c.alias from jos_categories as c, jos_jmovies_categories as mc where mc.catid=c.id and c.section='com_jmovies' and c.published=1 group by c.id order by c.title; (0.011789083480835) sec
select m.id,m.titolo as name, CONCAT(SUBSTR(m.descrizione,1,200),'...') as descr, m.urlweblocal, m.video, m.urltrailer as dcurl, m.urlweb from jos_jmovies as m where published=1 order by rand() limit 1; (0.39255499839783) sec
select m.id,m.titolo as name,m.titolo2 as name_e, CONCAT(SUBSTR(m.descrizione,1,300),'...') as descr, m.nazione as country, m.regista as rejisser, m.anno as year, m.filename, m.video, m.audio, m.urlweblocal, m.counter, m.votes, m.votesum, m.attorealtri as actors, m.published, m.urltrailer as dcurl, m.urlweb as ftpurl from jos_jmovies as m left join jos_jmovies_categories as mc on m.id=mc.jmoviesid where (m.published=1) and publish_up<=NOW() group by m.id order by m.publish_up desc limit 0,20; (0.72129893302917) sec
select DISTINCT(c.title) from jos_jmovies_categories as mc, jos_categories as c where c.id=mc.catid and mc.jmoviesid=43661; (0.67020106315613) sec
select DISTINCT(c.title) from jos_jmovies_categories as mc, jos_categories as c where c.id=mc.catid and mc.jmoviesid=43677; (0.00031805038452148) sec
select DISTINCT(c.title) from jos_jmovies_categories as mc, jos_categories as c where c.id=mc.catid and mc.jmoviesid=43676; (0.0002589225769043) sec
select DISTINCT(c.title) from jos_jmovies_categories as mc, jos_categories as c where c.id=mc.catid and mc.jmoviesid=1344; (0.00026106834411621) sec
select DISTINCT(c.title) from jos_jmovies_categories as mc, jos_categories as c where c.id=mc.catid and mc.jmoviesid=41597; (0.00028705596923828) sec
select DISTINCT(c.title) from jos_jmovies_categories as mc, jos_categories as c where c.id=mc.catid and mc.jmoviesid=43334; (0.00028800964355469) sec
select DISTINCT(c.title) from jos_jmovies_categories as mc, jos_categories as c where c.id=mc.catid and mc.jmoviesid=43258; (0.00029087066650391) sec
select DISTINCT(c.title) from jos_jmovies_categories as mc, jos_categories as c where c.id=mc.catid and mc.jmoviesid=43225; (0.00026798248291016) sec
select DISTINCT(c.title) from jos_jmovies_categories as mc, jos_categories as c where c.id=mc.catid and mc.jmoviesid=43335; (0.0003058910369873) sec
select DISTINCT(c.title) from jos_jmovies_categories as mc, jos_categories as c where c.id=mc.catid and mc.jmoviesid=43675; (0.00027894973754883) sec
select DISTINCT(c.title) from jos_jmovies_categories as mc, jos_categories as c where c.id=mc.catid and mc.jmoviesid=43674; (0.00027298927307129) sec
select DISTINCT(c.title) from jos_jmovies_categories as mc, jos_categories as c where c.id=mc.catid and mc.jmoviesid=43673; (0.00026297569274902) sec
select DISTINCT(c.title) from jos_jmovies_categories as mc, jos_categories as c where c.id=mc.catid and mc.jmoviesid=43672; (0.00031495094299316) sec
select DISTINCT(c.title) from jos_jmovies_categories as mc, jos_categories as c where c.id=mc.catid and mc.jmoviesid=43671; (0.00027894973754883) sec
select DISTINCT(c.title) from jos_jmovies_categories as mc, jos_categories as c where c.id=mc.catid and mc.jmoviesid=43670; (0.0003058910369873) sec
select DISTINCT(c.title) from jos_jmovies_categories as mc, jos_categories as c where c.id=mc.catid and mc.jmoviesid=43669; (0.00028014183044434) sec
select DISTINCT(c.title) from jos_jmovies_categories as mc, jos_categories as c where c.id=mc.catid and mc.jmoviesid=43594; (0.00026988983154297) sec
select DISTINCT(c.title) from jos_jmovies_categories as mc, jos_categories as c where c.id=mc.catid and mc.jmoviesid=43606; (0.00025391578674316) sec
select DISTINCT(c.title) from jos_jmovies_categories as mc, jos_categories as c where c.id=mc.catid and mc.jmoviesid=43668; (0.00027799606323242) sec
select DISTINCT(c.title) from jos_jmovies_categories as mc, jos_categories as c where c.id=mc.catid and mc.jmoviesid=43349; (0.00025486946105957) sec
select count(*) from jos_jmovies as m left join jos_jmovies_categories as mc on m.id=mc.jmoviesid where m.published=1 group by m.id; (0.038089036941528) sec
Re[12]: Этот ваш PHP ****
От: Anton Batenev Россия https://github.com/abbat
Дата: 19.03.10 10:33
Оценка:
Здравствуйте, Calc, Вы писали:

C> на обычном железе арифметические операции, операции поиска в тексте, конкатенция и т.д. занимает 0.00x секунд на всю страницу при работе с mysql 0.0x если есть сортировка и временные таблицы, так же нужно учесть количество записей и бредовость запросов

C> Пример с одного сайта. Там косяк с индексами, но не хватает квалификации для их перепеси.

А это ты к чему клонишь?
avalon 1.0rc3 rev 318, zlib 1.2.3
Re[14]: Этот ваш PHP ****
От: Anton Batenev Россия https://github.com/abbat
Дата: 19.03.10 10:33
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

k> AB>У... вижу. Мне бы такого security officer на opensvn...

k> Для Avalon'а? Так я его и так тестировать буду (security@rsdn чуть подзабросил из-за нехватки времени, каюсь. Но планирую вернутся к нему в апреле, если что). Или ты про другие проекты?

Я про тот проект, на котором хостится avalon. Хотя, если исходить из того, что там должны хоститься только opensource проекты, то его взлом не должен быть страшен — там брать будет нечего.
avalon 1.0rc3 rev 318, zlib 1.2.3
Re[2]: Этот ваш PHP ****
От: Anton Batenev Россия https://github.com/abbat
Дата: 19.03.10 10:56
Оценка:
Здравствуйте, Calc, Вы писали:

C> php_flag register_globals off


Дык она же начиная с php 4.2 по умолчанию Off, и deprecated начиная с 5.3...
avalon 1.0rc3 rev 318, zlib 1.2.3
Re[5]: Этот ваш PHP ****
От: March_rabbit  
Дата: 19.03.10 11:27
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

KV>Здравствуйте, Sheridan, Вы писали:


S>>Приветствую, anton_t, вы писали:


a>>> Язык, который позволяет делать такие глупые (и главное неизбежные) ошибки — плохой язык. Хотя ты, конечно, можешь сказать, что любишь гулять по граблям

S>>Да, плохой язык. Об этом все знают.

KV>А о каком языке все знают, что он хороший? (это чтобы тема не загнулась)

Ruby, Ruby!!!
Re[3]: Этот ваш PHP ****
От: Calc Россия  
Дата: 19.03.10 12:52
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

AB>Здравствуйте, Calc, Вы писали:


C>> php_flag register_globals off


AB>Дык она же начиная с php 4.2 по умолчанию Off, и deprecated начиная с 5.3...


Код иногда достается по наследству, так же как и сервера
Re[4]: Этот ваш PHP ****
От: Anton Batenev Россия https://github.com/abbat
Дата: 19.03.10 13:36
Оценка:
Здравствуйте, Calc, Вы писали:

C> AB>Дык она же начиная с php 4.2 по умолчанию Off, и deprecated начиная с 5.3...

C> Код иногда достается по наследству, так же как и сервера

Ну так обсуждаемая задача не наследовалась, а писалась заново.
avalon 1.0rc3 rev 318, zlib 1.2.3
Re[3]: Этот ваш PHP ****
От: Calc Россия  
Дата: 19.03.10 15:46
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

KV>А поводу "профессионалов"... Мне можно, т.к. я ни разу не программист, у меня несколько иная предметная область
Автор: kochetkov.vladimir
Дата: 19.03.10
. И в этой области как раз-таки программисты зачастую совершают такие ошибки, что становится страшно за будущее всей отрасли. Но при этом, я не вспоминаю их матерей, не называю идиотами, а стараюсь как можно более корректно сообщать им об их ошибках. Советую подумать над этим.


Советую задуматься над вашими *** в названии темы, после этого сделать выводы о стилистике поста
Re[4]: Этот ваш PHP ****
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 19.03.10 15:55
Оценка:
Здравствуйте, Calc, Вы писали:

C>Советую задуматься над вашими *** в названии темы, после этого сделать выводы о стилистике поста


Это был пин-код моей кредитки. А вы что подумали?

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[13]: Этот ваш PHP ****
От: Sheridan Россия  
Дата: 19.03.10 16:16
Оценка:
Приветствую, Трурль, вы писали:

Т> А как же опенсорс?

Оно еще неготово Впрочем, если нужно — сооружу проект на sf
avalon 1.0rc3 rev 306, zlib 1.2.3 (17.12.2009 01:06:14 MSK +03:00)(Qt 4.6.0)
Matrix has you...
Re[13]: Этот ваш PHP ****
От: Sheridan Россия  
Дата: 19.03.10 18:17
Оценка:
Приветствую, kochetkov.vladimir, вы писали:

k> $_COOKIE['style'] попадает в HTML без.....м. Поэтому лучше это закрыть.

fixed

k> Начал прогонять сканером, но он, также как и я ничего больше не нашел. Пока

Вот и славно Cgfcb,j ,jkmijt ^)
Впрочем если что заметишь — свисти.

k> P.S: Зачем тебе 53-ий порт снаружи?

dns. Обслуживает зону sheridan-home.ru
avalon 1.0rc3 rev 306, zlib 1.2.3 (17.12.2009 01:06:14 MSK +03:00)(Qt 4.6.0)
Matrix has you...
Re[14]: Этот ваш PHP ****
От: Sheridan Россия  
Дата: 19.03.10 18:18
Оценка:
Приветствую, Sheridan, вы писали:

S> Cgfcb,j ,jkmijt ^)

Спасибо большое
avalon 1.0rc3 rev 306, zlib 1.2.3 (17.12.2009 01:06:14 MSK +03:00)(Qt 4.6.0)
Matrix has you...
Re[15]: Этот ваш PHP ****
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 19.03.10 22:11
Оценка:
Здравствуйте, Sheridan, Вы писали:

S>Приветствую, Sheridan, вы писали:


S>> Cgfcb,j ,jkmijt ^)


Все, пора отдыхать. А то я, грешным делом, на секунду подумал, что это какой-то юникодовый вектор, который я проворонил

S>Спасибо большое


Да не за что
... << RSDN@Home 1.2.0 alpha 4 rev. 1446>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[15]: Этот ваш PHP ****
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 19.03.10 22:11
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

AB>Я про тот проект, на котором хостится avalon.


Ух ты. Я, до сегодняшнего момента, как-то не догадывался, кто его владелец

Глянул, по-диагонали. На первый взгляд — ок, явных дыр нету. На следующей неделе смогу глянуть не по-диагонали, если хочешь.
... << RSDN@Home 1.2.0 alpha 4 rev. 1446>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[16]: Этот ваш PHP ****
От: Anton Batenev Россия https://github.com/abbat
Дата: 19.03.10 22:46
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

k> Ух ты. Я, до сегодняшнего момента, как-то не догадывался, кто его владелец


Ну я как-то анонсировал его на RSDN, но особенного энтузиазма он не вызвал, а я и не настаивал — тогда сервер еще был в России и достаточно слабенький.

k> Глянул, по-диагонали. На первый взгляд — ок, явных дыр нету. На следующей неделе смогу глянуть не по-диагонали, если хочешь.


Да, был бы благодарен. Исходники, если потребуются, могу предоставить (надо будет зарегистрироваться на ресурсе и сообщить OpenID).
avalon 1.0rc3 rev 318, zlib 1.2.3
Re[6]: Этот ваш PHP ****
От: Mamut Швеция http://dmitriid.com
Дата: 21.03.10 12:56
Оценка:
KV>>А о каком языке все знают, что он хороший? (это чтобы тема не загнулась)
M_>Ruby, Ruby!!!

Медленный, каша из фич, странные заморочки с кодировками текста


dmitriid.comGitHubLinkedIn
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.