IIS6: запретить определенные шаблоны URL

Наш устаревший веб-сайт ASP.NET 2.0, работающий в IIS6 на Windows 2003 Server, принимает множество загруженных пользователем и загружаемых пользователем файлов. Не содержание страницы; файлы активов, такие как PDF и PNG в основном. Однако, конечно, желательно не позволять непослушным баггерам загружать файлы ASPX и внезапно иметь возможность выполнять код на нашем сервере.

Итак... вы могли бы подумать, что мы могли бы просто установить "Разрешения на выполнение: нет" в соответствующей папке, в которую загружаются пользовательские файлы, и на этом все. Увы.

Загруженные пользователем файлы попадают в папки с именами, подобными этим шаблонам: (nnnn, kkkk и llll представляют собой строки цифр различной длины)

/sites/nnnn/files/ftp
/sites/nnnn/files/orders/kkkk/llll
/sites/nnnn/files/proofs
/sites/nnnn/files/webFiles

НО... есть также CSS-файлы, которые хранятся в таких папках:

/sites/nnnn/files/skins/kkkk/*.css

А CSS-файлы фактически интерпретируются как ASPX-код, поэтому в строке запроса можно передать замены цветовой палитры, например:

/sites/2132/skins/83/layout.css?palette=cc33dd,aa22bb,1155ff

Итак, "Выполнить разрешения: нет" - это "нет-нет" на уровне /sites. И я действительно не хотел бы делать это в /sites/nnnn/files, по отдельности за несколько тысяч nnnn.

Итак, мне сказали, что URLScan 3.1 - это билет, но после часа или двух, когда я смотрю на документацию, я запутался больше, чем когда-либо.

Есть идеи?

0 ответов

Другие вопросы по тегам