Как зайти в Даркнет?!
25th January, 01:11
6
0
Как в tkinter из поля ввода Entry получить значение в одну переменную и обновить строку кнопкой, затем получить ещё одно введённое значение и затем сложить их. Ниже пример кода
21st July, 19:00
895
0
Программа, которая создает фейковые сервера в поиске игровых серверов CS 1.6 Steam
21st March, 17:43
948
0
Очень долго работает Update запрос Oracle
27th January, 09:58
914
0
не могу запустить сервер на tomcat HTTP Status 404 – Not Found
21st January, 18:02
905
0
Где можно найти фрилансера для выполнения поступающих задач, на постоянной основе?
2nd December, 09:48
938
0
Разработка мобильной кроссплатформенной военной игры
16th July, 17:57
1724
0
период по дням
25th October, 10:44
3955
0
Пишу скрипты для BAS только на запросах
16th September, 02:42
3720
0
Некорректный скрипт для закрытия блока
14th April, 18:33
4613
0
прокидывать exception в блоках try-catch JAVA
11th March, 21:11
4381
0
Помогите пожалуйста решить задачи
24th November, 23:53
6086
0
Не понимаю почему не открывается детальное описание продукта
11th November, 11:51
4351
0
Нужно решить задачу по программированию на массивы
27th October, 18:01
4396
0
Метода Крамера С++
23rd October, 11:55
4309
0
помогите решить задачу на C++
22nd October, 17:31
4002
0
Помогите решить задачу на python с codeforces
22nd October, 11:11
4492
0
Python с нуля: полное руководство для начинающих
18th June, 13:58
2599
0
Перехват SQL инъекций и других вредоносных веб-запросов
Я ищу инструмент, который может обнаруживать вредоносные запросы (такие как очевидные SQL инъекций получает или сообщения) и сразу же запретит IP адрес запрашивающего/добавить в черный список. Я знаю, что в идеальном мире наш код должен уметь обрабатывать такие запросы и относиться к ним соответственно, но в таком инструменте есть большая ценность даже тогда, когда сайт защищен от подобных атак, поскольку он может привести к экономии пропускной способности, предотвращению раздутия аналитики и т. д.
В идеале я ищу кросс-платформенное решение (LAMP/.NET), которое находится на более высоком уровне, чем технологический стек; возможно, на уровне веб-сервера или аппаратного обеспечения. Хотя я не уверен, что это существует.
В любом случае, я хотел бы услышать отзывы сообщества, чтобы увидеть, какие у меня могут быть варианты в отношении реализации и подхода.
Вы почти смотрите на это неправильно, ни один инструмент 3party, который не знает о вашем приложении methods/naming/data/domain, не сможет полностью защитить вас.
Что-то вроде SQL Injection prevention-это то, что должно быть в коде, и лучше всего написано людьми, которые написали SQL, потому что они будут знать, что должно/не должно быть в этих полях (если только ваш проект не имеет очень хороших документов)
Ваше право, все это уже было сделано раньше. Вам не совсем нужно изобретать колесо, но вы должны вырезать новое из-за разницы в диаметрах осей каждого человека.
Это не проблема с падением и запуском, вы действительно должны быть знакомы с тем, что именно SQL инъекции является, прежде чем вы можете предотвратить его. Это скрытая проблема, поэтому она требует такой же скрытой защиты.
Эти 2 ссылки научили меня гораздо большему, чем основы по этому предмету, чтобы начать работу, и помогли мне лучше сформулировать мои будущие поиски по конкретным вопросам, на которые не было ответов.
И хотя это не совсем 100% finder, он будет "show you the light" на существующей проблеме в вашем существующем коде, но, как и в случае с webstandards, не прекращайте кодирование, как только вы пройдете этот тест.
Проблема с универсальным инструментом заключается в том, что очень трудно придумать набор правил, которые будут соответствовать только подлинной атаке.
SQL ключевые слова - это все английские слова, и не забывайте, что строка
DROP TABLE users;
является абсолютно корректным в поле формы, которое, например, содержит ответ на вопрос программирования.
Единственный разумный вариант-санировать входные данные, прежде чем передавать их в базу данных, но тем не менее передавать их дальше. В противном случае многие совершенно нормальные, не злонамеренные пользователи будут забанены с вашего сайта.
Один из методов, который может работать в некоторых случаях, заключается в том, чтобы взять строку sql, которая будет выполняться, если вы наивно используете данные формы, и передать ее в некоторый код, который подсчитывает количество операторов, которые будут фактически выполнены. Если это больше, чем ожидаемое число, то есть приличная вероятность того, что инъекция была предпринята, особенно для полей, которые вряд ли будут содержать управляющие символы, такие как имя пользователя.
Что-то вроде обычного текстового поля было бы немного сложнее, так как этот метод будет намного более вероятен для возврата ложных срабатываний, но это будет, по крайней мере, началом.
Oracle получил онлайн-учебник о SQL инъекции . Даже если вы хотите получить готовое решение, это может дать вам некоторые подсказки о том, как лучше использовать его для защиты себя.
Один из моих сайтов был недавно взломан с помощью SQL инъекции. Он добавил ссылку на вирус для каждого текстового поля в БД! Исправление состояло в том, чтобы добавить некоторый код, ищущий ключевые слова SQL. К счастью, я разработал в ColdFiusion, поэтому код находится в моем файле Application.cfm, который запускается в начале каждой веб-страницы &, он смотрит на все переменные URL. В Википедии есть несколько хороших ссылок, которые тоже могут помочь.