LinuxディストリビューションのKali(apt-get経由)にtomcat7をインストールし、最新のwebgoatリリースをhttps://github.com/WebGoat/WebGoat/releases/download/7.0.1/webgoat-container-7.0.1.war からwebappディレクトリにダウンロードしました。 https://deepakdevanand.wordpress.com/2015/05/25/installing-webgoat-on-kali-linux/Kaliのwebgoatでログインするときにエラーが発生しました
URLのlocalhostを以下に示します:ここで説明したように、私はwebgoatためのTomcatのユーザーを追加したほか
8080/webgoat-コンテナ-7.0.1 /攻撃は、私が使ってログインすることができますスタートページにつながりますユーザーwebgoat。 Btw。このチュートリアルでは、ユーザー名「webgoat」とパスワード「Sec3rt」を使用して独自の設定されたTomcatユーザーを使用する必要があると述べていますが、Webページにはデフォルトの管理ユーザー名が「webgoat」で、パスワードは「webgoat」です。
そこにログインし、エラーメッセージが表示されます。
Error Message: Could not initialize class org.owasp.webgoat.session.UserTracker
java.lang.NoClassDefFoundError: Could not initialize class org.owasp.webgoat.session.UserTracker
at org.owasp.webgoat.session.Screen.getLessonTracker(Screen.java:117)
at org.owasp.webgoat.lessons.LessonAdapter.makeSuccess(LessonAdapter.java:251)
at org.owasp.webgoat.plugin.HowToWork.createContent(HowToWork.java:53)
at org.owasp.webgoat.lessons.AbstractLesson.handleRequest(AbstractLesson.java:868)
at org.owasp.webgoat.HammerHead.makeScreen(HammerHead.java:332)
at org.owasp.webgoat.HammerHead.doPost(HammerHead.java:148)
at org.owasp.webgoat.HammerHead.doGet(HammerHead.java:104)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:624)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:103)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:154)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:199)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:110)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:50)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:343)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:260)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745)
Tomcatのログファイルは、同じエラーを示しています。
INFO: No Spring WebApplicationInitializer types detected on classpath
Apr 08, 2016 8:27:44 AM org.apache.catalina.core.ApplicationContext log
INFO: Initializing Spring root WebApplicationContext
Apr 08, 2016 8:27:47 AM org.apache.catalina.core.ApplicationContext log
INFO: WebGoat is starting
Apr 08, 2016 8:27:47 AM org.apache.catalina.core.ApplicationContext log
INFO: Adding extra mappings for lessions
Apr 08, 2016 8:27:49 AM org.apache.catalina.core.ApplicationContext log
INFO: Initializing Spring FrameworkServlet 'mvc-dispatcher'
Apr 08, 2016 8:43:43 AM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet [mvc-dispatcher] in context with path [/webgoat-container-7.0.1] threw exception [Handler processing failed; nested exception is java.lang.NoClassDefFoundError: Could not initialize class org.owasp.webgoat.session.UserTracker] with root cause
java.lang.NoClassDefFoundError: Could not initialize class org.owasp.webgoat.session.UserTracker
NoClassDefFoundErrorメッセージが「クラスXYZを初期化できませんでした。」は、通常、JVMがすでにクラス「XYZ」をロードしようとしていることを示しています。上記のログの前にログに他の例外、特に 'ExceptionInInitializerError'がありますか? –
確認できるwebgoatログファイルはありますか?私はユーザーwebgoatとしてログインしています。 java情報: javaバージョン "1.7.0_91" OpenJDKランタイム環境(IcedTea 2.6.3)(7u91-2.6.3-1) OpenJDK 64ビットサーバーVM(ビルド24.91-b01、混合モード) –
このチュートリアルは次のとおりです。 WebGoatはバージョン5.4と7.0.1の間で大きなアーキテクチャ上の変更を受けています。私はチュートリアルで推奨されているようにtomcat-users.xmlを編集する必要はないと言います。第2に、Tomcat logsフォルダの下に他のログファイルがあるはずです。特に 'webgoat_main.log'ファイルを調べてみてください。 –