PDA

Просмотр полной версии : SQL / c++


underpl1g
05.02.2021, 20:13
Как проверять совпадает ли логин и пароль с тем, что указан в базе данных?

Если нет, то *мое действие*

Tema05
05.02.2021, 20:19
пароль


ты имел ввиду хеш пароля?

underpl1g
05.02.2021, 20:20
ты имел ввиду хеш пароля?


для начала именно пароль и логин, без зашифровок

Dark_Knight
06.02.2021, 22:46
для начала именно пароль и логин, без зашифровок


Давай так. Сразу эту идею мы отбрасываем и забываем про неё. Сравнивай исключительно ХЕШ пароля. Второй вопрос. Ты делаешь подключение к БД сразу в своей программе или используешь прослойку какую-то? Прослойка в данном случае - это ты передаешь данные куда-то на сервер и он уже там ответ делает запрос к БД и тебе только отдает ответ от БД.

Vintik
07.02.2021, 22:12
Давай так. Сразу эту идею мы отбрасываем и забываем про неё. Сравнивай исключительно ХЕШ пароля. Второй вопрос. Ты делаешь подключение к БД сразу в своей программе или используешь прослойку какую-то? Прослойка в данном случае - это ты передаешь данные куда-то на сервер и он уже там ответ делает запрос к БД и тебе только отдает ответ от БД.


Человек задал конкретный вопрос, зачем его учить? Он вроде бы советов не просил.

PHP:






$mysqli
=
mysqli_connect
(
$mysql_host
,
$mysql_user
,
$mysql_password
,
$mysql_database
)
;
mysqli_query
(
$mysqli
,
"SET NAMES 'utf8'"
)
;
$mysqli_query
=
mysqli_query
(
$mysqli
,
"SELECT id FROM users WHERE login = '$login' AND passwd = '$passwd'"
)
;
# делает запрос по введенному логину и паролю
$count
=
mysqli_num_rows
(
$mysqli_query
)
;
# получает количество результатов
if
(
$count
==
0
)
# сравнивает с нулём
$result
=
false
;
# если ноль - значит такого аккаунта нету
mysqli_close
(
$mysqli
)
;




Простая реализация на PHP. Думаю, с C++ разберешься.

