mirror of
https://github.com/FuzzingLabs/fuzzforge_ai.git
synced 2026-02-12 20:32:46 +00:00
- Add try-except block to conditionally import MobSFScanner in modules/android/__init__.py
- Allows Android worker to start on ARM64 without MobSF dependencies (aiohttp)
- MobSF activity gracefully skips on ARM64 with clear warning message
- Remove workflow path detection logic (not needed - workflows receive directories)
Platform-aware architecture fully functional on ARM64:
- CLI detects ARM64 and selects Dockerfile.arm64 automatically
- Worker builds and runs without MobSF on ARM64
- Jadx successfully decompiles APKs (4145 files from BeetleBug.apk)
- OpenGrep finds security vulnerabilities (8 issues found)
- MobSF gracefully skips with warning on ARM64
- Graceful degradation working as designed
Tested with:
ff workflow run android_static_analysis test_projects/android_test/ \
--wait --no-interactive apk_path=BeetleBug.apk decompile_apk=true
Results: 8 security findings (1 ERROR, 7 WARNINGS)
32 lines
1.1 KiB
Python
32 lines
1.1 KiB
Python
"""
|
|
Android Security Analysis Modules
|
|
|
|
Modules for Android application security testing:
|
|
- JadxDecompiler: APK decompilation using Jadx
|
|
- MobSFScanner: Mobile security analysis using MobSF
|
|
- OpenGrepAndroid: Static analysis using OpenGrep/Semgrep with Android-specific rules
|
|
"""
|
|
|
|
# Copyright (c) 2025 FuzzingLabs
|
|
#
|
|
# Licensed under the Business Source License 1.1 (BSL). See the LICENSE file
|
|
# at the root of this repository for details.
|
|
#
|
|
# After the Change Date (four years from publication), this version of the
|
|
# Licensed Work will be made available under the Apache License, Version 2.0.
|
|
# See the LICENSE-APACHE file or http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Additional attribution and requirements are provided in the NOTICE file.
|
|
|
|
from .jadx_decompiler import JadxDecompiler
|
|
from .opengrep_android import OpenGrepAndroid
|
|
|
|
# MobSF is optional (not available on ARM64 platform)
|
|
try:
|
|
from .mobsf_scanner import MobSFScanner
|
|
__all__ = ["JadxDecompiler", "MobSFScanner", "OpenGrepAndroid"]
|
|
except ImportError:
|
|
# MobSF dependencies not available (e.g., ARM64 platform)
|
|
MobSFScanner = None
|
|
__all__ = ["JadxDecompiler", "OpenGrepAndroid"]
|