Мастер-класс 'Уязвимости в PHP'

preview_player
Показать описание
Краткое руководство как избежать основных уязвимостей при разработке. — SQL Инъекции. mysqli или pdo. — XSS. Можно ли разрешать HTML? — Файловые. Безопасен ли загружаемый файл? В качестве бонуса "хакнем" сами себя и зальем шелл.

Ведущий: главный преподаватель курса по РНР в LoftSchool Игорь Твердохлеб.


Рекомендации по теме
Комментарии
Автор

Полный пипец, тебя бы самого уволили за закрытие таким способом уязвимостей. В поисковой строке мы ставим кавычку и тем самым закрываем твою первую кавычку, и дальше пишешь уязвимость!!!
И это человек рассказывает в вебинарах по устранению уязвимостей!!! Ну пиздец конечно.

PDO::quote() заключает строку в кавычки (если требуется) и экранирует специальные символы внутри строки подходящим для драйвера способом.
И вот экранировать это ключевое!!! В противном случае вся эта защита выеденного яйца не стоит.

Еще можно использовать mysqli::real_escape_string.
Думал освежу знания, может узнаю что-то новое, но тут ты учишь их делать уязвимости своими руками, причем люди еще будут думать, что делают все правильно. Просто фэйспалм. лучше бы людям ссылку на мануал дал!

MrSevenZZZ
Автор

*Есть подозрение, что товарищ плохо знает PHP.*
Дыры как были, так и остались

rflsrjdf
Автор

Достаточно переменную в ковычки обнести и любой текст будет аосприниматься как тип string или текстовый.
То есть, вот так '$peremenaya' и все и никакие инхекции не страшны.

норикиосипов
Автор

от sql-инъекций есть элементарнейшая защита. Если в строке, отправленной пользователем, есть ";", то слать пользователя в пешее эротическое с помощью exit('хрен тебе');
Для верности, можно ещё его ip добавить с бан. Да и xss таким же макаром чешет лесом.
Я уж молчу про методы экранирования спецсимволов перед записью в базу данных.

По поводу файлов - покажите мне идиота, который будет подключать картинку на страницу инклюдом. Да вообще выводить картинку через php-скрипт. Что за бред?
Файлами экплойтят с помощью указания пути в имени.
Например:
- загружаемые файлы хранятся в /uploads/userfiles/
- страниц хранятся в /pages/
злоумышленник загружает файл с именем
файл загружается не в папку /uploads/userfiles/, а в папку /pages/trojan
затем хакер обращается по указанному пути и его файл выполняется
или хакер загружает файл с именем trojanhorse.php.jpg
существуют `разработчики`, которые экплоудят имя файла и собирают его заново из первого и второго элемента. лично таких знал.
в итоге, среди картинок оказывается php-скрипт, к которому и обращается жулик.

Epenckorn
Автор

Все видео хотел закрыть сообщение об обновлении phpStorm'a. Даже мышкой тянулся инстинктивно.

MrSevenZZZ
Автор

нда, начал смотреть и сходу херня... мы не можем через query сделать 2 sql запроса, только через multi query

drozdoves
Автор

Ты бы озвучивал вопросы до ответа а то каша получается

anstapol
Автор

Отличный вебинар! Хотелось бы еще увидеть вебинары, посвященные PHP-фреймворкам

resvil_nikolay
Автор

Если человек не умеет богу молится, то он и лоб себе разобьет

xakerfsbable