какие возможные алгоритмы для определния sqli? то, что пришло в голову:
берем уязвимый параметр, подставляем в параметр сначала id=5+and+1=1-- и сравниваем размер страницы (или diff) с первоначальной (id=5). если результат одинаковый, то id=5+and+1=2-- и также сравниваем с размером исходной страницы. ваши идеи? что делать в случае, если на странице рандомно генерируемые объекты?
С проверкой наличия SQL-injection всё очень сложно. Инъекции бывают очень разные. Многое зависит от цели - аудит типа black-box конкретного ресурса, проверка списка URL.
Во втором случае будет целесообразнее покрыть N% возможных случаев парой запросов, чем приближаться к 99% используя сотни запросов и большой анализатор.
В первом случае на хороший алгоритм нужны сотни человеко-часов. Или даже тысячи. Можете посмотреть на sqlmap - это самое популярное ПО в этой области. Однако даже оно, бывает, не может определить наличие инъекции, которую профессионал возьмет за 5 минут.
Даже если у вас будет разработка, намного превосходящая sqlmap по эффективности, вы не сможете раскрутить часть инъекций и правильно интерпретировать информацию, т.к. если бы вы могли это сделать - вы бы не задавали этот вопрос.
Для второго случая просто не изобретайте велосипед - все уже есть. Программ - множество, половина с открытыми исходными кодами. Для первого предлагаю почитать статьи по инъекциям. Разбирать инъекции, рассматривать возможные WAF. Может быть тогда вы сможете подойти к вопросу серьезно.