ASP.NET 보안 문제(Umbraco와 관련이 있을 수 있지만 일반적인 보안 문제일 가능성이 높음)

StackOverflow https://stackoverflow.com/questions/1843373

문제

현재 내 사이트를 정리하는 데 엄청나게 실망스러운 문제가 있습니다.동일한 호스팅 공간에 Umbraco(ASP.NET)와 Blab Lite(PHP Chatroom)가 설치되어 있습니다.전자는 SQL 2005와 관련이 있고 후자는 MySQL 5와 관련이 있습니다.

내 Umbraco 사이트에는 참가 양식이 포함된 방명록이 있었습니다.포스트백 시 Akismet 검사를 수행하고 Akismet에서 스팸으로 확인된 경우 해당 Umbraco 문서의 생성/저장을 건너뜁니다.

그러나 최근에 스팸으로 확인된 방명록 노드 아래에 항목이 생성되기 시작했는데 문서가 여전히 저장되어 있습니다."display:none"을 사용하여 양식을 숨기는 데까지 이르렀지만 이러한 항목은 여전히 ​​생성됩니다!Umbraco 문서 이벤트 로그에 대한 로깅을 포함하도록 DLL을 수정했는데 어떻게든 이러한 생성이 여전히 로그 항목을 트리거하지 않습니다.별도의 어셈블리에 Document.BeforeSave 이벤트에 대한 이벤트 핸들러도 만들었지만 이 이벤트 핸들러는 이러한 항목의 저장을 포착하지 못합니다.

스팸 발송자가 어떻게 이러한 항목을 생성할 수 있는지에 대해 정말 당황스럽습니다.이 작업을 수행하는 방법과 이러한 종류의 공격을 방지하기 위해 내 사이트를 보호할 수 있는 방법에 대해 아는 사람이 있습니까?

감사 대니.

도움이 되었습니까?

해결책

오래된 게시물인 것 같지만 답변으로 표시되지 않았으므로 한번 시도해 보겠습니다.한동안 Umbraco를 사용하지 않았기 때문에 최신 버전에서 이 문제가 수정되었는지는 확실하지 않지만 문제는 Umbraco 자체에 있습니다.Document.BeforeSave()는 노드가 생성된 후에 실행되므로 스팸 필터가 작동하지 않습니다.봇이 소스 코드를 보고 찾은 양식 필드와 패턴을 일치시키기 때문에 양식을 표시되지 않음으로 표시하는 것은 작동하지 않습니다.Umbraco 문제에 대한 자세한 내용은 여기를 참조하십시오.

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

내가 말했듯이 나는 오랫동안 Umbraco를 사용하지 않았지만, 해결책을 찾았더라도 누군가에게 도움이 되기를 바랍니다.

다른 팁

내 생각엔 Umbraco 문서의 생성/저장을 건너뛰는 코드에 버그가 있는 것 같습니다...Document.BeforeSave 이벤트가 트리거되지 않는 것은 이상합니다.이벤트 리스너도 작동하고 있습니까(예:스팸이 아닌 항목의 저장을 등록합니까?)

그런데 봇은 일반적으로 CSS를 무시하므로 "display:none"을 설정해도 스패머가 차단되지는 않습니다.

네, 이벤트 리스너가 실제로 작동하고 있습니다.이로 인해 여기서 뭔가 다른 것이 이상하다고 생각하게 되었습니다.나는 마침내 급락하여 더 가는 빗으로 모든 것을 해냈습니다.먼저 표준 Umbraco 4 배포판과 호스트에 있는 배포판 사이의 bin 폴더 내용을 비교했습니다.나는 각각을 새로운 것으로 덮어쓰는 것이 가장 쉽다고 생각했습니다.그런 다음 설치한 각 Umbraco 패키지를 살펴보고 DLL도 괜찮은지 확인했습니다.음, Umbraco나 내가 설치한 패키지에는 다른 것과 일치하지 않는 DLL이 1개 있었습니다 - EO.Web.dll!

EssentialObjects에는 합법적인 것이 있는 것 같지만 Umbraco, 내 코드 또는 어떤 패키지에서도 실제로 이를 사용하는 것 같지 않습니다!삭제했는데 Umbraco 설치의 모든 부분이 여전히 작동합니다!이제 ascx 마크업에서 양식의 가시성을 설정하여 렌더링되지 않도록 했습니다. 이제 그것이 문제가 되는 악성 코드인지 확인하기 위해 기다리고 있습니다!

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top