Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

SQL Injection Tutorial

SQL injection hacky sú vykonávané na serveroch , ktoré nemajú potrebné bezpečné programovania . Tie sú zvyčajne vykonáva na serveroch , kde webové stránky kód používa inline SQL , čo znamená , že dotaz je na webové stránky kód , skôr než sa nachádza v uloženej procedúre . Vedieť , ako SQL injection hack funguje pomáha majiteľom webových stránok , chrániť dáta zákazníkov a zabezpečenie webových stránok . Formulár Variable

Prvým krokom v pochopení toho, ako je vytvorená vstrekovacie útok SQL je replikáciou problému . SQL injection útoky sú vykonávané prostredníctvom formulárových premenných na stránke HTML . Vytvorenie formulára umožňuje webmaster simulovať a testovať bezpečnosť webového servera . Nižšie je uvedený príklad objektu formulára slúži na vytvorenie útoku SQL injection .

Input type = " text " name = " myname " >

Hoci sa jedná o jednoduchý formulár textbox , to je všetko , čo je potrebné na dosiahnutie SQL injekcie .
Hacker kód

sú SQL príkazy vykonané , vytvorí aplikácie SQL kód , ktorý je odoslaný do databázy . Keď je reťazec poslaný do databázy , kód vyzerá ako nižšie uvedené znenia :

select * from myTable kde name = ' myVariableFromtheForm '

dielik znamená koniec SQL kódu , a je to , kde sa zameriavajú hackeri . Ak textové pole ako ten vytvorený v § 1 je použitý na vytvorenie reťazca , môže hacker zadať niečo ako nasledujúce do textového poľa :

' alebo 1 = 1 , -

môže vyzerať ako blabol , ale v skutočnosti to vstrekuje kód do databázy , ktorý je spustený server . Keď " myVariableFromtheForm " nahrádza vyššie uvedenom kódu , výpis spustiť server v skutočnosti vyzerá takto :

select * from myTable kde name = '' or 1 = 1 - "

" - " je komentár kód pre SQL servera , takže posledná zakončovacie kliešť je ignorovaný . Reťazec je prázdny a hacker vstrekuje kód " 1 = 1 " do vyhlásenia . Čo to robí , je vrátiť všetky riadky z tabuľky do hacker . To je, ako bezohľadný človek kradne osobné údaje z databázových serverov .
Riešenie problému

najlepší spôsob , ako vyriešiť problém v kóde , ktorý je citlivý na injekcie hack SQL je použiť funkciu " Nahradiť " v každom prípade , kde je zadaný text od užívateľov . Napríklad , v kóde ASP , nasledujúci riadok kódu nahradí jeden dielik s dvoma . Keď SQL Server spustí kód s dvoma značkami , to znie ako doslovný a reťazec nie je ukončená

string.Replace ( " ' " , " '' " ) ; .

vyššie uvedený kód nahradí všetky výskyty jedného podtržníkom s dvoma , odstránenie zraniteľnosti útoku SQL injection .

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené