首页/安全/漏洞与攻击面速查/Nexus 仓库初始口令与匿名访问
主机与服务风险面53 条

Nexus 仓库初始口令与匿名访问

Sonatype Nexus Repository 首次启动会生成随机初始管理员口令并写入 admin.password 文件;若未完成首次修改流程,文件长期存在且匿名访问保持开启时,仓库内容可被读取。

漏洞与攻击面速查安全更新于 2026-10-13

初始口令与匿名访问

Sonatype Nexus Repository 首次启动会生成随机初始管理员口令,写入数据目录下的 admin.password 文件;登录完成改密流程后该文件才会被移除。由此有两个判断点:文件仍然存在,通常意味着初始凭据流程没走完;匿名访问默认开启,若仓库被暴露在外,内部构件与依赖缓存可被未授权读取。管理端默认端口 8081。

基本信息

产品Sonatype Nexus Repository 3.x
管理端端口8081
初始口令首次启动写入 admin.password
匿名访问默认开启,可按需关闭
主要风险初始凭据未更换、仓库内容外可读

典型使用场景

  • 上线接手核查:确认 admin.password 是否已被移除,判断是否已完成改密
  • 暴露面核查:8081 是否只对运维网段可达,是否被反向代理到公网
  • 权限评审:核对用户与角色清单,清理离职与测试账号
  • 匿名策略决策:对外提供的公共仓库可保留匿名只读,内部仓库应关闭
  • 迁移与交接:交接时确认管理员凭据已变更并记录保管方式

初始口令状态核查

初始口令状态核查
ls -l /opt/nexus/sonatype-work/nexus3/admin.password 2>/dev/null
# 文件仍存在通常意味着初始口令流程未完成(改密后该文件会被移除)
curl -sI http://127.0.0.1:8081/ | head -n 5      # 确认管理端可达范围
# 匿名可读性验证(本方资产):curl -s http://127.0.0.1:8081/service/rest/v1/repositories

检查项与判据

检查项正常表现异常表现
admin.password已完成改密,文件不存在文件长期存在,仍用初始凭据
匿名访问内部仓库已关闭匿名未登录即可列出仓库与构件
管理端口来源仅运维网段可达公网或全内网可达
账号清单仅在职人员与系统账号存在离职人员与测试账号
构件仓库里常包含内部包与依赖缓存,匿名可读会让内网软件资产对外透明:从构件名与版本就能推断技术栈,甚至直接下载到内部私有包。
通过反向代理暴露 8081 时,收敛动作要同时覆盖代理层与组件自身:只在代理加了来源限制,内网直连端口的人仍然可以绕过。

易错点

  • 初始化向导走完了但 admin.password 文件仍在:说明初始凭据仍未更换
  • 把管理端口直接暴露到公网:登录页会被持续爆破,且匿名接口可能直接列出仓库内容
  • 关闭匿名访问前未评估业务:CI 拉取依赖会立刻中断,收敛要排窗口并通知使用方
  • 只清账号不改角色:遗留的超大权限角色被新账号继承,等于人员变更没生效

数据来源与参考

  • Sonatype Nexus Repository 文档(初始口令与匿名访问)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