
🔗 Leichte mobile Anwendung zur Sicherheitsorchestrierung für die URI-Überprüfung, die eine einheitliche Multi-Engine-Schnittstelle bietet, um die Linksicherheit in Echtzeit zu aggregieren und zu validieren.
Eine moderne Android-Anwendung zur umfassenden URL-Sicherheitsanalyse, die mehrere Bedrohungserkennungs-APIs mit einer erweiterten Domain-Spoofing-Erkennung kombiniert, um Benutzer vor bösartigen Websites zu schützen.
Erstellen Sie eine Datei secrets.properties im Stammverzeichnis:
ABUSEIPDB_API_KEY=your_abuseipdb_key
VIRUSTOTAL_API_KEY=your_virustotal_key
URLSCAN_API_KEY=your_urlscan_key
Wichtig: Durch die Nutzung dieser Anwendung müssen Sie die Nutzungsbedingungen jedes API-Anbieters einhalten:
Repository klonen
git clone <repository-url>
cd olyx
API-Schlüssel konfigurieren
cp secrets.properties.example secrets.properties
# Edit secrets.properties with your API keys
Erstellen und ausführen
./gradlew assembleDebug
./gradlew installDebug
olyx/
├── app/
│ ├── src/main/
│ │ ├── java/com/olyx/
│ │ │ ├── data/
│ │ │ │ ├── Models.kt # ApiResult, HistoryEntry
│ │ │ │ ├── HistoryManager.kt # Persistence logic
│ │ │ │ └── SpoofingDetector.kt # Domain analysis engine
│ │ │ ├── network/
│ │ │ │ └── ApiService.kt # API integrations
│ │ │ ├── ui/
│ │ │ │ ├── components/
│ │ │ │ │ ├── ApiScoreCard.kt # Individual API results
│ │ │ │ │ └── GlobalScoreCard.kt # Aggregate score display
│ │ │ │ ├── screens/
│ │ │ │ │ ├── HomeScreen.kt # URL input
│ │ │ │ │ ├── AnalysisScreen.kt # Results display
│ │ │ │ │ ├── HistoryScreen.kt # Search history
│ │ │ │ │ └── AboutScreen.kt # App information
│ │ │ │ ├── theme/
│ │ │ │ │ ├── Color.kt # Dark theme palette
│ │ │ │ │ ├── Theme.kt # Material3 setup
│ │ │ │ │ └── Type.kt # Typography
│ │ │ │ └── utils/
│ │ │ │ └── ScoreUtils.kt # Scoring algorithms
│ │ │ ├── utils/
│ │ │ │ └── Constants.kt # App constants
│ │ │ └── MainActivity.kt # Entry point
│ │ └── res/
│ │ ├── raw/
│ │ │ └── legitimate_domains.txt # Protected domains list
│ │ └── font/
│ │ ├── gemunulibre_regular.ttf
│ │ └── redhatdisplay_regular.ttf
├── screens/ # Screenshots
├── build.gradle.kts
└── secrets.properties # API keys (not in repo)
Bearbeiten Sie app/src/main/res/raw/legitimate_domains.txt:
yourbank.com
yourbank.fr
yourbusiness.com
Ändern Sie die Schwellenwerte in SpoofingDetector.kt:
private fun calculateSuspicion(...): Int {
if (distance == 1) return 90 // Very similar → High risk
if (distance == 2) return 70 // Somewhat similar → Medium risk
if (distance == 3) return 50 // Less similar → Low-Medium risk
}
Aktualisieren Sie die Spoofing-Auswirkung in ScoreUtils.kt:
val penalty = (spoofingResult.suspicionLevel * 0.5).toInt() // 50% of suspicion level
# Run unit tests
./gradlew test
# Run instrumented tests
./gradlew connectedAndroidTest
# Generate coverage report
./gradlew jacocoTestReport
Verwendet eine statistische Abweichungsanalyse:
Base Score = Average(API Scores)
Penalty = Suspicion Level × 0.5
Final Score = max(0, Base Score - Penalty)
Berechnet die minimalen Bearbeitungsoperationen (Einfügen/Löschen/Ersetzen) zwischen Zeichenfolgen, um Typosquatting zu erkennen.
Dieses Projekt ist unter der GNU Affero General Public License v3.0 lizenziert. Einzelheiten finden Sie in LICENSE.