Верите ли вы в это или нет, через ASP вы можете легко взломать WebServer, красть файлы на сервере, захватить пароли пользователей веб -баз данных и другие системы или даже злонамеренно удалять файлы на сервере, пока система не повреждена И это сенсационное и действительно произошло.
В предыдущей статье я сосредоточился на том, как отображать страницы при доступе к базам данных ADO. Значение для страниц. Я хочу поблагодарить этого друга за с энтузиазмом указывать на недостатки в программе. Пейдж, и в то время я не могу быть уверен, что PageCount может правильно получить количество страниц, поэтому мне было лень писать эту формулу :), Честно говоря, я еще не пытался использовать Pagecount Попробуйте, не учитесь у меня, я ленив.
Недавно, когда я обсуждал проблему на BBS в ChinaSp, я обнаружил, что многие друзья мало знают о некоторых проблемах безопасности ASP, и я даже не знаю, как решить самый распространенный Поэтому я думаю, что здесь очень необходимо сосредоточиться на этом вопросе для всех друзей. Проблемы безопасности ASP, которые имеют решающее значение для веб -мастера.
На следующий день после того, как уязвимость данных :: $ была обнаружена и выпущена в прошлом году, я обнаружил большинство сайтов в Китае, которые использовали ASP в то время, и 99% из них имели вышеупомянутые проблемы с исходным кодом У меня даже была та же проблема, что и исходный код, который был видным. Вы можете подумать, что видение исходного кода не имеет большого значения, но если вы, как веб -мастер, так думаете, вы очень не правы. Например, если программист ASP записывает пароль для входа на сайт непосредственно в ASP, то как только исходный код обнаружен, другие могут легко ввести страницу, которая не должна была быть замечена. Бесплатные участники веб -сайта (не разоблачайте меня!), И многие имена пользователей базы данных и пароли написаны непосредственно в ASP. В некоторых программах BBS, разработанных ASP, библиотека AccessMDB часто используется. Очень опасен, что если человек, который получает пароль, намеренно наносит вредоносной ущерб, ему нужно только войти в систему как администратор, чтобы удалить все посты в BBS, чего достаточно для задушенства. В следующем перечислены некоторые уязвимости, которые были обнаружены до сих пор. После имени файла ASP в адресной строке браузера будет загружено. IIS3 имеет такую же проблему.
2. Хорошо известная уязвимость IIS2, IIS3 и IIS4-это: $ данных. Win98+Pws4 не имеет этой уязвимости.
Что именно вызывает эту ужасную лазейку? Основная причина заключается в том, что файловая система, уникальная для Windowsnt, делает монстра. Любой, у кого есть какой -то здравый смысл, знает, что NT предоставляет файловую систему, которая полностью отличается от FAT: NTFS, технология, называемая новой технологической файловой системой, которая заставляет NT иметь более высокий механизм безопасности, но это также потому, что она вызвала многие головные боли. Вы можете не знать, что NTFS поддерживает несколько потоков данных, содержащихся в файле, и этот основной поток данных, содержащий все контент, называется данных, поэтому он позволяет браузеру напрямую доступ к системе NTFS и легко его захватывает программы. Тем не менее, прямой причиной данных :: $ является то, что у IIS есть проблема при анализе имен файлов, что не очень хорошо стандартизирует имена файлов.
Как мы можем решить эту проблему? Есть несколько способов:
А.
b.
Этот патч предназначен для IIS3, Intel Platform
ftp.microsoft.com/bussys/iis/iis
-Публик/Fixes/CHT/Security/IIS3-DATAFIX/IIS3FIXI.EXE
Этот патч предназначен для IIS3, Intel Platform
ftp.microsoft.com/bussys/iis/iis-public/fixes/cht/security/iis3-datafix/iis3fix.exe
Этот патч для IIS4, альфа -платформы
ftp.microsoft.com/bussys/iis/iis-public/fixes/cht/security/iis4-datafix/iis4fixi.exe
Этот патч для IIS4, альфа -платформы
ftp.microsoft.com/bussys/iis/iis-public/fixes/cht/security/iis4-datafix/iis4fix.exe
C.
D. Китайская версия.
3. Проблемы, с которыми сталкиваются серверы, которые поддерживают бесплатные домашние страницы ASP и услуги виртуального хостинга
1. Код ASP на сервере, вероятно, будет незаконно получен другими людьми с разрешениями ASP.
Чтобы привести очень простой пример, в подпрограмме ASP1.0, предоставленной Microsoft, есть файл .asp, специально используемый для просмотра исходного кода других файлов .asp. Если кто -то загружает эту программу на сервер без каких -либо мер предосторожности на сервере, он может легко просматривать программы других людей.
Например:
code.asp? Source =/Directory/file.asp
2. Используемая база данных Access MDB может быть загружена. MDB далеко.
< %connstr = dbq =+server.mapath (database/source.mdb)+; defaultdir =; Driver = {Microsoft Access Driver (*.mdb)}; DriverId = 25; fiL = MS Access; intizeCommitsync = yes; maxBufferSize = 512; maxscanrows = 8; pagetimeout = 5;
Как упоминалось ранее, в этом случае библиотека MDB, вероятно, будет загружена другими, что приведет к утечке паролей и т. Д.
Поэтому, как веб -мастер, мы должны принять определенные меры для строгого запрета программ, таких как Code.asp (кажется, трудно сделать, но коды функций можно регулярно получать) и ограничить загрузку MDB.
3. Угрозы со стороны мощных компонентов файловой установки
Файловые операции IIS3 и IIS4 ASP могут быть реализованы с помощью файловых систем, включая операции каталогов чтения и записи текстовых файлов, переименование и удаление файлов и т. Д., Но эта мощная функция также оставляет очень опасную бэкдор. FileSystemobjet может вмешиваться в любой файл в жирном разделе. Даже если разрешения не установлены должным образом, это также может быть уничтожено. К сожалению, многие веб -мастеры только знают, чтобы запустить веб -сервер и редко устанавливать разрешения для NTF, в то время как настройки по умолчанию для разрешений на каталог NT ужасно низко. Поэтому, если вы являетесь веб -мастером, автор настоятельно рекомендует вам обратить пристальное внимание на настройки сервера и попытаться создать веб -каталог в разделе NTFS. Группа администратора, как правило, не нужно полностью контролировать.
4. Атаки, которые приложения ASP могут столкнуться в прошлом.
В файлах HTML, если текст, введенный клиентом, должен отображаться в файле HTML, он должен соответствовать стандартам HTML, а программы CGI, как правило, включают конкретные HTML -языки. Когда клиент входит в контент и вставляет HTML -файл, он вставляется в оператор HTML в голову и хвост, например:
<font> переменные, введенные клиентом </font>, но если HTML до и после помечается на экране, вы можете сделать много вещей.
Если набрать:
< /font> <font> до и после оператора <font>, который соответствует стандартам HTML, используется для операторов HTML на моем экране CGI. То, что вставлено в HTML -файл, становится:
<font> < /font> оператор, который соответствует стандартам HTML <Font> < /font> из -за этой функции, написание Vicious Loop JavaScript очень прост, просто введите его в поле ввода:
<a href = url onmouseover = while (1) {window.close ('/')}> или <a herf = url onmousever = while (ture) {window.close ('/')}> тогда вы можете сделать другие Вещи, которые браузер клиента, который просмотрел сообщение, умерли из -за мертвого петли. Программы, разработанные ASP, также могут иметь эту проблему, поэтому, когда вы пишете аналогичные программы в ASP, вы должны быть осторожны с такими операциями, такими как написание программы, чтобы судить о введении клиента и блокирование всех операторов HTML и JavaScript.
Прочитав эту проблему, если вы очень шокированы, вы должны тщательно проверить свой существующий веб -сайт или программу ASP, чтобы увидеть, есть ли какая -либо из вышеперечисленных уязвимостей. Если у вас есть некоторое понимание уязвимостей, упомянутых в статье, и у вас есть достаточные контрмеры, то в то время как поздравляем, вы должны часто проверять вам свой сайт и программы ASP атакуя, используя некоторые уязвимости, которые мы не знаем. Наконец, если у вас есть какое -либо уникальное представление о вопросах безопасности ASP, обсуждаемых в этой статье, или у вас есть новые открытия об уязвимостях, я надеюсь написать мне, чтобы обсудить это