2-bo‘lim
Tahdidlar va hujum turlari
Zararli dasturlar, fishing, DDoS, ransomware, hujum zanjiri va tahdid modellashtirish.
Ushbu bo‘lim mundarijasi
Himoyalanish uchun avval nimadan himoyalanayotganingizni bilish kerak. Bu bo'limda asosiy tahdid turlarini ko'rib chiqamiz.
Hujum zanjiri #
| Bosqich | Himoya chorasi |
|---|---|
| Razvedka | Ortiqcha ma'lumotni oshkor qilmang |
| Yetkazish | Email filtri, veb-filtr, xodimlarni o'qitish |
| Ekspluatatsiya | Yangilanishlar, zaifliklarni yopish |
| O'rnashish | Antivirus, EDR, yaxlitlik nazorati |
| Boshqaruv | Tarmoq monitoringi, chiquvchi trafik nazorati |
| Maqsad | Ma'lumot shifrlash, zaxira nusxa, DLP |
Zararli dasturlar #
| Tur | Nima qiladi |
|---|---|
| Virus | O'zini boshqa fayllarga qo'shadi |
| Chuvalchang | Tarmoq orqali o'zi tarqaladi |
| Troyan | Foydali dastur ko'rinishida yashiringan |
| Ransomware | Ma'lumotni shifrlab, to'lov talab qiladi |
| Spyware | Ma'lumot yig'adi va yuboradi |
| Keylogger | Klaviatura bosishlarini yozadi |
| Rootkit | Tizim ichiga chuqur o'rnashadi, yashirinadi |
| Botnet agenti | Qurilmani hujumchi tarmog'iga qo'shadi |
| Cryptominer | Resurslarni kriptovalyuta qazishga sarflaydi |
Zamonaviy ransomware ikki bosqichli:
- Avval ma'lumot nusxalanadi (o'g'irlanadi)
- Keyin shifrlanadi
Shuning uchun "zaxiramiz bor" degan javob yetarli emas: hujumchi "to'lamasangiz ma'lumotni e'lon qilamiz" deb tahdid qiladi.
Himoya:
- Oflayn zaxira (tarmoqqa ulanmagan)
- Segmentatsiya - bir qism buzilsa, boshqasiga o'tmasin
- Eng kam huquq - har bir hisob hamma narsaga kira olmasin
- Muntazam tiklash mashqlari
Fishing #
| Tur | Xususiyati |
|---|---|
| Ommaviy fishing | Minglab odamga bir xil xat |
| Nishonli fishing | Aniq odamga moslashtirilgan |
| Rahbar fishing | Direktor yoki moliya rahbariga |
| Vishing | Telefon orqali |
| Smishing | SMS orqali |
| QR fishing | Soxta QR kod |
- Shoshilinchlik - "24 soat ichida", "hoziroq"
- Qo'rqitish - "hisobingiz bloklanadi", "jarima"
- Umumiy murojaat - "Hurmatli mijoz"
- Soxta domen -
bank-uz.support,bank.uz.com - Imlo xatolari
- Kutilmagan biriktirma
- Shaxsiy ma'lumot so'rash
- Juda yaxshi taklif - "siz yutdingiz"
// Havolani tekshirish
function havolaShubhalimi(string $url, array $ishonchliDomenlar): bool
{
$host = parse_url($url, PHP_URL_HOST);
if ($host === null) {
return true;
}
// Punycode hujumi: bаnk.uz (kirill 'а' bilan)
if (str_starts_with($host, 'xn--')) {
return true;
}
// IP manzil o'rniga domen
if (filter_var($host, FILTER_VALIDATE_IP)) {
return true;
}
foreach ($ishonchliDomenlar as $ishonchli) {
if ($host === $ishonchli || str_ends_with($host, '.' . $ishonchli)) {
return false;
}
}
return true;
}
Turli alifbolarda bir xil ko'rinadigan harflar bor:
bank.uz - lotin 'a'
bаnk.uz - kirill 'а'
Ko'z bilan farqlab bo'lmaydi, lekin bu butunlay boshqa domen.
Zamonaviy brauzerlar bunday domenlarni xn-- shaklida ko'rsatadi -
lekin hamma ham buni sezmaydi.
DDoS #
| Tur | Qanday ishlaydi |
|---|---|
| Hajm hujumi | Kanalni to'ldiradi (UDP flood) |
| Protokol hujumi | Resurslarni tugatadi (SYN flood) |
| Ilova darajasi | Og'ir so'rovlar yuboradi (HTTP flood) |
| Kuchaytirish | Kichik so'rovga katta javob (DNS, NTP) |
| Chora | Ta'siri |
|---|---|
| CDN (Cloudflare, Fastly) | Trafikni tarqatadi, filtrlash |
| Chegaralash | Bir IP dan so'rov sonini cheklash |
| CAPTCHA | Bot va odamni ajratish |
| Avtomatik kengayish | Yukka qarab server qo'shish |
| Keshlash | Serverga yetib bormasin |
| Anycast | Trafikni geografik tarqatish |
Kichik loyiha uchun CDN deyarli har doim yetarli va arzon.
# Nginx da oddiy chegaralash
limit_req_zone $binary_remote_addr zone=umumiy:10m rate=10r/s;
limit_conn_zone $binary_remote_addr zone=ulanish:10m;
server {
location / {
limit_req zone=umumiy burst=20 nodelay;
limit_conn ulanish 10;
}
location /api/kirish {
limit_req zone=umumiy burst=3;
}
}
O'rtadagi odam hujumi #
Foydalanuvchi ←→ [HUJUMCHI] ←→ Server
| Usul | Qanday amalga oshiriladi |
|---|---|
| Ochiq Wi-Fi | Soxta kirish nuqtasi |
| ARP zaharlash | Lokal tarmoqda trafikni yo'naltirish |
| DNS zaharlash | Soxta IP manzil qaytarish |
| SSL striplash | HTTPS ni HTTP ga tushirish |
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;
HSTS brauzerga aytadi: "bu saytga faqat HTTPS orqali kir".
Shundan keyin hujumchi ulanishni HTTP ga tushira olmaydi.
Sertifikatni tekshirish ham muhim - brauzer ogohlantirishini hech qachon o'tkazib yubormang.
Nol kunlik zaifliklar #
Ommaviy hujumlarning katta qismi yangilanish allaqachon chiqarilgan zaifliklardan foydalanadi.
Sabab: tizimlar yangilanmaydi.
Amaliy xulosa: muntazam yangilanish eng samarali himoya choralaridan biri.
# Ubuntu da avtomatik xavfsizlik yangilanishlari
sudo apt install unattended-upgrades
sudo dpkg-reconfigure --priority=low unattended-upgrades
// Bog'liqliklar auditi
// composer audit
// npm audit
Ta'minot zanjiri hujumi #
Sizning ilovangiz
└── Kutubxona A
└── Kutubxona B
└── Kutubxona C ← bu yerda zararli kod
Mashhur holatlar:
- Ommabop npm paketining egasi almashtirildi va zararli kod qo'shildi
- CI/CD vositasi buzildi, u orqali minglab kompaniya zararlandi
- Ochiq kutubxonaga "obfuskatsiya qilingan" kod qo'shildi
Himoya:
composer.lock/package-lock.jsonni Git ga kiriting- Bog'liqliklar sonini kamaytiring
- Yangi paket qo'shishdan oldin tekshiring: muallif, yuklab olishlar soni, oxirgi yangilanish
- Avtomatik audit CI da
- Ichki paket ko'zgusi (proxy) ishlating
{
"require": {
"guzzlehttp/guzzle": "7.8.2"
}
}
"guzzlehttp/guzzle": "^7.0" // 7.x.x istalgan versiya
"guzzlehttp/guzzle": "7.8.2" // faqat shu versiya
Ishlab chiqarish uchun lock fayl aniq versiyalarni saqlaydi -
uni Git ga kiriting va composer install (update emas) ishlating.
Ichki tahdid #
| Tur | Misol |
|---|---|
| Qasddan | Ishdan bo'shatilgan xodim ma'lumot o'g'irlaydi |
| Beparvolik | Parolni stikerga yozib qo'yish |
| Bilmasdan | Fishing havolasini bosish |
| Buzilgan hisob | Xodim hisobi o'g'irlangan |
- Eng kam huquq - har kim faqat kerakli ma'lumotga kirsin
- Vazifalarni ajratish - bir odam to'lovni ham yaratib, ham tasdiqlay olmasin
- Audit jurnali - kim nima qilgani yozilsin
- Ishdan bo'shash jarayoni - huquqlar darhol olib tashlansin
- Ma'lumot chiqishini kuzatish - katta hajmdagi yuklab olish ogohlantirsin
- Muntazam ko'rib chiqish - kimga qanday huquq berilgan?
-- Faol bo'lmagan hisoblarni topish
SELECT login, oxirgi_kirish
FROM foydalanuvchilar
WHERE faol = 1
AND (oxirgi_kirish IS NULL OR oxirgi_kirish < DATE_SUB(NOW(), INTERVAL 90 DAY));
Tahdid modellashtirish - STRIDE #
# Tahdid modeli: Buyurtma berish
## Komponenta: To'lov formasi
| STRIDE | Tahdid | Ehtimol | Ta'sir | Chora |
|--------|--------|---------|--------|-------|
| S | Boshqa mijoz nomidan buyurtma | O'rta | Yuqori | Sessiya tekshiruvi |
| T | Narxni brauzerda o'zgartirish | Yuqori | Yuqori | Serverda qayta hisoblash |
| R | "Men buyurtma bermadim" | Past | O'rta | IP, vaqt, qurilma jurnali |
| I | Karta ma'lumoti oshkor | Past | Kritik | Saqlamaslik, TLS |
| D | Ko'p soxta buyurtma | O'rta | O'rta | Chegaralash, CAPTCHA |
| E | Oddiy mijoz admin bo'lishi | Past | Kritik | Rol tekshiruvi |
<input type="hidden" name="narx" value="250000">
Foydalanuvchi buni brauzer vositalarida 1 ga o'zgartirishi mumkin.
Qoida: mijozdan kelgan hech qanday ma'lumotga ishonmang. Narx serverda, bazadan olinib hisoblanishi kerak.
Zamonaviy tendensiyalar #
| Tendensiya | Ma'nosi |
|---|---|
| Sun'iy intellekt bilan fishing | Ishonarliroq va shaxsiylashtirilgan xatlar |
| Ta'minot zanjiri hujumlari | Bitta paket orqali minglab qurbon |
| Bulut noto'g'ri sozlanishi | Ochiq saqlash omborlari |
| API hujumlari | Mobil ilovalar orqasidagi API |
| Ransomware xizmat sifatida | Hujum uchun texnik bilim shart emas |
| Ikki bosqichli shantaj | Shifrlash + oshkor qilish tahdidi |
Yangi hujum usullari paydo bo'ladi, lekin asosiy choralar bir xil qoladi:
- Yangilanishlarni o'rnating
- Kuchli autentifikatsiya (2FA)
- Eng kam huquq
- Zaxira nusxa (oflayn ham)
- Monitoring va jurnal
- Xodimlarni o'qitish
Bu oltitasi hujumlarning katta qismini to'sadi.
- Hujum zanjirining har bir bosqichi uchun ikkitadan himoya chorasi yozing.
- Kelgan fishing xatini tahlil qiling: 5 ta belgi toping.
havolaShubhalimifunksiyasini yozing va sinang.- O'z loyihangiz uchun DDoS himoyasini rejalashtiring.
- Nginx da chegaralash sozlang.
- HSTS sarlavhasini qo'shing va tekshiring.
composer audityokinpm auditishga tushiring.- Bog'liqliklar daraxtini ko'ring - nechta paket bor?
- Bitta komponenta uchun STRIDE tahdid modelini tuzing.
- 90 kundan beri kirmagan hisoblarni toping.
Xulosa #
- Hujum zanjiri: hujumchi barcha bosqichdan o'tishi kerak, siz faqat bittasini to'sishingiz yetarli.
- Ransomware endi ikki bosqichli - zaxira yetarli emas.
- Fishing eng samarali hujum usuli; belgilarni bilish muhim.
- Gomograf hujumi: turli alifbolarda bir xil ko'rinadigan harflar.
- DDoS ga qarshi CDN va chegaralash - eng amaliy yechim.
- HTTPS va HSTS o'rtadagi odam hujumini to'sadi.
- Eng ko'p zarar nol kunlik emas, yangilanmagan tizimlardan.
- Ta'minot zanjiri - bitta paket orqali minglab qurbon.
- Ichki tahdid ga qarshi eng kam huquq va audit jurnali.
- STRIDE modeli bilan har bir komponentani tahlil qiling.
- Mijozdan kelgan hech qanday ma'lumotga ishonmang.
Keyingi bo'limda kriptografiya asoslarini o'rganamiz.
O‘qish tarixini saqlamoqchimisiz?
Tizimga kirsangiz, tugatgan bo‘limlaringiz saqlanadi va qoldirgan joyingizdan davom etasiz.
Xatolik topdingizmi?
Imlo xatosi, ishlamaydigan kod yoki noto‘g‘ri ma‘lumotni ko‘rsangiz - bizga xabar bering. Har bir xabar administrator tomonidan ko‘rib chiqiladi.