🐍 Python’da Xavfsizlik: Dasturchilar Eng Ko‘p Qiladigan 10 Ta Xato

Saqlab olindi !

🐍 Python’da Xavfsizlik: Dasturchilar Eng Ko‘p Qiladigan 10 Ta Xato

Bugungi kunda Python — web, automation, AI va backend sohalarda eng ko‘p ishlatiladigan tillardan biri. Lekin ko‘plab dasturchilar funksional kod yozishga e’tibor berib, xavfsizlikni ikkinchi o‘ringa qo‘yishadi.

Natija? 🔓 Ma’lumotlar sizib chiqadi 🔓 Hisoblar buziladi 🔓 Platforma ishonchliligi yo‘qoladi

Keling, Python’da eng ko‘p uchraydigan xavfsizlik xatolarini ko‘rib chiqamiz.

1️⃣ Parollarni oddiy matn ko‘rinishida saqlash

❌ XATO:

password = "123456"

Yoki database’da parolni hash qilmasdan saqlash.

✅ TO‘G‘RI:

from werkzeug.security import generate_password_hash

hashed_password = generate_password_hash("123456")

Har doim:

Parolni hash qiling

Kuchli algoritmlardan foydalaning (bcrypt, Argon2)

2️⃣ SQL Injection’dan himoyalanmaslik

❌ XATO:

query = f"SELECT * FROM users WHERE username = '{username}'"

Bu yerda attacker SQL kod yuborishi mumkin.

✅ TO‘G‘RI:

cursor.execute("SELECT * FROM users WHERE username = %s", (username,))

Yoki ORM (Django ORM, SQLAlchemy) ishlating.

3️⃣ eval() funksiyasidan foydalanish

❌ XATO:

user_input = input() eval(user_input)

Bu to‘g‘ridan-to‘g‘ri serverni buzishga imkon beradi.

📌 Qoidа: Hech qachon user input’ni eval qilmang.

4️⃣ DEBUG rejimini production’da yoqib qo‘yish

Django’da:

DEBUG = True

Production’da bu xavfli. Chunki error sahifasi ichki ma’lumotlarni ko‘rsatadi.

✅ Production’da:

DEBUG = False

5️⃣ Environment o‘zgaruvchilaridan foydalanmaslik

❌ XATO:

SECRET_KEY = "supersecretkey123"

✅ TO‘G‘RI:

import os SECRET_KEY = os.environ.get("SECRET_KEY")

Yoki .env fayl ishlating (python-dotenv).

6️⃣ Input validation qilmaslik

Userdan kelgan ma’lumot har doim tekshirilishi kerak.

Masalan:

Email format

Fayl hajmi

Fayl turi

Matn uzunligi

Hech qachon user ma’lumotiga ishonmang.

7️⃣ Rate limiting yo‘qligi

Login sahifasida cheklov bo‘lmasa:

Attacker millionlab parol kombinatsiyasini sinab ko‘rishi mumkin.

Django’da:

django-ratelimit

DRF throttling

ishlatish tavsiya qilinadi.

8️⃣ HTTPS ishlatmaslik

Agar sayt HTTP’da ishlasa:

Parollar ochiq ketadi

Cookie’lar o‘g‘irlanadi

Har doim:

SSL sertifikat

Secure cookies

HSTS yoqing

9️⃣ Fayl yuklashni nazorat qilmaslik

User .exe yoki zararli fayl yuklashi mumkin.

Tekshiring:

Fayl kengaytmasi

MIME type

Maksimal hajm

🔟 Logging qilmaslik

Xavfsizlik hodisalari log qilinmasa:

Muammoni topa olmaysiz

Hujumni aniqlay olmaysiz

Har doim:

Failed login

Suspicious activity

Server error’larni log qiling

🔐 Xulosa

Python xavfsiz til. Lekin xavfsiz kod yozish — dasturchining mas’uliyati.

Eslab qoling:

Xavfsizlik qo‘shimcha funksiya emas. Bu tizimning bir qismi.

Agar siz backend yoki web dasturchi bo‘lsangiz, quyidagilarni bilishingiz shart:

Authentication & Authorization

Hashing

SQL injection himoyasi

Secure deployment

Environment config

+8

👍

+0

❤

+0

😎

+0

💥

+0

👽

+0

😐

+0

👎

Maqola teglari

Havfsizlik Tarmoq OS
Abdurahmon Rashidov Python 317
Facebook Telegram

Bu haftada ko'p o'qildi

Kompyuter tarmoqlarining asosiy turlari

Kompyuter tarmoqlarining asosiy turlari

62651 1348
Umumiy tezkor tugmalar : shortcuts

Umumiy tezkor tugmalar : shortcuts

12471 198
Kesh xotira nima va uning vazifalari

Kesh xotira nima va uning vazifalari

7824 526

Mavzuga oid

O‘zbekistondagi ochiq ma’lumotlar bilan ishlash: census.stat.uz va Python Data Analytics

O‘zbekistondagi ochiq ma’lumotlar bilan ishlash: census.stat.uz va Python Data Analytics

242 6
Data Analitika orqali O‘zbekistonda daromadni oshirish

Data Analitika orqali O‘zbekistonda daromadni oshirish

234 2
🐍 Pythonni oson o‘rganish uchun nima qilish kerak?

🐍 Pythonni oson o‘rganish uchun nima qilish kerak?

284 2