السبت، 5 أكتوبر 2013
5.10.13

SQL injection الجزء الأول

SQL Injection


الســــــــــــلام عليكــم و رحمة الله و بركــــــــــــاتــه




في سلسلة لفهم أكثر الهجمات تأثيرا و انتشارا سنقوم بشرح من خلال عدة أجزاء SQL Injection Attacks  , و في هذا الجزء سنقوم بشرح مبادئ تطبيقات الويب Web Application

·         الدروس أو التدوينات تحتاج :            
1.       فهم و مبادئ في SQL                        
2.       فهم لغة PHP 
3. مبادئ  MySQL

فهم طريقة عمل تطبيقات الويب : 
سننطلق في شرحنا من الصفحة التالية :
 http://www.victim.com/products.php?val=100

سكريبت PHP     التالي products.php يضهر كيف أن المتصفح يدخل قيمة في المتغيير val   و عند نقوم بارسال الرابط الى السيرفر وييب فهو يقوم بتنفيذ الكود التالي.


// الإتصال بقاعدة البيانات Database
$conn = mysql_connect(“localhost”,“username”,“password”);
// تكوين Sql statement من خلال المتغيير الذي أدخله المتصفح
$query = “SELECT ? FROM Products WHERE Price < ‘$_GET[“val”]’ ”. “ORDER BY ProductDescription”;
// تنفيذ كود sql
$result = mysql_query($query);
// تكرار من خلال  record set
while($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
// عرض النتيجة على شاشة المتصفح
echo “Description : {$row[‘ProductDescription’]} <br>”.
“Product ID : {$row[‘ProductID’]} <br>”.
“Price : {$row[‘Price’]} <br><br>”;
}
// End

 و من خلال هذا السكريبت الذي تم تنفيذه في الويب سيرفر سنحصل على الكود التالي الذي سيتم تنفيذه في سيرفر قاعدة البياناتDatabase Server 

 SELECT ?
FROM Products WHERE Price <‘100.00’
ORDER BY ProductDescription;


Application Architecture مستوى أول :
  •  يتكون من 3 درجات :          Presentation Tier - Logic Tier - Storage

 

  •  العمل :  المستعمل يقوم بفتح المتصفح الموجود ب Presentation Tier ويقوم بالإتصال بالموقع www.victim.com  والسيرفر ويب الموجود ب Logic Tier يقوم بتنفيذ السكريبت PHP Script مثلا و ارساله عن طريق Scripting Engine  ,السكريبت يفتح اتصال مع قاعدة البيانات الموجودة ب Storage Tier و يقوم بتنفيذ SQL Statement في Database Server و من خلال النتيجة على شكل بيانات Database التي يتم ارسالها ل Scripting Engine   و منه ل Logic Tier  و   منه ل  Presentation Tier على شكل  HTML 

Application Architecture مستوى متقدم :

               ·         يتكون من 4 درجات :          Presentation Tier - Logic Tier - Application Tier - Storage





  •        العمل : مثل الطريق الأولى الا أن التواصل بين logic Tier و Storage يكون عن طريق Application tier


انتهى الدرس و السلام عليكم

المرجوا ذكر المصدر قبل النسخ حتى لا يضيع التعب هباء

ومرحبا باستفساراتكم ....



0 comments:

إرسال تعليق

أضف تعليقك