2009-12-03 5 views
0

J'ai un problème incroyablement frustrant de nettoyer mon site en ce moment. Sur le même espace d'hébergement, j'ai installé Umbraco (ASP.NET) et Blab Lite (PHP Chatroom). Le premier parle à SQL 2005, et le second à MySQL 5.Problèmes de sécurité ASP.NET, peut-être liés à Umbraco, mais très probablement problème de sécurité générale

Sur mon site Umbraco, j'avais un livre d'or avec un formulaire d'inscription. Lors de la publication, il effectue un contrôle Akismet et ignore la création/l'enregistrement du document Umbraco correspondant s'il est vérifié par Akismet comme spam.

Cependant, récemment, j'ai commencé à créer des entrées créées sous mon nœud de livre d'or, qui sont vérifiées comme spam, et pourtant le document est toujours sauvegardé. Je suis même allé jusqu'à cacher le formulaire en utilisant "display: none" et pourtant ces entrées sont toujours créées! J'ai modifié la DLL pour inclure la journalisation dans les journaux d'événements de document Umbraco et d'une manière ou d'une autre la création de ceux-ci ne déclenche toujours aucune entrée dans les journaux. J'ai même créé un eventhandler pour l'événement Document.BeforeSave dans un assembly séparé et ce gestionnaire d'événements n'attrape pas la sauvegarde de ces entrées.

Je suis vraiment perplexe quant à la façon dont les spammeurs peuvent créer ces entrées. Quelqu'un at-il des idées comment cela peut-il être fait, et comment je peux sécuriser mon site pour empêcher ce genre d'attaque?

Merci, Dany.

Répondre

1

Cela ressemble à un vieux message mais il n'est pas marqué comme répondu, donc je vais essayer. Je n'ai pas utilisé Umbraco depuis un moment, donc je ne suis pas sûr si ils ont corrigé cela dans la dernière version, mais le problème est avec Umbraco lui-même. Document.BeforeSave() est déclenché APRÈS la création du nœud, votre filtre anti-spam ne fonctionne pas. Marquer le formulaire comme non visible ne fonctionnera pas parce que le bot regardera le code source et juste le motif correspond aux champs de formulaire qu'il trouve. Jetez un coup d'oeil ici pour plus de détails sur le problème Umbraco:

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

Comme je l'ai dit, je ne l'ai pas utilisé Umbraco dans les âges, mais nous espérons que cela aidera quelqu'un même si vous avez trouvé une solution.

Paul

0

Je suppose qu'il y a un bug dans votre code pour ignorer la création/sauvegarde du document Umbraco ... bien qu'il soit étrange que l'événement Document.BeforeSave ne soit pas déclenché. Etes-vous sûr que vos écouteurs d'événements fonctionnent également (enregistrent-ils l'enregistrement des entrées non-spam?)

Par ailleurs, la définition de "display: none" n'arrêtera pas les spammeurs car les bots ignoreront généralement CSS de toute façon .

0

Oui, les écouteurs d'événement fonctionnent effectivement. Cela m'amène à penser que quelque chose d'autre est étrange ici. J'ai finalement franchi le pas et traversé le tout avec un peigne à dents plus fines. J'ai d'abord comparé le contenu du dossier bin entre la distribution standard Umbraco 4 et celle de mon hébergeur. Je me suis dit qu'il était plus facile de remplacer chacun d'eux par un nouveau. Ensuite, je suis allé à travers chaque paquet Umbraco que j'ai installé et j'ai vérifié que les DLL sont aussi bien. Eh bien, il y avait 1 DLL qui ne correspondait à rien d'autre dans Umbraco ou les paquets que j'ai installés - EO.Web.dll!

Il semble qu'il y ait une chose légitime par EssentialObjects mais je ne pense pas que Umbraco, mon code, ou l'un des paquets l'utilise réellement! Je l'ai supprimé et chaque partie de mon installation Umbraco fonctionne toujours! J'ai maintenant défini la visibilité de la forme dans le balisage ascx afin qu'elle ne soit pas rendue - maintenant nous attendons de voir si c'est le malware malveillant!