Size: a a a

2020 December 19

AS

Alexey Shatunov in phpGeeks
ну вообще стоит защищать не только БД от инъекций, но и пользователя от XSS 🤷
источник

ВС

Владислав Субботин... in phpGeeks
А данный кейс разве не об этом?
источник

ВС

Владислав Субботин... in phpGeeks
Речь про то, чтобы даже если вредоносный контент попал в БД через любую форму, то он бы не воспроизводился
источник

ВС

Владислав Субботин... in phpGeeks
И не навредил пользователю
источник

ВС

Владислав Субботин... in phpGeeks
Вы же не сможете запретить писать пользователям в форме слово <script>. Уже хотя бы потому, что это может быть частью технической статьи
источник

AS

Alexey Shatunov in phpGeeks
ну поэтому логично заменять именно спецсимволы, а не в base64 кодировать с уязвимостями 🤔
источник

ДЩ

Дмитрий Щербаков... in phpGeeks
а еще не стоит изобретать велосипед и использовать стандартные средства используемого фреймворка или взять либу https://packagist.org/packages/voku/anti-xss
источник

ДЩ

Дмитрий Щербаков... in phpGeeks
Владислав Субботин
Вы же не сможете запретить писать пользователям в форме слово <script>. Уже хотя бы потому, что это может быть частью технической статьи
нафиг html, надо нарыть висивиг который возвращает markdown, а при рендере делать md-to-html ))
источник

ВС

Владислав Субботин... in phpGeeks
Дмитрий Щербаков
нафиг html, надо нарыть висивиг который возвращает markdown, а при рендере делать md-to-html ))
Так я и говорю, что html не нужен на входе. Но если на входе будет статья с фрагментом кода?
источник

ДЩ

Дмитрий Щербаков... in phpGeeks
Владислав Субботин
Так я и говорю, что html не нужен на входе. Но если на входе будет статья с фрагментом кода?
anti-xss тогда
источник

ВС

Владислав Субботин... in phpGeeks
Глянул примеры, выглядит неплохо
источник

MH

Michael Hose in phpGeeks
Дмитрий Щербаков
а еще не стоит изобретать велосипед и использовать стандартные средства используемого фреймворка или взять либу https://packagist.org/packages/voku/anti-xss
а что если чел написал код <code> script(1)</script> чисто для демонстрации, а antixss его чистит?
источник

ДЩ

Дмитрий Щербаков... in phpGeeks
Michael Hose
а что если чел написал код <code> script(1)</script> чисто для демонстрации, а antixss его чистит?
мы же не знаем ваш контекст, если вам нужно чтобы код сохранился тогда придется что-то думать и юзать пурифайер с кастомными настройками
источник

MH

Michael Hose in phpGeeks
Дмитрий Щербаков
мы же не знаем ваш контекст, если вам нужно чтобы код сохранился тогда придется что-то думать и юзать пурифайер с кастомными настройками
Ну что бы подобное не юзать и не мучить сервак, я решил просто всё в base64 кидать и хранить.
источник

ВС

Владислав Субботин... in phpGeeks
Michael Hose
Ну что бы подобное не юзать и не мучить сервак, я решил просто всё в base64 кидать и хранить.
А что потом? Вы раскодируете строку и она будет обработана, так?
источник

MH

Michael Hose in phpGeeks
Владислав Субботин
А что потом? Вы раскодируете строку и она будет обработана, так?
Ну да, это плохо?
источник

ВС

Владислав Субботин... in phpGeeks
Ну это никак вам не поможет, потому что содержимое выполнится. Речь про то, чтобы не допустить сохранение содержимого в исходном (вредоносном) виде.
источник

ВС

Владислав Субботин... in phpGeeks
Вы просто сделаете бесполезную работу, которая никак не приблизит вас к цели, если не будете кодировать спец. символы.
источник

MH

Michael Hose in phpGeeks
Владислав Субботин
Вы просто сделаете бесполезную работу, которая никак не приблизит вас к цели, если не будете кодировать спец. символы.
🧐 ну так на сервер прилетел base64, автоматом ничего не выполнится на серваке, в том же виде кинуть клиенту, а там чисто преобразовать из base64 и сделать обычный string (срендерить), как такой вариант?
источник

ВС

Владислав Субботин... in phpGeeks
Michael Hose
🧐 ну так на сервер прилетел base64, автоматом ничего не выполнится на серваке, в том же виде кинуть клиенту, а там чисто преобразовать из base64 и сделать обычный string (срендерить), как такой вариант?
Так речь про клиента, когда это добро будет декодировано. Как вы это понять не можете. Это вообще не должно выполняться.
источник