Misol uchun

Tarmoq portlarini skanerlash

Tarmoq portlarini skanerlash orqali tizimdagi ochiq portlarni aniqlash va ularning holatini tekshirish mumkin. Buning uchun Python socket kutubxonasidan foydalanamiz. Bu kutubxona bizga tarmoq bilan ishlashda yordam beradi, masalan, biror kompyuterning qaysi portlari ochiq ekanligini aniqlash mumkin.

Python yordamida portlarni skanerlash

Quyidagi kodda ma'lum bir IP manzili uchun 1 dan 1024-gacha bo'lgan portlar ochiq yoki yo'qligini tekshiramiz.

import socket

# Tarmoq portlarini skanerlash funktsiyasi
def port_scan(ip, start_port, end_port):
    print(f"Skaner qilinayotgan IP: {ip}")
    for port in range(start_port, end_port + 1):
        s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        s.settimeout(0.5)  # Har bir portga ulanish uchun 0.5 soniya vaqt beriladi
        result = s.connect_ex((ip, port))  # Portga ulanish
        if result == 0:
            print(f"Port {port}: OCHIQ")
        else:
            print(f"Port {port}: YOPIQ")
        s.close()

# Misol uchun, localhost (127.0.0.1) ni skanerlash
ip_address = "127.0.0.1"
port_scan(ip_address, 1, 1024)

Kodning ishlash tartibi:

  1. socket.socket() yordamida tarmoq ulanishi uchun soket hosil qilamiz.

  2. connect_ex() metodi orqali biz IP manzildagi aniq portga ulanishni sinaymiz. Agar u muvaffaqiyatli bo'lsa, port ochiq ekanligi haqida xabar chiqadi. Agar ulanish bo'lmasa, port yopiq deb qaytariladi.

  3. settimeout() funksiyasi har bir portni tekshirish uchun maksimal vaqtni belgilaydi, bu esa skanerlash jarayonini tezlashtiradi.

Amaliy natijalar:

Agar sizda localhost (127.0.0.1) ni skanerlash natijasida quyidagi ko'rinishga o'xshash natijalarni ko'rsangiz:

yamlCopy codeSkaner qilinayotgan IP: 127.0.0.1
Port 1: YOPIQ
Port 2: YOPIQ
...
Port 80: OCHIQ
...
Port 1024: YOPIQ

Bu yerda 80-port ochiq ekanligini ko'ramiz, bu ko'p hollarda veb-serverlar uchun ishlatiladigan portdir.

Xulosa:

Portlarni skanerlash tizim va tarmoq xavfsizligi uchun muhim jarayonlardan biri hisoblanadi. Bunday skriptlar tizimlarda zaifliklarni aniqlash va ochiq portlar orqali kirib kelishi mumkin bo'lgan xavflarni kamaytirishga yordam beradi.

Last updated