OffSploit'e katkıda bulunmak istediğiniz için teşekkürler! Aşağıdaki rehber, katkı sürecini hızlı ve sorunsuz hale getirmenize yardımcı olacaktır.
-
Repoyu fork'layın ve lokal olarak klonlayın:
git clone https://github.com/<senin-kullanici-adin>/OffSploit.git cd OffSploit
-
Geliştirme bağımlılıklarını yükleyin:
pip install -e ".[dev]" -
Yeni bir branch oluşturun:
git checkout -b feature/yeni-ozellik
offsploit/
├── core_pipeline.py # Merkezi pipeline orkestratörü
├── nmap_parser.py # Nmap XML ayrıştırıcı
├── rag_engine.py # ChromaDB RAG motoru
├── llm_client.py # LLM provider factory (Ollama/Gemini/OpenAI)
├── swarm_agents.py # Multi-Agent OPSEC Swarm
├── evasion_engine.py # Polimorfik evasion motoru
├── docker_sandbox.py # Docker sandbox (self-healing)
├── payload_engine.py # Post-exploitation payload motoru
├── state_machine.py # Otonom pivoting state machine
├── attack_correlator.py # Nmap + BloodHound korelasyonu
├── compiler_agent.py # Derleme/syntax kontrolü
├── reporter.py # PDF rapor üretici
├── exceptions.py # Özel hata sınıfları
└── response_parser.py # LLM yanıt ayrıştırıcı
- Linter:
ruffkullanıyoruz. PR göndermeden önce temiz çalıştığından emin olun:ruff check offsploit/ web/ cli_app.py
- Python Sürümü: Minimum Python 3.10
- Docstring'ler: Her public fonksiyon ve sınıf için Türkçe docstring yazın.
- Exception Handling: Genel
Exceptionyerineoffsploit.exceptionsmodülündeki özel hata sınıflarını kullanın.
evasion_engine.pyiçindekiPolymorphicTransformenum'ına yeni tekniğinizi ekleyin.LEVEL_TECHNIQUESsözlüğünde hangi seviyeye dahil olacağını belirtin._build_technique_prompt()metoduna açıklamasını ekleyin.
llm_client.pyiçindeLLMProviderInterface'i implement eden yeni bir sınıf oluşturun.LLMClient.__init__()factory metoduna yeni provider'ı ekleyin.
offsploit/altında yeni bir<tool>_parser.pydosyası oluşturun.nmap_parser.py'dekiServiceInfodataclass'ını referans alın.core_pipeline.py'de entegrasyonunu yapın.
- Değişikliklerinizi commit edin.
ruff checkile lint kontrolü yapın.- PR açın ve değişiklikleri açıklayın.
- Code review bekleyin.
Bu projeye katkıda bulunarak, katkılarınızın MIT Lisansı altında lisanslandığını kabul etmiş olursunuz. Katkılarınız yalnızca yasal sızma testleri ve eğitim amaçlı kullanılmalıdır.