19 смертных грехов, угрожающих безопасности программ. Майкл Ховард
Чтение книги онлайн.

Читать онлайн книгу 19 смертных грехов, угрожающих безопасности программ - Майкл Ховард страница 30

СКАЧАТЬ style="font-size:15px;">      System.out.println("Ошибка во время исполнения");

      return false;

      }

      finally

      {

      try

      {

      con.close();

      } catch(SQLException e) {}

      }

      return true;

      }

      Искупление греха в ColdFusion

      При работе с ColdFusion используйте cfqueryparam в теге <cfquery>, чтобы обезопасить запрос с параметрами.

      Искупление греха в SQL

      Не следует исполнять в хранимой процедуре строку, полученную из не заслуживающего доверия источника, как процедуру. В качестве одного из механизмов глубоко эшелонированной обороны можно воспользоваться некоторыми функциями для проверки корректности строкового параметра. В примере ниже проверяется, что входной параметр содержит ровно четыре цифры. Заметим, что длина параметра заметно уменьшена, чтобы усложнить передачу любой другой входной информации.

      CREATE PROCEDURE dbo.doQuery(@id nchar(4))

      AS

      DECLARE @query nchar(64)

      IF RTRIM(@id) LIKE '[0-9][0-9][0-9][0-9]'

      BEGIN

      SELECT @query = 'select ccnum from cust where id = ''' + @id + ''''

      EXEC @query

      END

      RETURN

      Или еще лучше – потребуйте, чтобы параметр был целым числом:

      CREATE PROCEDURE dbo.doQuery(@id smallint)

      В Oracle lOg, как и в Microsoft SQL Server 2005, добавлены совместимые со стандартом POSIX регулярные выражения. Поддержка регулярных выражений реализована также для DB2 и Microsoft SQL Server 2000. В MySQL регулярные выражения поддерживаются с помощью оператора REGEXP. Ссылки на все эти решения вы найдете в разделе «Другие ресурсы».

      Конец ознакомительного фрагмента.

      Текст предоставлен ООО «ЛитРес».

      Прочитайте эту книгу целиком, купив полную легальную версию на ЛитРес.

      Безопасно оплатить книгу можно банковской картой Visa, MasterCard, Maestro, со счета мобильного телефона, с платежного терминала, в салоне МТС или Связной, через PayPal, WebMoney, Яндекс.Деньги, QIWI Кошелек, бонусными картами или другим удобным Вам способом.

      Примечания

      1

      Перечень технологий доступа к базам данных, доступных из программ на Perl, см. на странице http://search.cpan.org/modlist/Database_Interfaces.

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 СКАЧАТЬ