Justin Clarke Lead Author and Technical Editor Rodrigo Marcos Alvarez Dave Hartley Joseph Hemler Alexander Kornbrust Haroon Meer Gary O’Leary-Steele Alberto Revelli Marco Slaviero Dafydd Stuttard


Testing for SQL Injection • Chapter 2



Download 6,54 Mb.
Pdf ko'rish
bet44/64
Sana12.07.2022
Hajmi6,54 Mb.
#784293
1   ...   40   41   42   43   44   45   46   47   ...   64
Bog'liq
SQL Injection Attacks and Defense.pdf ( PDFDrive )

 
Testing for SQL Injection • Chapter 2
 
31
Testing by Inference
There is one simple rule for identifying SQL injection vulnerabilities: Trigger anomalies by 
sending unexpected data. This rule implies that:
You identify all the data entry on the Web application.

You know what kind of request might trigger anomalies.

You detect anomalies in the response from the server.

It’s as simple as that. First you need to see how your Web browser sends requests to the 
Web server. Different applications behave in different ways, but the fundamentals should be 
the same, as they are all Web-based environments.
Once you identify all the data accepted by the application, you need to modify it and 
analyze the response from the server. Sometimes the response will include an SQL error 
directly from the database and will make your life very easy; however, other times you will 
need to remain focused and detect subtle differences.
Identifying Data Entry
Web environments are an example of client/server architecture. Your browser (acting as a 
client) sends a request to the server and waits for a response. The server receives the request, 
generates a response, and sends it back to the client. Obviously, there must be some kind of 
understanding between the two parties; otherwise, the client would request something and 
the server wouldn’t know how to reply. The understanding of both parties is given by the 
use of a 
protocol
; in this case, HTTP.
Our first task is to identify all data entry accepted by the remote Web application. HTTP 
defines a number of actions that a client can send to the server; however, we will focus on 
the two most relevant ones for the purpose of discovering SQL injection: the 
GET
and 
POST
methods.
GET Requests
GET
is an HTTP method that requests to the server whatever information is indicated in 
the URL. This is the kind of method that is normally used when you click on a link. 
Usually, the Web browser creates the 
GET
request, sends it to the Web server, and renders 
the result in the browser. Although it is transparent to the user, the 
GET
request that is sent 
to the Web server looks like this:
GET /search.aspx?text=lcd%20monitors&cat=1&num=20 HTTP/1.1
Host:www.victim.com
User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.8.1.19)
Gecko/20081216 Ubuntu/8.04 (hardy) Firefox/2.0.0.19



Download 6,54 Mb.

Do'stlaringiz bilan baham:
1   ...   40   41   42   43   44   45   46   47   ...   64




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish