Если я использую UrlScan для блокировки обычных попыток SQL-инъекций в asp- и aspx-файлах, я бы сделал что-то вроде этого:
[SQLInjection]
AppliesTo=.asp,.aspx
DenyDataSection=SQLInjectionStrings
ScanURL=0
ScanAllRaw=0
ScanQueryString=1
ScanHeaders=
[SQLInjectionStrings]
--
alter
delete
(...)
Это поймает
/default.asp?EVILACTION=DELETEDROPSLASHANDBURN
/default.aspx?EVILACTION=DELETEDROPSLASHANDBURN
Но нет
/?EVILACTION=DELETEDROPSLASHANDBURN
Как я могу сделать так, чтобы раздел Urlscan применялся и к URL без расширения?
Я попытался ., оставив поле пустым и т. д. - не повезло.
Вместо того, чтобы оставлять поле пустым, просто опустите AppliesTo
флаг целиком. Если у вас его вообще нет, он должен применяться ко всем запросам. Если вы укажете его, но оставите значение пустым, оно не будет применяться ни к каким запросам.