Dark_Knight
07.02.2021, 23:11
@Vintik (https://www.blast.hk/members/148488/)

1. Мы его не учим. Мы эму даем советы, чтобы у него случайно в будущем не спиздили БД и он не плакала, что мы тут эму плохого посоветовали потому я испросил где это он хочет использовать. Вдруг эму чисто для практики надо на локалке сделать.

2. Где экранирование строк в запросе?

3. Использовать переменные напрямую в запросе - плохая практика. Даже для примера,

4. Где PDO?

5. Строки 5 и 6 можно записать ввиде одной строк и сразу убить проблему с необъявленной переменной. Вот тебе пример твоего кода, если значение будет один. https://ideone.com/JjYkzG (https://www.blast.hk/redirect/aHR0cHM6Ly9pZGVvbmUuY29tL0pqWWt6Rw)

Vintik
07.02.2021, 23:23
@Vintik (https://www.blast.hk/members/148488/)
1. Мы его не учим. Мы эму даем советы, чтобы у него случайно в будущем не спиздили БД и он не плакала, что мы тут эму плохого посоветовали потому я испросил где это он хочет использовать. Вдруг эму чисто для практики надо на локалке сделать.
2. Где экранирование строк в запросе?
3. Использовать переменные напрямую в запросе - плохая практика. Даже для примера,
4. Где PDO?
5. Строки 5 и 6 можно записать ввиде одной строк и сразу убить проблему с необъявленной переменной. Вот тебе пример твоего кода, если значение будет один. https://ideone.com/JjYkzG (https://www.blast.hk/redirect/aHR0cHM6Ly9pZGVvbmUuY29tL0pqWWt6Rw)


1. Согласен, был неправ.

2. Зачем? Так работает.

3. Не знал.

4. Зачем?)

5. Переменная объявлена строкой выше. Тут согласен, можно так, как ты посоветовал.

#Northn
07.02.2021, 23:25
2. Зачем? Так работает.


Чтобы не было sql инъекций

Vintik
07.02.2021, 23:26
Чтобы не было sql инъекций


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

Tema05
07.02.2021, 23:30
Человек задал конкретный вопрос, зачем его учить? Он вроде бы советов не просил.

PHP:






$mysqli
=
mysqli_connect
(
$mysql_host
,
$mysql_user
,
$mysql_password
,
$mysql_database
)
;
mysqli_query
(
$mysqli
,
"SET NAMES 'utf8'"
)
;
$mysqli_query
=
mysqli_query
(
$mysqli
,
"SELECT id FROM users WHERE login = '$login' AND passwd = '$passwd'"
)
;
# делает запрос по введенному логину и паролю
$count
=
mysqli_num_rows
(
$mysqli_query
)
;
# получает количество результатов
if
(
$count
==
0
)
# сравнивает с нулём
$result
=
false
;
# если ноль - значит такого аккаунта нету
mysqli_close
(
$mysqli
)
;




Простая реализация на PHP. Думаю, с C++ разберешься.


sql injection:

https://forum.antichat.xyz/attachments/27665562/

Dark_Knight
08.02.2021, 00:43
Ну тогда я совсем лох, потому что не слышал о таком. Покажи как это работает, как от этого защититься и где про это почитать. Плиз.


Читай в свое удовольствие (https://www.blast.hk/redirect/aHR0cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2g_dj1kUXc0dz lXZ1hjUQ). (https://www.blast.hk/redirect/aHR0cHM6Ly9oYWJyLmNvbS9ydS9wb3N0LzEzMDgyNi8jOn46dG V4dD1TUUwlMjDQuNC90YrQtdC60YbQuNGPJTIw4oCUJTIw0Y3R gtC-JTIw0L7QtNC40L0lMjDQuNC3LNCy0YHQtdCz0L4lMjDRjdGC0L 4lMjBNeVNRTCklMjDRh9GC0L4lMjDRg9Cz0L7QtNC90L4u)

imring
08.02.2021, 16:29
Покажи как это работает



https://habr.com/ru/post/347760/ (https://www.blast.hk/redirect/aHR0cHM6Ly9oYWJyLmNvbS9ydS9wb3N0LzM0Nzc2MC8)

или пример с сампом

50 секунда



где про это почитать



SQL injection для начинающих. Часть 1 (https://www.blast.hk/redirect/aHR0cHM6Ly9oYWJyLmNvbS9ydS9wb3N0LzE0ODE1MS8)

Приветствую тебя, читатель. Последнее время, я увлекаюсь Web-безопасностью, да и в какой-то степени работа связана с этим. Т.к. я всё чаще и чаще стал замечать темы на различных форумах, с просьбой...

habr.com


SQL инъекции. Проверка, взлом, защита (https://www.blast.hk/redirect/aHR0cHM6Ly9oYWJyLmNvbS9ydS9wb3N0LzEzMDgyNi8)

SQL инъекция — это один из самых доступных способов взлома сайта. Суть таких инъекций – внедрение в данные (передаваемые через GET, POST запросы или значения Cookie) произвольного SQL кода. Если сайт...

habr.com

Vintik
08.02.2021, 19:40
https://habr.com/ru/post/347760/ (https://www.blast.hk/redirect/aHR0cHM6Ly9oYWJyLmNvbS9ydS9wb3N0LzM0Nzc2MC8)

или пример с сампом

50 секунда

SQL injection для начинающих. Часть 1 (https://www.blast.hk/redirect/aHR0cHM6Ly9oYWJyLmNvbS9ydS9wb3N0LzE0ODE1MS8)

Приветствую тебя, читатель. Последнее время, я увлекаюсь Web-безопасностью, да и в какой-то степени работа связана с этим. Т.к. я всё чаще и чаще стал замечать темы на различных форумах, с просьбой...

habr.com


SQL инъекции. Проверка, взлом, защита (https://www.blast.hk/redirect/aHR0cHM6Ly9oYWJyLmNvbS9ydS9wb3N0LzEzMDgyNi8)

SQL инъекция — это один из самых доступных способов взлома сайта. Суть таких инъекций – внедрение в данные (передаваемые через GET, POST запросы или значения Cookie) произвольного SQL кода. Если сайт...

habr.com



Благодарю. Не знал, что этот олдовый метод со сменой пароля на а-ля pAdmin=22, является подобием инъекции.

@imring (https://www.blast.hk/members/106094/)

Скажи, а как в этом методе злоумышленники искали название ключей (тот же pAdmin)?

#Northn
08.02.2021, 21:57
Скажи, а как в этом методе злоумышленники искали название ключей (тот же pAdmin)?


мод в паблике скорее всего

Dark_Knight
08.02.2021, 22:00
Благодарю. Не знал, что этот олдовый метод со сменой пароля на а-ля pAdmin=22, является подобием инъекции.

@imring (https://www.blast.hk/members/106094/)
Скажи, а как в этом методе злоумышленники искали название ключей (тот же pAdmin)?


Скорее всего паблик мод и структура БД была известная.

Rei
08.02.2021, 22:18
видосу, который скинули 7 лет. тогда совсем другие времена были. сейчас в сампе sql инъекция абсолютно неактуальна. на 99.9% серверах есть проверки на вводимые символы через pawn.regex даже на самых худших нубо рп. поэтому о взломе сервера в 21 году таким способом можно только мечтать. а вот вопрос защиты от инъекции на своих сайтах или каких-нибудь других проектах актуален и заниматься им стоит. чел наверное подумал, что щас пойдёт сервера ломать. не)


криптону это расскажи. или кто там этими анальными игрищами с бд серваков занимается

Dark_Knight
09.02.2021, 03:32
видосу, который скинули 7 лет. тогда совсем другие времена были. сейчас в сампе sql инъекция абсолютно неактуальна. на 99.9% серверах есть проверки на вводимые символы через pawn.regex даже на самых худших нубо рп. поэтому о взломе сервера в 21 году таким способом можно только мечтать. а вот вопрос защиты от инъекции на своих сайтах или каких-нибудь других проектах актуален и заниматься им стоит. чел наверное подумал, что щас пойдёт сервера ломать. не)


В видео винтику показали не то, что можно ломануть сервер сампа, а что такое sql иньекции и чем они страшны.