Проблемы безопасности ASP.NET, возможно, связанные с Umbraco, но, скорее всего, просто общие проблемы безопасности - PullRequest
0 голосов
/ 04 декабря 2009

У меня невероятно неприятная проблема с очисткой моего сайта в данный момент. На том же хостинге у меня установлены Umbraco (ASP.NET) и Blab Lite (PHP Chatroom). Первый говорит с SQL 2005, а второй с MySQL 5.

На моем сайте Umbraco была гостевая книга с формой заявки. При обратной передаче он проверяет Akismet и пропускает создание / сохранение соответствующего документа Umbraco, если он подтвержден Akismet как спам.

Однако недавно я начал получать записи, созданные под узлом моей гостевой книги, которые проверяются как спам, и все же документ все еще сохраняется. Я даже дошел до того, что скрыл форму, используя «display: none», и все же эти записи все еще созданы! Я изменил библиотеку DLL, чтобы включить ведение журналов в журналах событий документов Umbraco, и каким-то образом их создание все еще не вызывает записи в журналах. Я даже создал обработчик событий для события Document.BeforeSave в отдельной сборке, и этот обработчик не отслеживает сохранение этих записей.

Я действительно озадачен тем, как спаммеры могут создавать эти записи. Кто-нибудь получил какие-либо идеи, как это можно сделать, и как я могу защитить свой сайт от такого рода атак?

Спасибо, Дэни.

Ответы [ 3 ]

1 голос
/ 20 сентября 2010

Это похоже на старый пост, но он не помечен как ответивший, поэтому я попробую. Я некоторое время пользовался Umbraco, поэтому не уверен, исправили ли они это в последней версии, но проблема в Umbraco. Document.BeforeSave () запускается ПОСЛЕ создания узла, поэтому ваш спам-фильтр не работает. Пометить форму как невидимую не получится, потому что бот будет смотреть на исходный код и просто шаблон, соответствующий найденным полям формы. Посмотрите здесь для получения более подробной информации о проблеме Umbraco:

http://forum.umbraco.org/yaf_postst9312_BeforePublish-and-BeforeSave-Event-Handlers.aspx

Как я уже говорил, я не использовал Umbraco целую вечность, но, надеюсь, он кому-нибудь поможет, даже если вы нашли исправление.

Пол

0 голосов
/ 05 декабря 2009

Да, слушатели событий действительно работают. Это привело меня к мысли, что здесь что-то странное. Я наконец сделал решающий шаг и прошел через все это с более точным гребнем. Сначала я сравнил содержимое папки bin между стандартным дистрибутивом Umbraco 4 и тем, что находится на моем хосте. Я подумал, что проще всего переписать каждый новый. Затем я просмотрел каждый установленный пакет Umbraco и убедился, что библиотеки DLL тоже в порядке. Ну, была одна DLL, которая не соответствовала ничему другому в Umbraco или установленных мной пакетах - EO.Web.dll!

Похоже, что EssentialObjects предлагает что-то законное, но я не думаю, что Umbraco, мой код или какой-либо из пакетов действительно его используют! Я удалил его, и каждая часть моей установки Umbraco все еще работает! Теперь я установил видимость формы в разметке ascx, чтобы она не отображалась - теперь мы подождем и посмотрим, не является ли это вредоносным фрагментом вредоносного ПО!

0 голосов
/ 04 декабря 2009

Я предполагаю, что в вашем коде есть ошибка, позволяющая пропустить создание / сохранение документа Umbraco ... хотя странно, что событие Document.BeforeSave не вызывается. Вы уверены, что ваши слушатели событий также работают (т.е. они регистрируют сохранение записей, не являющихся спамом?)

Кстати, установка «display: none» не остановит спамеров, так как боты, как правило, игнорируют CSS.

...