Категорія: Security
Cumulative Hot Fix 1 for Coldfusion 9
Ось і прийшов час для випуску першого набору оновлень для ACF9. Він містить невелику кількість патчів для баґів, знайдених з моменту релізу та рекомендується до застосування в першу чергу тим, хто потерпає від описаних проблем. Жодних критичних оновлень він не містить.
Важливе оновлення безпеки для ACF9 (CVE-2010-0185)
Вчора було опубліковано інформаційний бюлетень з безпеки від Adobe, що повідомив про появу виправлення для вразливості в Solr.
Вразливість заключається в тому, що будь-хто може дістатися до колекції знаючи URL спеціального формату.
Adobe позначила вразливість як важливу та настійливо рекомендує вжити заходів для виправлення, що докладно описані в публікації How to limit access to the Solr collections
Випущено Railo 3.1.2
Не пройшло і двох тижнів від випуску попередньої версії, а в Railo розродилися повноцінним релізом.
Незважаючи на порівняно незначну зміну номеру версії, вона містить в собі значну кількість покращень та виправлень. Про них і піде мова нижче. Примітка: це переклад офіційного тексту, тому тут слово "ми" відноситься до розробників Railo.
- Розширення серверу Railo власними мітками (тегами)
Дивіться цю публікацію в блозі:
CFC custom tag example - Загальна підтримка систем кешування
Скоро з'явиться публікація про це. - Згенеровані ключі для INSERT запитів
Скоро з'явиться публікація про це. - Колекція міток CFAJAX*
Написана Андреа Камполоньї з використанням міток на базі cfc (це розширення не є частиною ядра). Ми (CFUG) теж згадували про цей проект.
Дивіться цю публікацію в блозі:
Railo AJAX tags
Сторінка проекту:
Project Railo AJAX - Покращення безпеки
У випадку використання певних можливостей було можливо прочитати будь-який файл на розділі, де знаходиться веб-корінь (web root). Подяки Полу Клікенбергові та Піту Фрейтагу, що незалежно виявили цю проблему.
Всі паролі в railo-web.xml.cfm та railo-server.xml.cfm тепер закодовані.
Всі поля паролів в Railo Administrators тепер приховані за маскою.
Доступ до конфігурації Railo за допомогою мітки cfadmin тепер за умовчанням тільки для читання. - Нові версії серверів застосунків
В комплект встановлення Railo 3.1.2 ми включили останню стабільну версію Resin. Тепер він включає також win64 connector, так що ви можете легко встановити його з IIS6 or 7 на 64bit Windows.
Railo Express тепер поставляється в двох версіях. Одна містить типовий Jetty, а інший Resin 3.1.9. Встановлення залишається таким самим легким: просто розпакуйте архів та виконайте файл запуску, що відповідає платформі. - Зміни сторінки завантаження
Відразу після оновленого блоку скачування Railo Resin express ми додали список наявних патчів різних типів, з прямими посиланнями на завантаження. Вони можуть бути потрібні у випадку, коли ваш сервер знаходиться за файрволом чи проксі, що внеможливлює автоматичну процедуру. Завітайте на сторінку скачувань. - Оновлено образ Amazon AMI
Відразу після описаних вище змін ми також оновили образ для Amazon EC2, так що ви можете створювати вашу інсталяцію з неї. Образ включає встановлені застосунки:- Apache 2.2
- Tomcat 6.0.2
- Railo 3.1.2.001
- Mura 5.1.1102
- Mango Blog 1.4
- Оновлено вихідні файли
Ви можете знайти вихідні коди Railo 3.1.2.001 у звичному JBoss SVN репозиторії, або на сторінці завантажень.
Цей список англійською плюс формальний список змін з трекеру проекту можна переглянути в блозі Railo.
Як завжди, розповсюджувач можна скачати з сайту getRailo.org, оновитися ж з попередньої версії найкраще за допомогою вбудованої системи оновлення. Докладно про неї написано в Довідці з оновлення Railo 3.x.
Убезпечення контексту Railo з IIS та Apache
Джеймс Аллен (James Allen) наводить поради як закрити Railo Administrator від небажаного доступу, пропонуючи зробити це засобами IIS.
Натомість Піт Фрейтаґ (Pete Freitag) рекомендує закрити увесь railo-context засобами Apache. Треба зауважити, що це актуально у тому випадку, якщо не використовуються cfform, cfchart та інші речі, котрі потребують вільного доступу до контексту.
Hack My CF
Брайан Рінальді з Foundeo Inc., про якого ми вже згадували в повідомленнях, присвячених безпеці, запустив ще один цікавий проект: Hack My CF.
Ввівши доменне ім'я та електронну скриньку (котра має знаходитися на тому ж домені -- що не дуже зручно, але має певний сенс), HMCF робить ряд запитів до вашого сайту та перевіряє його на наявність певних вразливостей, в тому числі XSS та інших. Повного списку тестів, на жаль, не надано. Напевне розробники залишили собі заділ для комерційних послуг зацікавленим власникам сайтів. Результати тестів будуть надіслані на вказану скриньку.
Вектор Script Injection атаки
Марк Кругер (Mark Kruger) знову робить корисну справу: досліджує можливість проведення Script Injection атаки через завантаження (upload) шкідливого скрипта.
Він розглядає послідовність кроків для "обману" скрипта завантаження, котрий хоч і проводить перевірку даних, але має розповсюджену вразливість, на котру рідко звертають увагу: завантаження відразу відбувається в публічно доступну директорію. Завдяки затримкам між етапами обробки є можливість виконати шкідливий скрипт до того, як його буде видалено.
Також приводяться кілька порад (здавалося б, очевидних для досвідченого розробника) щодо покращення загальної безпеки ресурсів з можливістю завантаження файлів користувачами.
Про все це дещо докладніше в Script Injection Attack: Smoking Gun?
Найбільшою проблемою дослідження наслідків такої атаки є труднощі з ідентифікацією шкідливих скриптів, адже вони вже не існують пост-фактум. Особисто я використовую два обробники помилок 404 в Application.cfc: один слугує для запису помилок, перенапрямлених з веб-серверу (фейкова сторінка 404.cfm), інший -- для заптів до недозволених cfm-сторінок (дозволені зазвичай index.cfm та wsdl.cfm - для веб-сервісів). Це дає деяку інформацію у випадку спроб дослідження додатку через навмисні запити до неіснуючих сторінок.
Cumulative Hot Fix 3 for ColdFusion 8.0.1
Вчора було випущено оновлення CHF 3 for ColdFusion 8.0.1, призначене спеціально для цієї версії. Більше того, Adobe рекомендує використовувати це оновлення тільки у тому випадку, якщо вам заважають виправлені недоліки.
Хотфікс від Adobe для FCKEditor (APSB09-09)
Не пройшло й тижня від моменту публікації про вразливість, але Adobe розродилася швиденьким хотфіксом.
При тому всьому визнала вразливість критичною та опублікувала розлоге пояснення своєї позиції з питання.
Так чи інакше, варто скористатися нагодою та оновитися: hotfix for potential ColdFusion 8 input sanitization issue.
Вразливість у FCKeditor для ColdFusion 8.0.1
Серйозну вразливість було знайдено в FCKeditor, а конкретно в CF-конекторі для завантаження файлів.
Справа в тому, що в CF 8.0.1 він увімкнутий за умовчанням, що може бути використано для завантаження .cfm (а також .asp, що ) скриптів, що було описано в нещодавному повідомленні.
Тому дуже рекомендується вжити запобіжних заходів, від вимкнення конектора в налаштуваннях і до видалення завантажувача файлів, якщо ним не користуєтеся. Бо кілька сайтів вже було скомпроментовано.
Більше інформації та рекомендаці можна знайти в наступних повідомленнях:
CF8 and FCKEditor Security threat
ColdFusion 8 FCKeditor Vulnerability
Potential ColdFusion security issue (офіційна нота від Adobe з обіцянкою виправити проблему).
Підміна MIME типу при завантаженні .cfm файлів на сервер
Днями прокотилася хвиля серйозних порушень роботи сайтів та навіть цілих ColdFusion серверів, пов'язана з використанням вразливості, коли підміна MIME типу завантажуваного файлу дозволяла залити .cfm скрипт та виконати його.
Ось простий приклад як це можна зробити:
<cfhttp url="http://target.example.com/upload" method="post">
<cfhttpparam file="#ExpandPath("badstuff.cfm")#"
mimetype="image/gif"
type="file"
name="photo">
</cfhttp>
Така проста конструкція легко дозволяє обійти вбудовану перевірку типу:
<cffile action="upload"
filefield="photo"
accept="image/gif,image/jpeg"
destination="#ExpandPath("./photos/")#">
Приклади було взято з посту Піта Фрейтаґа (Pete Freitag), в якому він наводить рекомендації щодо захисту від подібних атак.
Зокрема, можна використати вбудовані функції IsImageFile("path") (з урахуванням вже описаної проблеми) та IsPDFFile("path"), використовувати окремий сервер (простіше кажучи, окремий домен - скажімо з nginx - для швидкодії) для статичного вмісту (як то Amazon S3), користуватися можливостями Sandboxing (якщо у вас CF Enterise), відключати можливість виконання скриптів для тек завантаження та іншими методиками.
Ці та інші поради описані у вищевказаному повідомленні, також варто звернути увагу на коментарі до нього, там теж є слушні поради.
Також варто звернути увагу на аналогічне повідомлення Брента Фрая (Brent Frye), котрий зазнав серйозних неприємностей через описану проблему, тому теж уклав список порад для її обходу.
Проблема при обробці деяких JPG-малюнків в ColdFusion 8
Марк Кругер (Mark Kruger) нещодавно опублікував докладне пояснення ситуації, коли за деяких умов спроба обробки JPG-малюнків змушувало перезавантажуватися JVM, з відповідними наслідками для ColdFusion.
Проблема виявилася в некоректній обробці JPG "ICC" профілі в javax.imageio класах з JVM версії 1.6.0_04. Тому, хто раптом має цю версію, варто оновитися, проблему було вирішено вже в наступній збірці (після того вже було ще декілька).
Дізнатися докладніше про суть проблеми та знайти тестові JPG-файли для компроментації можна в оригінальному пості Марка.
