Найти - Пользователи
Полная версия: Проверка данных полученных от пользователя
Начало » Python для новичков » Проверка данных полученных от пользователя
1 2
izooomrud
Привет.
Какие проверки строки необходимо выполнить перед запись в БД, экранирование там или еще что и как это сделать?
Строки вида 18:00 и просто числа проверяю регуляркой, думаю этого достаточно.
FishHook
ну раз думаете, значит, достаточно
проблемы возникают по мере взросления,
раз вы не видите проблем, ну значит их и нет,
а проблемы которые есть, вы все равно не поймете
не о чем здесь рассуждать
izooomrud
FishHook
ну раз думаете, значит, достаточнопроблемы возникают по мере взросления,раз вы не видите проблем, ну значит их и нет,а проблемы которые есть, вы все равно не пойметене о чем здесь рассуждать
В прошлый раз, когда ты в такой же манере решил повыпендриваться, ты не выкал, а тут выкать начал, уже наблюдается положительная динамика
Но поскольку в прошлый раз до тебя не дошло, то давай попробуем еще раз.

Рассуждать было настолько не о чем, что ты как минимум минуту стучал по клавиатуре, ради создания очередного своего высера. А если бы действительно не о чем было рассуждать, то ты бы просто прошел мимо. И возможно какая-то логическая часть твоего мозга сигнализирует тебе - “пройди мимио, чувак, не трать свою энергию”, но твои личностные проблемы не дают тебе этого сделать и заставляют тебе стучать по клавиатуре ради создания очередного высера в целях поднятия своего пониженного эго. Но поскольку логическая часть твоего мозга продолжает сигнализировать тебе, что текущее значение эго не является истинным значением, оно быстро откатывается на предыдущее значение. И ты вновь предпринимаешь бестолковые попытки его поднять - сделав очередной высер.
Но вместо этого ты просто должен сделать break своего бестолкового цикла и найти более деятельный способ самореализоваться.
py.user.next
izooomrud
Какие проверки строки необходимо выполнить перед запись в БД, экранирование там или еще что и как это сделать?
В базу данных можешь писать что угодно, хоть её полное удаление. Она не удалится из-за этого. Вопрос в том, кто (программа) будет писать в эту базу данных и сможет ли она (программа) понять, что это данные, а не данные + команда для системы управления базой данных. Поэтому суть инъекции состоит в том, чтобы убедить записывающий элемент, что данные закончились там-то и там-то, а дальше идут уже не данные, а ещё одна команда.

То есть ты думаешь, что проверять надо то, что пишется в базу данных, тогда как проверять нужно то, с помощью какой команды и её аргументов выполняется запись в базу данных. В эту команду через её аргументы можно внедрить данные, которые она пишет в базу, таким образом, что эта одна команда превратится в две команды.

Почитай что-нибудь про инъекции, они бывают разные. У них быват разные механизмы, хотя что то инъекция, что это инъекция.
FishHook
izooomrud
когда мы общались в прошлый раз, я тебе вообще-то помог
это сейчас были слова благодарности надо понимать?
izooomrud
FishHook
izooomrudкогда мы общались в прошлый раз, я тебе вообще-то помогэто сейчас были слова благодарности надо понимать?
А так это у тебя стратегия такая - сначала обосрать, потом помогать?
И чел потом сидит обосранный и думает, то ли благодарить, то ли нах отправить. Лучше бы ты включил в свою стратегию - просто пройти мимо, как я упоминал выше и всем бы было хорошо.
FishHook
а на что ты возбудился то?
я вполне честно и добросовестно тебе ответил на твой вопрос,
я и правда так думаю. Никто не пишет идеальный код. Даже Линус Торвальдс не пишет идеальный код. То что ты написал сейчас, через пол года ты сам будешь ненавидеть. Это бесконечный процесс. Если ты сейчас на каком-то своем этапе считаешь, что написал хорошо, ну и бога ради, значит это хорошо. Работает? Ну и все, пусть работает. Если ты сам видишь, что написал плохо, ну и в чем тогда вопрос? У тебя какая-то странная мания задавать вопросы максимально туманно. Ты думаешь тут мудрецы какие-то особенные сидят? Обычные люди, такие же как ты. На туманные вопросы будут следовать туманные ответы, максимально общие. Будут конкретные вопрорсы, на них будут конкретные ответы. И нефиг обижаться, ты ж не девочка десяти лет чтобы ждать от мира немедленных решений твоих половых трудностей, как спросил такой ответ и получил
izooomrud
FishHook
И нефиг обижаться, ты ж не девочка десяти лет чтобы ждать от мира немедленных решений твоих половых трудностей, как спросил такой ответ и получил
Я по умолчанию считаю, что я в любом случае напишу плохо т.к только изучаю весь процесс. И я обозначил - что не понимаю как обезопасить бд от попадания в неё чего-то опасного. Т.к не знаю как правильно и на что следует проверять строку которую передал пользователь, кроме тех значений которые должны быть определённого формата (ссылка, время и т.д) которые я могу проверить регуляркой. Т.е просто строку я сейчас никак не проверяю, добавляю как есть, думаю это не правильно
PEHDOM
izooomrud
Т.е просто строку я сейчас никак не проверяю, добавляю как есть, думаю это не правильно
а что может произойти если вы запишете в БД строку? как она поломает БД? py.user.next вам вполне четко написал, хотите обезопасить себя от иньекций, изучайте какие типы иньекций для конкрето вашей БД(название которой вы не озвучили, но хотите получить конкретные советы) существуют. Вот на них и проверяйте.
AD0DE412
немного тематического флуда https://m.habr.com/ru/news/t/463679/
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB