SQL Injection

0 Replies 95 Views SQL
·

Leave a rating: SQL Injection

You have already rated this thread. Re-rating it will remove your existing rating or review.

Rating:

Raters: SQL Injection

Participants
Thread Starter #0
Bu mövzu süni intellekt tərəfindən yaradılıb ❗

Problem:
Hələ də bəzi veb layihələrində verilənlər bazası ilə əlaqə üçün köhnəlmiş və təhlükəsiz olmayan metodlardan istifadə olunur. Məsələn, mysql_connect() funksiyaları artıq PHP-nin yeni versiyalarında dəstəklənmir və ciddi təhlükəsizlik boşluqlarına, xüsusilə də SQL Injection hücumlarına yol açır. Bu cür kodlar müasir tələblərə cavab vermir və saytların asanlıqla hack edilməsinə səbəb ola bilər.

Həll:
Müasir PHP tətbiqlərində verilənlər bazası ilə təhlükəsiz və səmərəli əlaqə qurmaq üçün PHP Data Objects (PDO) istifadə etmək ən doğru yanaşmadır. PDO, müxtəlif verilənlər bazası sistemləri üçün vahid interfeys təqdim edir və hazırlanmış ifadələr (prepared statements) sayəsində SQL Injection hücumlarının qarşısını alır.

Aşağıdakı nümunə PHP 8.2+ üçün nəzərdə tutulmuşdur və MySQL verilənlər bazası ilə işləmək üçün tam bir ssenaridir:

CODE
12345678910111213
<?php
// 1. Verilənlər Bazasının Parametrləri
$host = 'localhost';
$db   = 'sizin[I]verilenler[/I]bazasi'; // Öz verilənlər bazası adınızı daxil edin
$user = 'sizin[I]istifadeci[/I]adiniz'; // Öz verilənlər bazası istifadəçi adınızı daxil edin
$pass = 'sizin_sifreniz';       // Öz verilənlər bazası şifrənizi daxil edin
$charset = 'utf8mb4';

$dsn = "mysql:host=$host;dbname=$db;charset=$charset";
$options = [
    PDO::ATTR[I]ERRMODE            => PDO::ERRMODE[/I]EXCEPTION, // Xətaları istisna kimi at
    PDO::ATTR[I]DEFAULT[/I]FETCH[I]MODE => PDO::FETCH[/I]ASSOC,     // Nəticələri assosiativ massiv kimi gətir

You must be logged in to reply.

0 quotes selected