الأربعاء، 29 سبتمبر 2010

Port scanner باستخدام لغة البايثون

Port scanner
باستخدام لغة البياثون

#!/usr/bin/python
import socket
import sys
target="127.0.0.1" #the target of our program
for i in range(1,65535):
    sos=socket.socket(socket.AF_INET,socket.SOCK_STREAM,socket.IPPROTO_TCP)
    res = sos.connect_ex((target,i))
    if res == 0:
        print i
    sos.close()
    del(sos)
print("The port scanning finish......")
sys.exit(1)


for i in range(1,65535):
1-يحدد المجال الرقمي الذي تقع فيه قيمة المتغير المستخدم كقيمة للمنفذ

    sos=socket.socket(socket.AF_INET,socket.SOCK_STREAM,socket.IPPROTO_TCP)
2-أنشاء اتصال جديد


res = sos.connect_ex((target,i))  

3-الأمر يعيد القيمة صفر في حالة نجاح محاولة الاتصال , و في حالة الفشل يعيد رقم يدل على نوع الخطأ .

if res == 0:
        print i

4-يقوم البرنامج بمقارنة قيمة المتغير الذي يحتوي على نتيجة محاول الاتصال , في حالة مساواة الصفر سيطبع قيمة المنفذ المستخدم.

sos.close()
    del(sos)


5-إغلاق الاتصال,وحذف المتغير.


print("The port scanning finish......")
sys.exit(1)

6-أعلام المستخدم بانتهاء البحث , وإنهاء البرنامج




-لتشغيل البرنامج على نظام لينكس , أحفظ الملف و أستخدم الأمر التالي:
chmod +x port.py
./port.py


أضغط لتنزيل المثال
*ملاحظة:البرنامج يعمل على نظام ويندوز بشرط وجود البياثون على النظام

ليست هناك تعليقات:

إرسال تعليق