Mobile Security Framework (MobSF) is an automated, all-in-one mobile application (Android/iOS/Windows) pen-testing, malware analysis and security assessment framework capable of performing static and dynamic analysis of mobile applications. MobSF support mobile app binaries (APK, IPA & APPX) along with zipped source code and provides REST APIs for seamless integration with your CI/CD or DevSecOps pipeline.The Dynamic Analyzer helps you to perform runtime security assessment and interactive instrumented tests.
Permissions and Security
Scanner will be available to all plan types as a Core analyzer
I think from what I could see it seems to do SAST, SCA, and DAST (but DAST we won't be able to do b/c no android env) @tmccaslin i don't think it fuzzes? but it does seem to already be container-friendly
@rossfuhrman@ssarka@twoodham this issue has been transformed to handle the integration review and promotion to an official SAST scanner. I will update this issue once we have the code from the customer.
Please feel free to review the implementation plan.
For Android, MobSF expects AndroidManifest.xml to be at either the project root or at app/src/main/AndroidManifest.xml, but we had one Android project that had the manifest at base/src/main/AndroidManifest.xml. If it's not at the expected path, then the scan won't run, so it needs to either be copied over before analysis or fixed upstream.
Right now, there is no differentiation between Android and iOS scans. I can't decide if there is value in differentiating the two.
We need to figure out how to distinguish Android project from normal java project.
Yes, that should be sufficient. Saikat's comment was more regarding how we determine if a scan should kick off in the pipeline, but I think we can look for that manifest in the to-be-added MobSF job definition.
Another thing: I chose to use the ZIP format because that way we can do scans without having to compile the project. I wonder if it is worthwhile to support the compiled formats (.apk / .ipa) as well. I don't think it's something that would be needed for initial release, but may be a want somewhere down the road.
Ahh, thanks for calling that out. We hadn't made it that far in the review, but is good to know. I agree that support for .apk and .ipa files would make sense to add in the future.
We need to add descriptions to these issues and assign milestones.
@tmccaslin I have not created the issue for File issue to add attribution to HEB in README. Do you want to create it? Moreover, we need to add an epic to all these issues so that we can easily keep track.