Web Xavfsizligi: Asosiy Qoidalar
📅 25 Yanvar, 2026 | ⏱️ 7 daqiqa o'qish | ✍️ Muallif: Otabek Shodiyorov
Web xavfsizligi - bu har bir dasturchi va foydalanuvchi uchun juda muhim mavzu. Internet hayotimizning ajralmas qismiga aylandi va bu bilan birga xavf-xatarlar ham ko'paydi. Keling, web xavfsizligining asosiy qoidalarini o'rganaylik.
Nima uchun Web Xavfsizligi Muhim?
Har yili millionlab odamlarning shaxsiy ma'lumotlari o'g'irlanadi, veb-saytlar buziladi va kompaniyalar katta zarar ko'radi. Xavfsizlik - bu tanlov emas, majburiyat!
1. Parollar Xavfsizligi
Kuchli parol yaratish:
- Kamida 12-16 belgi uzunlikda
- Katta va kichik harflar aralashmasi
- Raqamlar va maxsus belgilar
- Shaxsiy ma'lumotlardan foydalanmang
- Har bir sayt uchun alohida parol
Yaxshi parol misollari:
- ✅ M3n!ng_P@r0l!m#2026
- ✅ K0d!ng$Xavf$!z_77
- ❌ parol123 (Juda zaif!)
- ❌ ismingiz1990 (Oson topiladi!)
2. Ikki Bosqichli Autentifikatsiya (2FA)
2FA - bu qo'shimcha himoya qatlami. Faqat parol kifoya emas, ikkinchi tasdiqlash kerak:
- SMS kod: Telefonga kod yuboriladi
- Authenticator ilovalari: Google Authenticator, Authy
- Biometrika: Barmoq izi, yuz tanish
- Hardware kalitlar: YubiKey kabi
Har doim 2FA ni yoqing - bu siz hisobingizni 99% xavfsizroq qiladi!
3. HTTPS va SSL/TLS
HTTPS - bu shifrlangan aloqa protokoli. Har doim tekshiring:
❌ http://example.com - Xavfsiz emas!
Dasturchilar uchun:
- Har doim HTTPS ishlatqating
- Let's Encrypt dan bepul SSL sertifikat oling
- HTTP ni HTTPS ga yo'naltiring
- HSTS headerlarini qo'shing
4. SQL Injection Hujumlaridan Himoya
SQL Injection - eng xavfli hujumlardan biri. Haker sizning ma'lumotlar bazangizga kirib, barcha ma'lumotlarni o'g'irlashi mumkin!
Xavfli kod (ISHLATMANG!):
query = f"SELECT * FROM users WHERE username = '{username}'"
cursor.execute(query)
Xavfsiz kod:
query = "SELECT * FROM users WHERE username = ?"
cursor.execute(query, (username,))
5. Cross-Site Scripting (XSS)
XSS - bu haker sizning saytingizga zararli JavaScript kodini kiritadi.
Himoyalanish:
- Foydalanuvchi kiritgan barcha ma'lumotlarni tozalang
- HTML maxsus belgilarni escape qiling
- Content Security Policy (CSP) ishlatqing
- Framework larning xavfsizlik xususiyatlaridan foydalaning
React/Vue da xavfsiz:
<div>{userInput}</div> // Xavfsiz
// XAVFLI - dangerouslySetInnerHTML
<div dangerouslySetInnerHTML={{__html: userInput}}> // Ishlatmang!
6. CSRF (Cross-Site Request Forgery)
CSRF hujumida haker sizning nomingizdan so'rovlar yuboradi.
Himoyalanish:
- CSRF tokenlaridan foydalaning
- SameSite cookie attributini ishlatqing
- Muhim amallar uchun parol so'rang
const csrf = require('csurf');
app.use(csrf({ cookie: true }));
7. Ma'lumotlarni Shifrlash
Muhim ma'lumotlarni har doim shifrlang:
Parollarni saqlash:
- Hech qachon oddiy matn sifatida saqlamang!
- bcrypt, Argon2 kabi algoritmlardan foydalaning
- Salt qo'shing
import bcrypt
password = "mening_parolim"
hashed = bcrypt.hashpw(password.encode(), bcrypt.gensalt())
// Tekshirish
if bcrypt.checkpw(password.encode(), hashed):
print("To'g'ri parol!")
Shaxsiy ma'lumotlar:
- Kredit karta ma'lumotlari
- Pasport raqamlari
- Tibbiy ma'lumotlar
- Har qanday maxfiy ma'lumot
8. API Xavfsizligi
Asosiy qoidalar:
- API Keys: Maxfiy saqlang, kodga qo'ymang
- Rate Limiting: So'rovlar sonini cheklang
- Authentication: JWT, OAuth 2.0 ishlatqing
- Validatsiya: Barcha kiritilgan ma'lumotlarni tekshiring
- CORS: To'g'ri konfiguratsiya qiling
API_KEY=your_secret_key_here
// Kod da:
const apiKey = process.env.API_KEY;
9. Fayllarni Yuklash Xavfsizligi
Foydalanuvchilar fayl yuklasa, ehtiyot bo'ling:
- Fayl turini tekshiring (jpg, png, pdf ruxsat, exe yo'q!)
- Fayl hajmini cheklang
- Fayllarni to'g'ridan-to'g'ri bajarish mumkin bo'lgan joyga joylashtirmang
- Fayllarni skanerlang (virus uchun)
- Fayl nomlarini o'zgartiring
10. Logging va Monitoring
Barcha muhim hodisalarni yozib boring:
- Login urinishlari (muvaffaqiyatli va muvaffaqiyatsiz)
- Ma'lumotlar o'zgarishlari
- Xatoliklar
- Shubhali faoliyatlar
11. Yangilanishlar va Patch'lar
Dasturiy ta'minotni har doim yangilab turing:
- Framework va kutubxonalarni yangilang
- Server operatsion tizimini yangilang
- Xavfsizlik yamog'larini o'rnating
- Dependencies ni tekshiring (npm audit, pip check)
npm audit
npm audit fix
# Python da
pip list --outdated
pip install --upgrade paket_nomi
12. Backup va Disaster Recovery
Har doim zaxira nusxa oling:
- Kunlik avtomatik backup
- Backupni boshqa joyda saqlang
- Backupni sinab ko'ring (qayta tiklash ishlayaptimi?)
- Muhim ma'lumotlarni shifrlang
Foydalanuvchilar Uchun Maslahatlar
🛡️ O'zingizni himoya qiling:
- Noma'lum linklar ustiga bosmang
- Shubhali email larni ochmang
- Ommaviy Wi-Fi da bank ishlarini qilmang
- Antivirus o'rnating
- Operatsion tizimni yangilab turing
- Phishing hujumlaridan ehtiyot bo'ling
Xavfsizlik Tekshiruv Ro'yxati
Loyihangiz uchun tekshiruv:
- ✅ HTTPS ishlatilayaptimi?
- ✅ Parollar shifrlangan holda saqlanayaptimi?
- ✅ SQL Injection dan himoyalanganmi?
- ✅ XSS dan himoyalanganmi?
- ✅ CSRF tokenlar bormi?
- ✅ 2FA yoqilganmi?
- ✅ API kalitlari xavfsiz saqlanayaptimi?
- ✅ Input validatsiya bormi?
- ✅ Rate limiting o'rnatilganmi?
- ✅ Logging ishlayaptimi?
- ✅ Backuplar olinayaptimi?
- ✅ Dependencies yangilanganmi?
Xulosa
Web xavfsizligi - bu murakkab, lekin juda muhim mavzu. Yuqorida sanab o'tilgan qoidalarni amal qilsangiz, sizning veb-saytingiz va foydalanuvchilaringiz ancha xavfsiz bo'ladi.
Esda tuting: 100% xavfsizlik yo'q, lekin bu sizni himoya choralarini qo'llashdan to'xtatmasligi kerak. Har bir kichik qadam muhim!
Xavfsiz kodlash! 🔒
Muallif: Otabek Shodiyorov
Sana: 25 Yanvar, 2026
Kategoriya: Xavfsizlik, Web Development, Best Practices
OWASP ruhidagi Kuchaytirilgan Bo‘lim
Input Validation (Kirishni tekshirish)
- Whitelist (ruxsat etilgan format)
- Length limit (uzunlik chegarasi)
- Type check (raqam/matn)
Autentifikatsiya Checklist
- ✅ 2FA yoqish
- ✅ Parol hashing (bcrypt/argon2)
- ✅ Rate limit + lockout
- ✅ Session timeouts
XSSdan himoya (amaliy)
# Frontendda: innerHTML ishlatmaslik, CSP qo‘llash
Mini-Loyiha: “Xavfsiz Login”
- Login + signup form
- Parol hashing
- CSRF token
- Session cookie: HttpOnly, Secure, SameSite
- Brute-force dan himoya: rate limit
Mashqlar
- SQLi misolini toping va parametrlangan queryga o‘tkazing
- XSS payloadlardan himoya qiladigan escape funksiyasini yozing
- CSRF nima ekanini 3 misol bilan tushuntiring
📲 Aloqa
Agar savolingiz bo‘lsa yoki hamkorlik qilishni xohlasangiz:
- Telefon: +998 90 459 94 09
- Telegram: t.me/otabekie (@otabekie)
Web Xavfsizlik: “To‘liq” Amaliy Bo‘lim
Bu bo‘lim himoya tarafdan (defense) amaliy checklist beradi. Maqsad: saytingizni minimum standartga olib chiqish.
1) Input validation + output encoding
- Serverda tekshirish — majburiy
- Client-side — faqat qulaylik
- XSS’ga qarshi: HTML escape
2) Auth: parol + session
- Hash: bcrypt/argon2
- Rate limit (login)
- 2FA qo‘llash
- Cookie: HttpOnly, Secure, SameSite
3) SQLi’dan himoya
- Parametrli so‘rovlar
- ORM’ni to‘g‘ri ishlatish
- Minimal DB ruxsatlar
4) Security headers
X-Frame-Options
X-Content-Type-Options
Referrer-Policy
Mini-loyiha: “Xavfsiz login”
Vazifa: login endpoint (rate limit + hash + session) dizaynini yozib chiqing. Keyin threat model qiling: qanday hujumlar bo‘lishi mumkin?
Checklist (Tez tekshiruv)
- HTTPS yoqilganmi?
- Admin panel himoyalanganmi?
- Loglar bor-mi (auth, error)?
- Backup va tiklash rejasi bormi?
📲 Aloqa
Savol, taklif yoki hamkorlik uchun:
- Telefon: +998 90 459 94 09
- Telegram: t.me/otabekie (@otabekie)
✅ Amaliy mashqlar
- Bugungi mavzu bo‘yicha 5 ta savol yozib, o‘zing javob ber.
- 3 ta real misol top: “qayerda ishlatiladi?”, “nima uchun kerak?”, “qanday foyda beradi?”.
- Mini-lug‘at: 10 ta termin + izoh.
🧩 Mini-loyiha g‘oyasi
Shu sahifadagi bilimga tayangan holda kichik loyiha qiling. Maqsad — “o‘qib” qolmasdan, qo‘l bilan qilish:
- 1 betlik konspekt + 1 betlik amaliy misol
- Har bo‘limdan keyin 1 ta “demo” (kod yoki diagramma)
- Oxirida: o‘zingizga “cheatsheet” (tezkor eslatma)
❓ Tez-tez so‘raladigan savollar
- Qachon amalda qo‘llayman? — Birinchi kichik loyiha qilganingizdan keyin darhol.
- Nimani yodlash kerak? — Yodlashdan ko‘ra, ko‘p takroriy mashq qiling.
- Keyingi qadam? — Keyingi sahifalarga o‘ting va “mini-loyiha”larni ketma-ket bajaring.
- HTML/CSS/JS darsliklarini parallel o‘ting.
- Linux va Windows buyruqlarini amalda sinab boring.
- SSH/Nmap bo‘limini faqat ruxsatli labda ishlating.