Netattack Lab initial commit

This commit is contained in:
k_lar 2026-02-12 00:50:01 +01:00
parent 0ae784f234
commit beed99171a
9 changed files with 2042 additions and 0 deletions

241
ping_of_death/README.md Normal file
View file

@ -0,0 +1,241 @@
# NetAttack Lab - Izobraževalni Simulator Omrežnih Napadov
![License: Educational](https://img.shields.io/badge/License-Educational-yellow.svg)
![Go Version](https://img.shields.io/badge/Go-1.19+-blue.svg)
![Platform](https://img.shields.io/badge/Platform-Cross--Platform-green.svg)
## 🎯 Namen
**NetAttack Lab** je izobraževalno orodje, zasnovano za demonstracijo tehnik preplavitve omrežja in njihov vpliv na sistemske vire. Namenjeno je študentom, raziskovalcem in strokovnjakom za kibernetsko varnost za razumevanje omrežnih napadov in obrambnih strategij v varnem, kontroliranem okolju.
## ⚠️ POMEMBNO VARNOSTNO OPOZORILO
```
🚨 TA APLIKACIJA JE NAMENJENA IZKLJUČNO IZOBRAŽEVALNIM NAMENOM 🚨
• Uporabljajte SAMO v lastnih sistemih ali laboratorijskih okoljih
• Testiraj SAMO localhost (127.x.x.x) ali lokalne IP naslove (192.168.x.x)
• NIKOLI ne uporabljajte proti zunanjim sistemom brez izrecnega dovoljenja
• Neupoštevanje lahko povzroči pravne posledice
• Avtorji ne prevzemajo odgovornosti za napačno uporabo
```
## 🌟 Funkcionalnosti
### 🔍 Raziskovalni Modul
- **Ping Test**: ICMP echo zahteve za testiranje dostopnosti
- **Sledenje Poti**: Traceroute analiza omrežne poti
- **Varnostne omejitve**: Samodejno omejevanje na varne IP naslove
### ⚡ Generator Prometa
- **ICMP Echo Poplava**: Simulacija ping flood napadov
- **TCP SYN Poplava**: Demonstracija TCP handshake izkoriščanja
- **UDP Paketna Poplava**: UDP flooding na naključnih vratih
- **Nastavljive parametre**: Trajanje, intenziteta, tip napada
- **Omejitve varnosti**: Maksimalno 3 sočasne seje, omejena intenziteta
### 📊 Sistem Spremljanja
- **Realno-časovno nadzor**: Aktivne napade in statistike
- **Podrobne metrike**: Uspešno/neuspešno poslani paketi
- **Upravljanje sej**: Ročna ustavitev napadov
- **Zgodovina**: Pregled vseh izvedenih testov
## 🚀 Hitri Začetek
### Predpogoji
- Go 1.19 ali novejši
- Linux/macOS/Windows operacijski sistem
- Omrežne pravice za ICMP pakete (lahko zahtevajo sudo)
### Namestitev
1. **Kloniraj repozitorij:**
```bash
git clone <repository-url>
cd ping_of_death
```
2. **Zgradi aplikacijo:**
```bash
# Enostavna gradnja
go build -o netattack-lab .
# Ali uporabi build skripto za več platform
chmod +x build.sh
./build.sh
```
3. **Zaženi aplikacijo:**
```bash
# Linux/macOS
./netattack-lab
# Windows
netattack-lab.exe
```
4. **Odpri v brskalniku:**
```
http://localhost:8090
```
## 📁 Struktura Projekta
```
ping_of_death/
├── main.go # Glavni Go server z embedded datotekami
├── go.mod # Go modul definicija
├── build.sh # Build skripta za več platform
├── templates/
│ └── index.html # Glavna spletna stran (slovenščina)
├── static/
│ ├── styles.css # Hacker tema CSS stilov
│ └── app.js # JavaScript interaktivnost
└── README.md # Ta datoteka
```
## 🔧 Tehnične Podrobnosti
### Arhitektura
- **Backend**: Go HTTP server z REST API
- **Frontend**: Vanilla JavaScript z real-time posodobitvami
- **Embedded**: Vse static datoteke vgrajene v binary
- **Sočasnost**: Goroutine za simultane napade
- **Varnost**: IP whitelist, rate limiting, session timeout
### API Končne Točke
```
GET / # Glavna stran
POST /api/ping # Izvedi ping test
POST /api/traceroute # Izvedi traceroute
POST /api/attack # Začni napad
POST /api/stop # Ustavi napad
GET /api/status # Pridobi status sej
```
### Varnostne Omejitve
- **IP Whitelist**: Samo 127.x.x.x, localhost, 192.168.x.x
- **Maksimalno trajanje**: 60 sekund na napad
- **Maksimalna intenziteta**: 100 zahtev/sekundo
- **Sočasne seje**: Maksimalno 3 aktivne napade
## 🎓 Izobraževalne Vsebine
### Tipi Napadov
#### ICMP Echo Poplava (Ping Flood)
- **Namen**: Demonstracija preplavitve z ICMP paketi
- **Vpliv**: Poraba pasovne širine in procesnih virov
- **Obramba**: Rate limiting, ICMP filtering
#### TCP SYN Poplava
- **Namen**: Izkoriščanje TCP handshake procesa
- **Vpliv**: Izčrpavanje connection pool-a
- **Obramba**: SYN cookies, connection limiting
#### UDP Paketna Poplava
- **Namen**: Preplavitev z UDP paketi
- **Vpliv**: Prisiljevanje ICMP unreachable odgovorov
- **Obramba**: UDP rate limiting, port filtering
### Obrambne Strategije
1. **Omejevanje Hitrosti**: Omejitev zahtev na IP
2. **Požarna Pravila**: Blokiranje sumljivih vzorcev
3. **Razporeditev Obremenitve**: Distribucija prometa
4. **DDoS Zaščita**: Cloud-based rešitve
5. **Nadzor**: Real-time analiza prometa
## 🛠️ Uporaba
### 1. Raziskovanje
```
Zavihek: Raziskovanje
1. Vnesi cilj (127.0.0.1 ali localhost)
2. Klikni "Ping Test" ali "Sledenje Poti"
3. Opazuj rezultate v terminalu
```
### 2. Generiranje Napadov
```
Zavihek: Generiranje Prometa
1. Nastavi cilj (samo varni IP-ji)
2. Izberi tip napada
3. Nastavi trajanje in intenziteto
4. Klikni "Začni Napad"
5. Opazuj napredek v terminalu
```
### 3. Spremljanje
```
Zavihek: Spremljanje
- Preglej aktivne seje
- Preveri statistike uspešnosti
- Ročno ustavi napade
```
## 🔒 Pravne in Etične Smernice
### ✅ Dovoljeno
- Testiranje lastnih sistemov
- Lokalni laboratorijski preizkusi
- Izobraževalne demonstracije
- Razumevanje varnostnih konceptov
### ❌ Prepovedano
- Napadi na valjene storitve
- Testiranje brez dovoljenja
- Zlonamerni nameni
- Kršenje zakonodaje
### Pravna Odgovornost
Uporabnik je v celoti odgovoren za:
- Legalno uporabo orodja
- Pridobitev ustreznih dovoljenj
- Upoštevanje lokalne zakonodaje
- Spoštovanje omrežnih politik
## 🏗️ Razvoj
### Prispevki
Pozivamo k prispevkom za izboljšave in nove funkcionalnosti:
- Bug report-i preko Issues
- Pull request-i za nove funkcionalnosti
- Dokumentacijske izboljšave
- Varnostne izboljšave
### Testiranje
```bash
# Preveri skladnost kode
go fmt ./...
go vet ./...
# Zaženi teste (če obstajajo)
go test ./...
# Preveri embedded datoteke
go build -o test-build . && ./test-build
```
## 📝 Licenca
Ta projekt je namenjen izključno izobraževalnim namenom. Uporaba zunaj izobraževalnih kontekstov ni dovoljenja brez izrecnega soglasja avtorjev.
## 🤝 Podpora
Za vprašanja, probleme ali predloge odprite Issue v repozitoriju ali kontaktirajte vzdrževalce projekta.
## 📚 Dodatni Viri
### Izobraževalni Materiali
- [OWASP Network Testing Guide](https://owasp.org/)
- [NIST Cybersecurity Framework](https://www.nist.gov/cyberframework)
- [RFC 792 - ICMP Protocol](https://tools.ietf.org/html/rfc792)
### Obrambni Koncepti
- DDoS Protection Best Practices
- Network Monitoring Tools
- Incident Response Procedures
---
**Opomnik**: Uporaba tega orodja v zunanjem omrežju ali proti sistemom, ki niso vaši, je lahko nezakonita. Vedno preverite lokalno zakonodajo in pridobite ustrezna dovoljenja pred testiranjem.