Перегляд за місяцем: August 2008

 

Null Pointers Are Another Name For Undefined Values

Недавно в сайтах на Coldfusion 8 стала появлятся такая вот непонятная ошибка

The system has attempted to use an undefined value, which usually indicates a programming error, either in your code or some system code.

Null Pointers are another name for undefined values.

Ошибка "лечилась" простой перезагрузкой вызываемой страницы (F5), казалось что это и не ошибка вовсе. Дебаггер не выводил ничего путного, строки, на которые указывала Coldfusion не содержали ничего близко похожего, и к тому же всегда разнились.

После гугления прояснилось. Все эти сайты были построены на MySQL 5. Дело было в настройке для MySQL датасорса - "Maintain Connections" - по-умолчанию установленной в true. Coldfusion пыталась не закрывать коннекшен, и вероятно, MySQL делала это в одностороннем порядке. При попытке соединится с базой, Coldfusion падала с такой неясной ошибкой.

Чтобы отключить эту опцию, в Coldfusion Administrator -> Datasources при редактировании источника данных нажмите кнопку Show Advanced Settings и снимите галочку "Maintain Connections".

Автор: Родион Быков | Опубліковано: 28.08.2008 о 08:05 | Категорії: Settings - MySQL -

 

Ну используйте же вы CFQUERYPARAM !

С таким призывом обратился к Coldfusion разработчикам Бен Форта (Ben Forta).

За последний месяц прокатилась волна атак sql-injection на Coldfusion сайты. Вероятно, это произошло после одной публикации на хакерском сайте (ссылку не даю умышленно :) о векторе атак на CF-сайты. В целом все сводилось к тому, что

  • не используются cfqueryparam для подстановки данных в запросы;
  • используется "сборка" sql-запроса отдельной строкой и выполнение ее через и preserveSingleQuotes();
  • на production-серверах не отключается robust debugging information

Все это - НЕ УЯЗВИМОСТИ COLDFUSION, это уязвимости слабого кода написанного слабыми программистами. Но последние события показывают, что такого кода много... И отдельное "спасибо" гуглу за поиск по расширению файла :)

Может, волна аттак связана с докладом о Coldfusion на встрече DOU в начале августа ? :-)

Забавно, но в 2005 году Бен говорил тоже самое... и в 2002 году он говорил...

Автор: Родион Быков | Опубліковано: 21.08.2008 о 05:34 | Категорії: Links -

 

Coldfusion 7 и недостающие libstdc++

При вызове веб-сервиса через <cfinvoke>, у Coldfusion 7 работающей под Linux, может случиться паника из-за отсутствующих (как ей кажется) библиотек libstdc++.

coldfusion.jsp.CompilationFailedException:
Errors reported by Java compiler
/opt/coldfusionmx7/runtime/bin/jikesw: error while loading shared libraries:
libstdc++-libc6.1-1.so.2: cannot open shared object file: No such file or directory

Однако, причина лишь в том что библиотеки оказываются более новыми, чем Coldfusion их ожидает увидеть (особенно под новыми версиями Linux)

Решение очень простое (это сделано под CentOS 5, у вас может быть другой пакет)

# cd /usr/lib
# ln -s libstdc++-3-libc6.2-2-2.10.0.so libstdc++-libc6.1-1.so.2

Просто "подменив" модуль, мы тыкаем Coldfusion носом в новую версию библиотек, которые она не хотела видеть.

Автор: Родион Быков | Опубліковано: 20.08.2008 о 11:02 | Категорії: Settings -