
opensecurity/mobsfscanmobsfscan是一款静态分析工具,用于识别Android和iOS源代码中的不安全代码模式。该工具支持Java、Kotlin、Swift和Objective-C语言,基于MobSF静态分析规则,并由semgrep和libsast模式匹配器提供技术支持,适用于移动应用的安全代码审查和漏洞检测。
.mobsf配置文件自定义忽略文件、路径或规则直接拉取官方预构建镜像并运行:
bash# 拉取镜像 docker pull opensecurity/mobsfscan # 运行容器(挂载本地源代码目录) docker run -v /本地源代码目录:/src opensecurity/mobsfscan /src
如需自定义构建,可按以下步骤操作:
bash# 克隆仓库(如需修改源码) git clone [***] cd mobsfscan # 构建镜像 docker build -t mobsfscan . # 运行容器(挂载本地源代码目录) docker run -v /本地源代码目录:/src mobsfscan /src
容器内运行时支持以下命令行参数(路径参数需指向容器内挂载的源代码路径,如/src):
bashusage: mobsfscan [-h] [--json] [--sarif] [--sonarqube] [--html] [-o OUTPUT] [-c CONFIG] [-w] [-v] [path [path ...]] positional arguments: path 源代码文件或目录路径(容器内路径,如/src) optional arguments: -h, --help 显示帮助信息并退出 --json 输出格式为JSON --sarif 输出格式为SARIF 2.1.0 --sonarqube 输出格式兼容SonarQube --html 输出格式为HTML -o OUTPUT, --output OUTPUT 保存结果的文件名(如/output/report.json) -c CONFIG, --config CONFIG 自定义.mobsf配置文件路径 -w, --exit-warning 警告级别问题返回非零退出码 -v, --version 显示mobsfscan版本
通过.mobsf配置文件(YAML格式)自定义扫描行为,支持以下配置项:
yaml--- - ignore-filenames: # 忽略的文件名 - skip.java - temp.swift ignore-paths: # 忽略的目录路径 - __MACOSX - test/resources ignore-rules: # 忽略的规则ID - android_kotlin_logging - ios_swift_logging severity-filter: # 过滤的风险级别(仅显示指定级别) - WARNING - ERROR
使用配置文件时,需将文件挂载到容器内并通过--config指定路径:
bashdocker run -v /本地配置文件/.mobsf:/config/.mobsf -v /本地源代码:/src opensecurity/mobsfscan /src --config /config/.mobsf
在源代码中添加特定注释可抑制单行规则触发,格式为// mobsf-ignore: rule_id1, rule_id2(Java/Kotlin)或// mobsf-ignore: rule_id1, rule_id2(Swift/Objective-C):
javaString password = "sensitive_password"; // mobsf-ignore: hardcoded_password
默认文本格式输出示例:
- Pattern Match ████████████████████████████████████████████████████████████ 3 - Semantic Grep ██████ 37 mobsfscan: v0.0.2 | Ajin Abraham | opensecurity.in ╒══════════════╤════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╕ │ RULE ID │ android_webview_ignore_ssl │ ├──────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ DESCRIPTION │ 不安全的WebView实现。WebView忽略SSL证书错误并接受任何SSL证书,导致应用易受MITM*** │ ...
在.github/workflows/mobsfscan.yml中配置:
yamlname: mobsfscan on: [push, pull_request] jobs: scan: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: 运行mobsfscan uses: docker://opensecurity/mobsfscan with: args: . --sarif --output results.sarif - name: 上传SARIF报告 uses: github/codeql-action/upload-sarif@v3 with: sarif_file: results.sarif
在.gitlab-ci.yml中配置:
yamlstages: - security mobsfscan: stage: security image: opensecurity/mobsfscan script: - mobsfscan . --html --output report.html artifacts: paths: - report.html



manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务