Доказательство, что SharePoint не имеет никаких уязвимостей Внедрения SQL?

Это может быть достигнуто с помощью промежуточной суммы.

select Item,
       Stay,
       sum(case when Stay > 8600 then 1 else 0 end) over(partition by item order by ts) as seq_group
from tableA
7
задан Maksym Gontar 7 March 2009 в 12:16
поделиться

2 ответа

Они все не хранятся procs. В частности, вещи как соединения перекрестных списков производят некоторый ужасающий синтаксис. Для примера посмотрите на окно SQL Trace от этой статьи. Кроме того, и начиная с пользовательские элементы управления и начиная с вызовы API могут быть записаны разработчиками, нет никакой гарантии, что Вы не подвергаетесь Внедрению SQL при использовании пользовательских модулей.

Мое предположение было бы то, что SharePoint всегда использует, по крайней мере, названный параметрами. Однако Ваш наилучший вариант мог бы, чтобы выполнить трассировку SQL и сравнить результаты. Кроме того, если Вы - достаточно крупный клиент, Вы могли бы просто попытаться вызвать своего локального евангелиста MSFT (или отправить вопрос на connect.microsoft.com) и видеть, можно ли получить ответ.

2
ответ дан 7 December 2019 в 18:46
поделиться

Спасибо. Я посмотрел на профилировщика сам и нашел некоторые вещи: похоже, что SharePoint только выполняет хранимые процедуры. Существуют случайные биты чистого SQL, но они, кажется, ограничены "должностным лицом sp_oledb_ro_usrname", и "выбирают collationname (...)", которые, кажется, некоторые в глубине души внутренняя вещь, и возможно разве быть не выполняется как SQL вообще, но просто выходит в профилировщике тот путь...?

SharePoint действительно иногда использует sp_executesql, но это - параметризованный вызов и поэтому вероятно, безопасно от инжекции.

1
ответ дан 7 December 2019 в 18:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: